Changeset 3183


Ignore:
Timestamp:
May 23, 2013, 2:09:41 PM (6 years ago)
Author:
ksherdy
Message:

Alignment.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • proto/RE/input/grammar/re.scatter

    r3182 r3183  
    1616        recognizers {
    1717                Whitespace [IGNORE],
    18                 Escape[UNICODE_ESCAPE]                          "\\u" "0123456789abcdefABCDEF" 4 4 16, // prefix, char set, min, max, radix
    19                 Escape[HEXADECIMAL_ESCAPE]              "\\x" "0123456789abcdefABCDEF" 2 2 16,
    20                 Escape[CHARACTER_ESCAPE]                        "\\" "[.]" 1 1,
     18                Escape[UNICODE_ESCAPE]          "\\u" "0123456789abcdefABCDEF" 4 4 16, // prefix, char set, min, max, radix
     19                Escape[HEXADECIMAL_ESCAPE]      "\\x" "0123456789abcdefABCDEF" 2 2 16,
     20                Escape[CHARACTER_ESCAPE]        "\\" "[.]" 1 1,
    2121                Punctuator,
    2222                Comment [IGNORE] "(?#" ")",     // comments
     
    4444context charClass {     
    4545        recognizers {
    46                 // Whitespace [IGNORE],                 // POSIX standard
    47                 Escape[UNICODE_ESCAPE]      "\\u" "0123456789abcdefABCDEF" 4 4 16,
    48                 Escape[HEXADECIMAL_ESCAPE]  "\\x" "0123456789abcdefABCDEF" 2 2 16,
    49                 Escape[CHARACTER_ESCAPE]    "\\" "[.]" 1 1,
     46                // Whitespace [IGNORE],         // POSIX standard
     47                Escape[UNICODE_ESCAPE]          "\\u" "0123456789abcdefABCDEF" 4 4 16,
     48                Escape[HEXADECIMAL_ESCAPE]      "\\x" "0123456789abcdefABCDEF" 2 2 16,
     49                Escape[CHARACTER_ESCAPE]        "\\" "[.]" 1 1,
    5050                Punctuator,
    51                 EndOfInput,                 // must precede CHARACTER
    52                 Character [CHARACTER],      // non-punctuators
     51                EndOfInput,                     // must precede CHARACTER
     52                Character [CHARACTER],          // non-punctuators
    5353        }       
    5454        tokens {
    5555                RIGHTSQUARE   "]",
    5656                THROUGH       "-",
    57             //NOT         "^",
    58             //BACKSLASH   "\\",
     57                //NOT         "^",
     58                //BACKSLASH   "\\",
    5959        }
    6060}
     
    8686
    8787grammar {
    88         start                           -> re ;
    89         re                                        #-> alternation ;
    90         alternation           #-> concatenation (OR↑ concatenation)* ;       
    91         concatenation       #-> repetition+ ;                                           
    92         repetition                    -> atom (repetitionIndicator | boundedRepetitionIndicator)?;
    93         repetitionIndicator ->   OPTIONAL {@lowerBound = 0; @upperBound = 1;} |
    94                                                          STAR {@lowerBound = 0; @upperBound = -1;} |
    95                              PLUS {@lowerBound = 1; @upperBound = -1;};
     88        start                   -> re ;
     89        re                      #-> alternation ;
     90        alternation             #-> concatenation (OR↑ concatenation)* ;
     91        concatenation           #-> repetition+ ;
     92        repetition              -> atom (repetitionIndicator | boundedRepetitionIndicator)?;
     93        repetitionIndicator     ->      OPTIONAL {@lowerBound = 0; @upperBound = 1;} |
     94                                        STAR {@lowerBound = 0; @upperBound = -1;} |
     95                                        PLUS {@lowerBound = 1; @upperBound = -1;};
    9696                                                       
    9797        boundedRepetitionIndicator      -> LEFTCURLY◊ (boundedRepetition)
    98                                                                           ( lowerBound! {@lowerBound = @:value;} )
    99                                                                           (
    100                                                                               (COMMA upperBound!   {@upperBound = @:value;}     ) |
    101                                                                               (epsilon             {@upperBound = @lowerBound;} )
    102                                                                           ) RIGHTCURLY◊ ;
     98                                                  ( lowerBound! {@lowerBound = @:value;} )
     99                                                  (
     100                                                      (COMMA upperBound!   {@upperBound = @:value;}     ) |
     101                                                      (epsilon             {@upperBound = @lowerBound;} )
     102                                                  ) RIGHTCURLY◊ ;
    103103                                                                 
    104104        lowerBound              -> INTEGER_CONST {@value = @@value;} | epsilon {@value = 0;} ;
    105         upperBound              -> INTEGER_CONST {@value = @@value;} | epsilon {@value = -1;} ;                                         
     105        upperBound              -> INTEGER_CONST {@value = @@value;} | epsilon {@value = -1;} ;
    106106       
    107         atom          #-> LEFTROUND re RIGHTROUND |
    108                     char                    |
    109                     characterClass          |
    110                     negatedCharacterClass   |
    111                     any                     |
    112                     sos                     |
    113                     eos ;
     107        atom            #-> LEFTROUND re RIGHTROUND |
     108                        char                    |
     109                        characterClass          |
     110                        negatedCharacterClass   |
     111                        any                     |
     112                        sos                     |
     113                        eos ;
    114114       
    115         char              -> CHARACTER           |
    116                        CHARACTER_ESCAPE    |
    117                        HEXADECIMAL_ESCAPE  |
    118                        UNICODE_ESCAPE ;
     115        char           ->       CHARACTER           |
     116                                CHARACTER_ESCAPE    |
     117                                HEXADECIMAL_ESCAPE  |
     118                                UNICODE_ESCAPE ;
    119119               
    120120        characterClass  -> LEFTSQUARE ◊(charClass) range* RIGHTSQUARE◊ ;
Note: See TracChangeset for help on using the changeset viewer.