From d9f6ed634ef7e217657ed9c743cc03252920ef1e Mon Sep 17 00:00:00 2001 From: codiacdev <150445197+codiacdev@users.noreply.github.com> Date: Thu, 23 Nov 2023 20:53:33 +0100 Subject: [PATCH] added: rule to objectpascal lexer (#888) * added: another rule for objectpascal lexer * updated: objectpascal lexer testdata * fixed: processing of control (escape) characters * updated: test data for objectpascal lexer --- lexers/embedded/objectpascal.xml | 8 ++++++-- lexers/testdata/objectpascal.actual | 2 ++ lexers/testdata/objectpascal.expected | 13 +++++++++---- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/lexers/embedded/objectpascal.xml b/lexers/embedded/objectpascal.xml index aac82f916..12af64b9d 100644 --- a/lexers/embedded/objectpascal.xml +++ b/lexers/embedded/objectpascal.xml @@ -28,7 +28,7 @@ - + @@ -50,8 +50,12 @@ + + + + - + diff --git a/lexers/testdata/objectpascal.actual b/lexers/testdata/objectpascal.actual index cb49e257d..f80a5a432 100644 --- a/lexers/testdata/objectpascal.actual +++ b/lexers/testdata/objectpascal.actual @@ -83,6 +83,8 @@ var {-NODEFINE string 'String' } {$OBJTYPENAME string 'NUnicodeString'} { defined in ustring.h } {-EXTERNALSYM ShortInt 'signed char' } {-OBJTYPENAME ShortInt 'Bzc'} +(*$hints off*) // another valid compiler directive + const CLineBreak = {$IFDEF POSIX} _AnsiStr(#10) {$ENDIF} {$IFDEF MSWINDOWS} _AnsiStr(#13#10) {$ENDIF}; diff --git a/lexers/testdata/objectpascal.expected b/lexers/testdata/objectpascal.expected index 189e79a38..67ea6fac4 100644 --- a/lexers/testdata/objectpascal.expected +++ b/lexers/testdata/objectpascal.expected @@ -409,6 +409,11 @@ {"type":"TextWhitespace","value":" "}, {"type":"CommentPreproc","value":"{-OBJTYPENAME ShortInt 'Bzc'}"}, {"type":"Text","value":"\n\n"}, + {"type":"CommentPreproc","value":"(*$hints off*)"}, + {"type":"TextWhitespace","value":" "}, + {"type":"CommentSingle","value":"// another valid compiler directive"}, + {"type":"TextWhitespace","value":"\n"}, + {"type":"Text","value":"\n"}, {"type":"KeywordReserved","value":"const"}, {"type":"Text","value":"\n"}, {"type":"TextWhitespace","value":" "}, @@ -420,7 +425,7 @@ {"type":"TextWhitespace","value":" "}, {"type":"Text","value":"_AnsiStr"}, {"type":"Operator","value":"("}, - {"type":"LiteralNumberHex","value":"#10"}, + {"type":"LiteralStringEscape","value":"#10"}, {"type":"Operator","value":")"}, {"type":"TextWhitespace","value":" "}, {"type":"CommentPreproc","value":"{$ENDIF}"}, @@ -430,7 +435,7 @@ {"type":"TextWhitespace","value":" "}, {"type":"Text","value":"_AnsiStr"}, {"type":"Operator","value":"("}, - {"type":"LiteralNumberHex","value":"#13#10"}, + {"type":"LiteralStringEscape","value":"#13#10"}, {"type":"Operator","value":")"}, {"type":"TextWhitespace","value":" "}, {"type":"CommentPreproc","value":"{$ENDIF}"}, @@ -1725,7 +1730,7 @@ {"type":"TextWhitespace","value":" "}, {"type":"Text","value":"Ord"}, {"type":"Operator","value":"("}, - {"type":"LiteralNumberHex","value":"#10"}, + {"type":"LiteralStringEscape","value":"#10"}, {"type":"Operator","value":")"}, {"type":"Punctuation","value":"."}, {"type":"Text","value":"ToExtended"}, @@ -1947,7 +1952,7 @@ {"type":"Operator","value":"%"}, {"type":"Text","value":"fs"}, {"type":"Operator","value":":("}, - {"type":"LiteralNumberHex","value":"0x2c"}, + {"type":"LiteralStringEscape","value":"0x2c"}, {"type":"Operator","value":")"}, {"type":"Punctuation","value":","}, {"type":"Operator","value":"%"},