JsScript {
bom_token: missing (optional),
interpreter_token: missing (optional),
directives: JsDirectiveList [],
statements: JsStatementList [
JsLabeledStatement {
label: JsLabel {
value_token: IDENT@0..16 "label1" [Comments("// SCRIPT"), Newline("\n")] [],
},
colon_token: COLON@16..18 ":" [] [Whitespace(" ")],
body: JsFunctionDeclaration {
async_token: missing (optional),
function_token: FUNCTION_KW@18..27 "function" [] [Whitespace(" ")],
star_token: missing (optional),
id: JsIdentifierBinding {
name_token: IDENT@27..28 "a" [] [],
},
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@28..29 "(" [] [],
items: JsParameterList [],
r_paren_token: R_PAREN@29..31 ")" [] [Whitespace(" ")],
},
return_type_annotation: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@31..32 "{" [] [],
directives: JsDirectiveList [],
statements: JsStatementList [],
r_curly_token: R_CURLY@32..33 "}" [] [],
},
},
},
],
eof_token: EOF@33..34 "" [Newline("\n")] [],
}
0: JS_SCRIPT@0..34
0: (empty)
1: (empty)
2: JS_DIRECTIVE_LIST@0..0
3: JS_STATEMENT_LIST@0..33
0: JS_LABELED_STATEMENT@0..33
0: JS_LABEL@0..16
0: IDENT@0..16 "label1" [Comments("// SCRIPT"), Newline("\n")] []
1: COLON@16..18 ":" [] [Whitespace(" ")]
2: JS_FUNCTION_DECLARATION@18..33
0: (empty)
1: FUNCTION_KW@18..27 "function" [] [Whitespace(" ")]
2: (empty)
3: JS_IDENTIFIER_BINDING@27..28
0: IDENT@27..28 "a" [] []
4: (empty)
5: JS_PARAMETERS@28..31
0: L_PAREN@28..29 "(" [] []
1: JS_PARAMETER_LIST@29..29
2: R_PAREN@29..31 ")" [] [Whitespace(" ")]
6: (empty)
7: JS_FUNCTION_BODY@31..33
0: L_CURLY@31..32 "{" [] []
1: JS_DIRECTIVE_LIST@32..32
2: JS_STATEMENT_LIST@32..32
3: R_CURLY@32..33 "}" [] []
4: EOF@33..34 "" [Newline("\n")] []