Changeset 3074 for proto


Ignore:
Timestamp:
Apr 25, 2013, 11:44:35 PM (6 years ago)
Author:
ksherdy
Message:

Updated grammar.

Location:
proto/RE/input
Files:
4 edited

Legend:

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

    r3069 r3074  
    1515        recognizers {
    1616                Whitespace [IGNORE],
     17                Punctuator,
    1718                Comment [IGNORE] "(?#" ")",
    18                 Character [CHARACTER] "(" ")" "[" "|" "?" "*" "+" "." "^" "!" "\\" "{"  , // any non meta-characters
    19                 Punctuator,                     
    20                 EndOfInput,
     19                EndOfInput,                             // must precede Character or loops
     20                Character [CHARACTER], 
    2121        }
    2222
    2323        tokens { 
    24        
    2524                LEFTROUND       "(",    RIGHTROUND              ")",
    26                 LEFTSQUARE      "[",    RIGHTSQUARE     "]",
    27                 LEFTCURLY       "{",    RIGHTCURLY              "}",
     25                LEFTSQUARE      "[",   
     26                LEFTCURLY       "{",    // non standard meta-character
    2827
    2928                OR                      "|",
     
    3433                ANY             ".",
    3534                SOS             "^",    // start-of-string
    36                 EOS                     "!",    // end-of-string, non-standard, '$' is standard
     35                EOS                     "$",    // end-of-string, non-standard, '$' is standard
    3736
    3837                BACKSLASH       "\\",
    39 //              HEX                     "x",
    40 //              UNICODE         "u",
    41                 COMMA           ",",
    4238        }
    4339}
     
    4642        recognizers {
    4743                Whitespace [IGNORE],
    48                 Character [CHARACTER] "]" "^" "-" "\\", // non meta-characters
    4944                Punctuator,
     45                Character [CHARACTER], // non meta-characters (punctuators)
    5046                EndOfInput,
    5147        }       
     
    6157        recognizers {
    6258                Whitespace [IGNORE],
     59                Punctuator,
    6360                Integer [INTEGER_CONST],
    64                 Punctuator,
    6561                EndOfInput,
    6662        }       
     
    7571        complementable {boolean isComplemented = false;},
    7672        repeatable {boolean isRange = false;},
    77          intValued {int value = 0;},
     73        intValued {int value = 0;},
    7874}
    7975
     
    8480        upperBound{intValued;} [],
    8581        boundedRepetitionIndicator{repeatable;} [],
    86        
    87         // escapedChar {} [escapedCharRest],
    88         // hexEscapedChar {} [hexEscapedCharRest],
    89         // unicodeEscapedChar {} [unicodeEscapedCharRest],
    9082}
    9183//
     
    115107       
    116108        char                    ʉ → CHARACTER | BACKSLASH escapedChar {@:isEscape = true;} ;
    117     escapedChar         â†’     CHARACTER | LEFTROUND | RIGHTROUND | LEFTSQUARE | LEFTCURLY | COMMA | OR | OPTIONAL | STAR | PLUS | ANY | SOS | EOS | BACKSLASH;
     109    escapedChar         â†’     CHARACTER | LEFTROUND | RIGHTROUND | LEFTSQUARE | LEFTCURLY | COMMA | OR | OPTIONAL | STAR | PLUS | ANY | SOS | EOS | BACKSLASH | LEFTCURLY;
    118110               
    119111        characterClass  →     LEFTSQUARE◊(charClass)
     
    127119    characterClassEscapedChar   â†’ CHARACTER | NOT | THROUGH | BACKSLASH | RIGHTSQUARE;
    128120
    129        
    130 //      escapedCharRest                                 â†’ (CHARACTER | BACKSLASH | RIGHTSQUARE);
    131 //      hexEscapedCharRest                      → char char;
    132 //      unicodeEscapedCharRest                  → char char char char;
    133        
    134121        any                             â†’ ANY ;
    135122        sos                             â†’ SOS ;
    136123        eos                             â†’ EOS ;
    137 
    138124}
  • proto/RE/input/test/scratch.re

    r3068 r3074  
    1 Tom.{10,25}river|river.{10,25}Tom
     1([A-Za-z]awyer|[A-Za-z]inn)[^a-zA-Z]
  • proto/RE/input/test/test1.re

    r3068 r3074  
    1 (?# Twain )
    21Twain
  • proto/RE/input/test/test15.re

    r3068 r3074  
    1 "[^"]{0,30}[?!\.]"
     1"[^"]{0,30}[?\!\.]"
Note: See TracChangeset for help on using the changeset viewer.