1
0
forked from GitHub/gf-core

Added | syntax for variants.

This commit is contained in:
bjorn
2008-10-03 07:35:26 +00:00
parent 6d4d6bce68
commit 4b41039a5d
6 changed files with 279 additions and 259 deletions
+7 -6
View File
@@ -428,13 +428,18 @@ Exp3 : Exp3 '!' Exp4 { ESelect $1 $3 }
| Exp4 { $1 }
Exp2 :: { Exp }
Exp2 : Exp3 '+' Exp2 { EGlue $1 $3 }
| Exp3 { $1 }
Exp1 :: { Exp }
Exp1 : Exp2 '+' Exp1 { EGlue $1 $3 }
Exp1 : Exp2 '++' Exp1 { EConcat $1 $3 }
| Exp2 { $1 }
Exp :: { Exp }
Exp : Exp1 '++' Exp { EConcat $1 $3 }
Exp : Exp1 '|' Exp { EVariant $1 $3 }
| '\\' ListBind '->' Exp { EAbstr $2 $4 }
| '\\' '\\' ListBind '=>' Exp { ECTable $3 $5 }
| Decl '->' Exp { EProd $1 $3 }
@@ -447,10 +452,6 @@ Exp : Exp1 '++' Exp { EConcat $1 $3 }
| Exp1 { $1 }
Exp2 :: { Exp }
Exp2 : Exp3 { $1 }
ListExp :: { [Exp] }
ListExp : {- empty -} { [] }
| Exp { (:[]) $1 }