JsModule {
bom_token: missing (optional),
interpreter_token: missing (optional),
directives: JsDirectiveList [],
items: JsModuleItemList [
JsFunctionDeclaration {
async_token: missing (optional),
function_token: FUNCTION_KW@0..9 "function" [] [Whitespace(" ")],
star_token: missing (optional),
id: JsIdentifierBinding {
name_token: IDENT@9..10 "a" [] [],
},
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@10..11 "(" [] [],
items: JsParameterList [
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@11..12 "x" [] [],
},
question_mark_token: missing (optional),
type_annotation: missing (optional),
initializer: missing (optional),
},
],
r_paren_token: R_PAREN@12..14 ")" [] [Whitespace(" ")],
},
return_type_annotation: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@14..15 "{" [] [],
directives: JsDirectiveList [],
statements: JsStatementList [],
r_curly_token: R_CURLY@15..16 "}" [] [],
},
},
JsFunctionDeclaration {
async_token: missing (optional),
function_token: FUNCTION_KW@16..26 "function" [Newline("\n")] [Whitespace(" ")],
star_token: missing (optional),
id: JsIdentifierBinding {
name_token: IDENT@26..27 "b" [] [],
},
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@27..28 "(" [] [],
items: JsParameterList [
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsObjectBindingPattern {
l_curly_token: L_CURLY@28..30 "{" [] [Whitespace(" ")],
properties: JsObjectBindingPatternPropertyList [
JsObjectBindingPatternShorthandProperty {
identifier: JsIdentifierBinding {
name_token: IDENT@30..31 "x" [] [],
},
init: missing (optional),
},
COMMA@31..33 "," [] [Whitespace(" ")],
JsObjectBindingPatternShorthandProperty {
identifier: JsIdentifierBinding {
name_token: IDENT@33..35 "y" [] [Whitespace(" ")],
},
init: missing (optional),
},
],
r_curly_token: R_CURLY@35..37 "}" [] [Whitespace(" ")],
},
question_mark_token: missing (optional),
type_annotation: missing (optional),
initializer: JsInitializerClause {
eq_token: EQ@37..39 "=" [] [Whitespace(" ")],
expression: JsObjectExpression {
l_curly_token: L_CURLY@39..40 "{" [] [],
members: JsObjectMemberList [],
r_curly_token: R_CURLY@40..41 "}" [] [],
},
},
},
],
r_paren_token: R_PAREN@41..43 ")" [] [Whitespace(" ")],
},
return_type_annotation: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@43..44 "{" [] [],
directives: JsDirectiveList [],
statements: JsStatementList [],
r_curly_token: R_CURLY@44..45 "}" [] [],
},
},
JsFunctionDeclaration {
async_token: missing (optional),
function_token: FUNCTION_KW@45..55 "function" [Newline("\n")] [Whitespace(" ")],
star_token: missing (optional),
id: JsIdentifierBinding {
name_token: IDENT@55..56 "c" [] [],
},
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@56..57 "(" [] [],
items: JsParameterList [
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@57..58 "x" [] [],
},
question_mark_token: missing (optional),
type_annotation: TsTypeAnnotation {
colon_token: COLON@58..60 ":" [] [Whitespace(" ")],
ty: TsStringType {
string_token: STRING_KW@60..66 "string" [] [],
},
},
initializer: missing (optional),
},
COMMA@66..68 "," [] [Whitespace(" ")],
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@68..69 "y" [] [],
},
question_mark_token: QUESTION@69..70 "?" [] [],
type_annotation: TsTypeAnnotation {
colon_token: COLON@70..72 ":" [] [Whitespace(" ")],
ty: TsNumberType {
number_token: NUMBER_KW@72..78 "number" [] [],
},
},
initializer: missing (optional),
},
COMMA@78..80 "," [] [Whitespace(" ")],
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@80..81 "z" [] [],
},
question_mark_token: missing (optional),
type_annotation: TsTypeAnnotation {
colon_token: COLON@81..83 ":" [] [Whitespace(" ")],
ty: TsStringType {
string_token: STRING_KW@83..90 "string" [] [Whitespace(" ")],
},
},
initializer: JsInitializerClause {
eq_token: EQ@90..92 "=" [] [Whitespace(" ")],
expression: JsStringLiteralExpression {
value_token: JS_STRING_LITERAL@92..98 "\"test\"" [] [],
},
},
},
],
r_paren_token: R_PAREN@98..100 ")" [] [Whitespace(" ")],
},
return_type_annotation: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@100..101 "{" [] [],
directives: JsDirectiveList [],
statements: JsStatementList [],
r_curly_token: R_CURLY@101..102 "}" [] [],
},
},
],
eof_token: EOF@102..103 "" [Newline("\n")] [],
}
0: JS_MODULE@0..103
0: (empty)
1: (empty)
2: JS_DIRECTIVE_LIST@0..0
3: JS_MODULE_ITEM_LIST@0..102
0: JS_FUNCTION_DECLARATION@0..16
0: (empty)
1: FUNCTION_KW@0..9 "function" [] [Whitespace(" ")]
2: (empty)
3: JS_IDENTIFIER_BINDING@9..10
0: IDENT@9..10 "a" [] []
4: (empty)
5: JS_PARAMETERS@10..14
0: L_PAREN@10..11 "(" [] []
1: JS_PARAMETER_LIST@11..12
0: JS_FORMAL_PARAMETER@11..12
0: JS_DECORATOR_LIST@11..11
1: JS_IDENTIFIER_BINDING@11..12
0: IDENT@11..12 "x" [] []
2: (empty)
3: (empty)
4: (empty)
2: R_PAREN@12..14 ")" [] [Whitespace(" ")]
6: (empty)
7: JS_FUNCTION_BODY@14..16
0: L_CURLY@14..15 "{" [] []
1: JS_DIRECTIVE_LIST@15..15
2: JS_STATEMENT_LIST@15..15
3: R_CURLY@15..16 "}" [] []
1: JS_FUNCTION_DECLARATION@16..45
0: (empty)
1: FUNCTION_KW@16..26 "function" [Newline("\n")] [Whitespace(" ")]
2: (empty)
3: JS_IDENTIFIER_BINDING@26..27
0: IDENT@26..27 "b" [] []
4: (empty)
5: JS_PARAMETERS@27..43
0: L_PAREN@27..28 "(" [] []
1: JS_PARAMETER_LIST@28..41
0: JS_FORMAL_PARAMETER@28..41
0: JS_DECORATOR_LIST@28..28
1: JS_OBJECT_BINDING_PATTERN@28..37
0: L_CURLY@28..30 "{" [] [Whitespace(" ")]
1: JS_OBJECT_BINDING_PATTERN_PROPERTY_LIST@30..35
0: JS_OBJECT_BINDING_PATTERN_SHORTHAND_PROPERTY@30..31
0: JS_IDENTIFIER_BINDING@30..31
0: IDENT@30..31 "x" [] []
1: (empty)
1: COMMA@31..33 "," [] [Whitespace(" ")]
2: JS_OBJECT_BINDING_PATTERN_SHORTHAND_PROPERTY@33..35
0: JS_IDENTIFIER_BINDING@33..35
0: IDENT@33..35 "y" [] [Whitespace(" ")]
1: (empty)
2: R_CURLY@35..37 "}" [] [Whitespace(" ")]
2: (empty)
3: (empty)
4: JS_INITIALIZER_CLAUSE@37..41
0: EQ@37..39 "=" [] [Whitespace(" ")]
1: JS_OBJECT_EXPRESSION@39..41
0: L_CURLY@39..40 "{" [] []
1: JS_OBJECT_MEMBER_LIST@40..40
2: R_CURLY@40..41 "}" [] []
2: R_PAREN@41..43 ")" [] [Whitespace(" ")]
6: (empty)
7: JS_FUNCTION_BODY@43..45
0: L_CURLY@43..44 "{" [] []
1: JS_DIRECTIVE_LIST@44..44
2: JS_STATEMENT_LIST@44..44
3: R_CURLY@44..45 "}" [] []
2: JS_FUNCTION_DECLARATION@45..102
0: (empty)
1: FUNCTION_KW@45..55 "function" [Newline("\n")] [Whitespace(" ")]
2: (empty)
3: JS_IDENTIFIER_BINDING@55..56
0: IDENT@55..56 "c" [] []
4: (empty)
5: JS_PARAMETERS@56..100
0: L_PAREN@56..57 "(" [] []
1: JS_PARAMETER_LIST@57..98
0: JS_FORMAL_PARAMETER@57..66
0: JS_DECORATOR_LIST@57..57
1: JS_IDENTIFIER_BINDING@57..58
0: IDENT@57..58 "x" [] []
2: (empty)
3: TS_TYPE_ANNOTATION@58..66
0: COLON@58..60 ":" [] [Whitespace(" ")]
1: TS_STRING_TYPE@60..66
0: STRING_KW@60..66 "string" [] []
4: (empty)
1: COMMA@66..68 "," [] [Whitespace(" ")]
2: JS_FORMAL_PARAMETER@68..78
0: JS_DECORATOR_LIST@68..68
1: JS_IDENTIFIER_BINDING@68..69
0: IDENT@68..69 "y" [] []
2: QUESTION@69..70 "?" [] []
3: TS_TYPE_ANNOTATION@70..78
0: COLON@70..72 ":" [] [Whitespace(" ")]
1: TS_NUMBER_TYPE@72..78
0: NUMBER_KW@72..78 "number" [] []
4: (empty)
3: COMMA@78..80 "," [] [Whitespace(" ")]
4: JS_FORMAL_PARAMETER@80..98
0: JS_DECORATOR_LIST@80..80
1: JS_IDENTIFIER_BINDING@80..81
0: IDENT@80..81 "z" [] []
2: (empty)
3: TS_TYPE_ANNOTATION@81..90
0: COLON@81..83 ":" [] [Whitespace(" ")]
1: TS_STRING_TYPE@83..90
0: STRING_KW@83..90 "string" [] [Whitespace(" ")]
4: JS_INITIALIZER_CLAUSE@90..98
0: EQ@90..92 "=" [] [Whitespace(" ")]
1: JS_STRING_LITERAL_EXPRESSION@92..98
0: JS_STRING_LITERAL@92..98 "\"test\"" [] []
2: R_PAREN@98..100 ")" [] [Whitespace(" ")]
6: (empty)
7: JS_FUNCTION_BODY@100..102
0: L_CURLY@100..101 "{" [] []
1: JS_DIRECTIVE_LIST@101..101
2: JS_STATEMENT_LIST@101..101
3: R_CURLY@101..102 "}" [] []
4: EOF@102..103 "" [Newline("\n")] []