diff options
| author | bringert <unknown> | 2004-09-29 08:27:28 +0000 |
|---|---|---|
| committer | bringert <unknown> | 2004-09-29 08:27:28 +0000 |
| commit | df2c63c5596db36f0c1899cced6b7ee2e946741e (patch) | |
| tree | eece388341c371e9b1c552663493e2fb05dacd6f /src/GF/CFGM/CFG.cf | |
| parent | 01f872bf5db46863565c44c7f40b337217d35e8e (diff) | |
Updated to latest CFG specification from gfc2java
Diffstat (limited to 'src/GF/CFGM/CFG.cf')
| -rw-r--r-- | src/GF/CFGM/CFG.cf | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/GF/CFGM/CFG.cf b/src/GF/CFGM/CFG.cf index 51117b8ba..f7b15aea1 100644 --- a/src/GF/CFGM/CFG.cf +++ b/src/GF/CFGM/CFG.cf @@ -20,16 +20,29 @@ separator Integer ","; CatS. Symbol ::= Category; TermS. Symbol ::= String; -separator Symbol ""; +-- separator Symbol ""; +[]. [Symbol] ::= "." ; +(:[]). [Symbol] ::= Symbol ; +(:). [Symbol] ::= Symbol [Symbol] ; + Name. Name ::= [IdentParam] Category; terminator IdentParam "/"; -Category. Category ::= IdentParam "." Ident [Param] ; +Category. Category ::= IdentParam "." Ident [Proj] ; + +IdentParam. IdentParam ::= Ident "{" [Field] "}" ; -IdentParam. IdentParam ::= Ident "{" [Param] "}" ; +Field. Field ::= "." KeyValue ; +terminator Field ";" ; -Param. Param ::= "!" Ident ; -separator Param ""; +Proj. Proj ::= "!" Param ; +separator Proj "" ; +KeyValue. KeyValue ::= Ident "=" Param ; +separator KeyValue ";" ; +ParamSimple. Param ::= Ident ; +ParamPatt. Param ::= Ident "(" [Param] ")" ; +ParamRec. Param ::= "{" [KeyValue] "}" ; +separator Param "," ; |
