add lexer and parser for export function binding generation
This commit is contained in:
21
CodeGen/BMapBindings/ExpFctsParser.g4
Normal file
21
CodeGen/BMapBindings/ExpFctsParser.g4
Normal file
@ -0,0 +1,21 @@
|
||||
parser grammar ExpFctsParser;
|
||||
options { tokenVocab = ExpFctsLexer; }
|
||||
|
||||
program: fctDecl* ;
|
||||
|
||||
fctDecl
|
||||
: EXPFCTS_EXPORT varType EXPFCTS_IDENTIFIER '(' (fctArg (',' fctArg)*)? ')' ';'
|
||||
;
|
||||
|
||||
fctArg
|
||||
: EXPFCTS_FILE_DECL '(' EXPFCTS_IDENTIFIER ')' # fctArgFileDecl
|
||||
| EXPFCTS_MESHTRANS_DECL '(' EXPFCTS_IDENTIFIER ')' #fctArgMeshTransDecl
|
||||
| EXPFCTS_OBJECT_DECL '(' EXPFCTS_IDENTIFIER ',' EXPFCTS_IDENTIFIER ')' # fctArgObjDecl
|
||||
| EXPFCTS_PARAM_IN '(' varType ',' EXPFCTS_IDENTIFIER ')' # fctArgParamIn
|
||||
| EXPFCTS_PARAM_OUT '(' varType ',' EXPFCTS_IDENTIFIER ')' # fctArgParamOut
|
||||
;
|
||||
|
||||
varType
|
||||
: EXPFCTS_IDENTIFIER ('::' EXPFCTS_IDENTIFIER)* '*'?
|
||||
;
|
||||
|
Reference in New Issue
Block a user