Files
rk35xx-android14/external/antlr/runtime/JavaScript/tests/functional/t014parser.g
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

37 lines
674 B
Plaintext
Executable File

grammar t014parser;
options {
language = JavaScript;
}
@parser::members {
this.reportedErrors = [];
this.events = [];
this.emitErrorMessage = function(msg) {
this.reportedErrors.push(msg);
};
this.eventMessage = function(msg) {
this.events.push(msg);
};
}
document:
( declaration
| call
)*
EOF
;
declaration:
'var' t=IDENTIFIER ';'
{this.eventMessage(['decl', $t.getText()]);}
;
call:
t=IDENTIFIER '(' ')' ';'
{this.eventMessage(['call', $t.getText()]);}
;
IDENTIFIER: ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')*;
WS: (' '|'\r'|'\t'|'\n') {$channel=HIDDEN;};