| summaryrefslogtreecommitdiff | 
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-12-28 03:29:39 +0100 | 
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-12-28 03:29:39 +0100 | 
| commit | 13ba88ea95012581cf8c1926ecb0ae8123a56f21 (patch) | |
| tree | faa831374ec971af9e177d2de969e7f152a4a7ec /src | |
| parent | 22ec7b935d4fbac94ddff580b9649f6748d7444d (diff) | |
Adds (sp), clear up string/text.
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/src/tonkadur/fate/v1/parser/FateLexer.g4 | 20 | ||||
| -rw-r--r-- | src/core/src/tonkadur/fate/v1/parser/FateParser.g4 | 10 | 
2 files changed, 28 insertions, 2 deletions
| diff --git a/src/core/src/tonkadur/fate/v1/parser/FateLexer.g4 b/src/core/src/tonkadur/fate/v1/parser/FateLexer.g4 index 4b6edfc..68bf6d9 100644 --- a/src/core/src/tonkadur/fate/v1/parser/FateLexer.g4 +++ b/src/core/src/tonkadur/fate/v1/parser/FateLexer.g4 @@ -87,6 +87,7 @@ LET_KW: L_PAREN 'let' SEP+;  MINUS_KW: L_PAREN ('minus'|'-') SEP+;  MIN_KW: L_PAREN ('min'('imum'?)) SEP+;  MAP_KW: L_PAREN 'map' SEP+; +STRING_KW: L_PAREN 'string' SEP+;  IMP_MAP_KW: L_PAREN 'map!' SEP+;  MAX_KW: L_PAREN ('max'('imum'?)) SEP+;  LAMBDA_KW: L_PAREN 'lambda' SEP+; @@ -164,9 +165,24 @@ VISIT_KW: L_PAREN ('call'|'visit')(US(('seq'('uence'?))|('proc'('edure'?))))? SE  CONTINUE_AS_KW: L_PAREN (('continue'US('as'|'to'|'with'))|('jump'(US'to')?)|('go'US'to')|'exec')(US(('seq'('uence'?))|('proc'('edure'?))))? SEP+;  WHILE_KW: L_PAREN 'while' SEP+; -WORD: ((~([ \t\r\n()]))|'(lp)'|'(rp)')+ +WORD: ((~([ \t\r\n()]))|'(lp)'|'(rp)'|'(sp)')+     { -      setText(getText().replaceAll("\\(lp\\)", "(").replaceAll("\\(rp\\)", ")")); +      setText +      ( +         getText().replaceAll +         ( +            "\\(sp\\)", +            " " +         ).replaceAll +         ( +            "\\(lp\\)", +            "(" +         ).replaceAll +         ( +            "\\(rp\\)", +            ")" +         ) +      );     };  COMMENT: WS* ';' .*? '\n' -> channel(HIDDEN); diff --git a/src/core/src/tonkadur/fate/v1/parser/FateParser.g4 b/src/core/src/tonkadur/fate/v1/parser/FateParser.g4 index 8465af6..dc01452 100644 --- a/src/core/src/tonkadur/fate/v1/parser/FateParser.g4 +++ b/src/core/src/tonkadur/fate/v1/parser/FateParser.g4 @@ -2726,7 +2726,12 @@ returns [Computation result]     final StringBuilder string_builder = new StringBuilder();  }  : +   STRING_KW sentence WS* R_PAREN +   { +      $result = ($sentence.result); +   } +   |     first_word=WORD     {        string_builder.append(($first_word.text)); @@ -3672,6 +3677,11 @@ returns [Computation result]        /* TODO: temporarily disable an compiler error category */     } +   | STRING_KW sentence WS* R_PAREN +   { +      $result = ($sentence.result); +   } +     | L_PAREN WS+ sentence WS* R_PAREN     {        $result = ($sentence.result); | 


