Parse and transpile unary operations
This commit is contained in:
@ -294,6 +294,8 @@ BEGIN
|
||||
END transition_action_skip;
|
||||
(* Delimited string action. *)
|
||||
PROCEDURE transition_action_delimited(lexer: PLexer; token: PLexerToken);
|
||||
VAR
|
||||
text_length: CARDINAL;
|
||||
BEGIN
|
||||
IF lexer^.Start^ = '(' THEN
|
||||
token^.kind := lexerKindComment
|
||||
@ -302,6 +304,10 @@ BEGIN
|
||||
token^.kind := lexerKindCharacter
|
||||
END;
|
||||
IF lexer^.Start^ = "'" THEN
|
||||
text_length := lexer^.Current - lexer^.Start;
|
||||
MemZero(ADR(token^.stringKind), TSIZE(ShortString));
|
||||
MemCopy(lexer^.Start, text_length, ADR(token^.stringKind));
|
||||
|
||||
token^.kind := lexerKindString
|
||||
END;
|
||||
INC(lexer^.Current)
|
||||
@ -423,8 +429,8 @@ BEGIN
|
||||
IF lexer^.Current^ = ',' THEN
|
||||
token^.kind := lexerKindComma
|
||||
END;
|
||||
IF lexer^.Current^ = ',' THEN
|
||||
token^.kind := lexerKindComma
|
||||
IF lexer^.Current^ = '~' THEN
|
||||
token^.kind := lexerKindTilde
|
||||
END;
|
||||
IF lexer^.Current^ = ')' THEN
|
||||
token^.kind := lexerKindRightParen
|
||||
|
Reference in New Issue
Block a user