Changeset 2726


Ignore:
Timestamp:
Apr 23, 2007, 4:25:26 PM (14 years ago)
Author:
yura
Message:
  • Using Refal+ extensions: blocks are allowed in patterns.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • to-imperative/trunk/compiler/rfp_parse.rf

    r2716 r2726  
    230230  > :: (e.pos) (s.type e.value),
    231231//    <Store &Saved-Position e.pos>,
    232     \{
     232    s.type : \{
    233233      // If token type is BOX, TABLE, VECTOR, STRING or CHANNEL
    234234      // then parse object declaration
    235       s.type : \{ BOX; TABLE; VECTOR; STRING; CHANNEL; } =
     235      \{ BOX; TABLE; VECTOR; STRING; CHANNEL; } =
    236236        <Parse_Object_Decls s.type>;
    237       s.type : MODULE =
     237      MODULE =
    238238        <Parse_Module_Name>;
    239       s.type : USE =
     239      USE =
    240240        <Parse_Uses>;
    241       s.type : CONST =
     241      CONST =
    242242        <Parse_Const_Decls>;
    243       s.type : TRACE =
     243      TRACE =
    244244        <Parse_Trace_Names>;
    245       s.type : TRACEALL =
     245      TRACEALL =
    246246        <Store &IsTraceall TRACEALL>,
    247247        <Expect_Token SEMICOLON EMPTY> : e;
    248       s.type : EXTERN =
     248      EXTERN =
    249249        <Parse_Extern_Names>;
    250       s.type : \{ FUNC; "FUNC?"; TFUNC; } =
     250      \{ FUNC; "FUNC?"; TFUNC; } =
    251251        <Parse_Func_Decl s.type>;
    252       s.type : \{ WORD; QWORD; } =
     252      \{ WORD; QWORD; } =
    253253        <Parse_Func_Def (e.pos) (s.type e.value)>;
    254       s.type : BOF =
     254      BOF =
    255255        {
    256256          e.value : RF e =
     
    260260            <ClearTable &Names>;
    261261        };
    262       s.type : EOF =
     262      EOF =
    263263        {
    264264          <Entries &Names> : e ((e.k) (e.v)) e,
     
    266266            $fail;;
    267267        };
    268       # \{ s.type : EOFS; } ;
     268      //# \{ s.type : EOFS; } ;
    269269    } :: e.items = e.items <Parse_Body>;
    270270  // If there are no tokens and we aren't processing an interface file then
Note: See TracChangeset for help on using the changeset viewer.