Lecture de non
This commit is contained in:
parent
a5d820319a
commit
136da4a898
@ -8,6 +8,7 @@ rule token = parse
|
||||
| '(' { LPAREN }
|
||||
| ')' { RPAREN }
|
||||
| "->" { RARROW }
|
||||
| '~' { TILDE }
|
||||
| ['a'-'z']+['0'-'9']* as s { VAR_NAME s }
|
||||
| ['A'-'Z']+['0'-'9']* as s { TYPE_NAME s }
|
||||
| eof { EOF }
|
||||
|
||||
@ -3,13 +3,14 @@
|
||||
%}
|
||||
|
||||
/* Description des lexèmes définis dans lexer.mll */
|
||||
%token LPAREN RPAREN RARROW
|
||||
%token LPAREN RPAREN RARROW TILDE
|
||||
%token <string> VAR_NAME
|
||||
%token <string> TYPE_NAME
|
||||
%token ENDL EOF
|
||||
|
||||
/* L'ordre de définition définit la priorité */
|
||||
%left RARROW
|
||||
%nonassoc TILDE
|
||||
|
||||
%start main_type
|
||||
%type <Structs.ty> main_type
|
||||
@ -24,3 +25,4 @@ ty:
|
||||
| LPAREN ty RPAREN { $2 }
|
||||
| ty RARROW ty { TImpl ($1, $3) }
|
||||
| TYPE_NAME { TSimple $1 }
|
||||
| TILDE ty { TImpl ($2, TFalse) }
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user