JsModule {
bom_token: missing (optional),
interpreter_token: missing (optional),
directives: JsDirectiveList [],
items: JsModuleItemList [
JsClassDeclaration {
decorators: JsDecoratorList [],
abstract_token: ABSTRACT_KW@0..9 "abstract" [] [Whitespace(" ")],
class_token: CLASS_KW@9..15 "class" [] [Whitespace(" ")],
id: JsIdentifierBinding {
name_token: IDENT@15..17 "A" [] [Whitespace(" ")],
},
type_parameters: missing (optional),
extends_clause: missing (optional),
implements_clause: missing (optional),
l_curly_token: L_CURLY@17..18 "{" [] [],
members: JsClassMemberList [],
r_curly_token: R_CURLY@18..19 "}" [] [],
},
JsClassDeclaration {
decorators: JsDecoratorList [],
abstract_token: ABSTRACT_KW@19..29 "abstract" [Newline("\n")] [Whitespace(" ")],
class_token: CLASS_KW@29..35 "class" [] [Whitespace(" ")],
id: JsIdentifierBinding {
name_token: IDENT@35..51 "ConcreteMembers" [] [Whitespace(" ")],
},
type_parameters: missing (optional),
extends_clause: missing (optional),
implements_clause: missing (optional),
l_curly_token: L_CURLY@51..52 "{" [] [],
members: JsClassMemberList [
JsPropertyClassMember {
modifiers: JsPropertyModifierList [],
name: JsLiteralMemberName {
value: IDENT@52..61 "name" [Newline("\n"), Whitespace(" ")] [],
},
property_annotation: TsTypeAnnotation {
colon_token: COLON@61..63 ":" [] [Whitespace(" ")],
ty: TsStringType {
string_token: STRING_KW@63..69 "string" [] [],
},
},
value: missing (optional),
semicolon_token: SEMICOLON@69..70 ";" [] [],
},
JsConstructorClassMember {
modifiers: JsConstructorModifierList [],
name: JsLiteralMemberName {
value: IDENT@70..86 "constructor" [Newline("\n"), Whitespace(" ")] [],
},
parameters: JsConstructorParameters {
l_paren_token: L_PAREN@86..87 "(" [] [],
parameters: JsConstructorParameterList [
JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@87..91 "name" [] [],
},
question_mark_token: missing (optional),
type_annotation: TsTypeAnnotation {
colon_token: COLON@91..93 ":" [] [Whitespace(" ")],
ty: TsStringType {
string_token: STRING_KW@93..99 "string" [] [],
},
},
initializer: missing (optional),
},
],
r_paren_token: R_PAREN@99..101 ")" [] [Whitespace(" ")],
},
body: JsFunctionBody {
l_curly_token: L_CURLY@101..103 "{" [] [Whitespace(" ")],
directives: JsDirectiveList [],
statements: JsStatementList [
JsExpressionStatement {
expression: JsAssignmentExpression {
left: JsStaticMemberAssignment {
object: JsThisExpression {
this_token: THIS_KW@103..107 "this" [] [],
},
dot_token: DOT@107..108 "." [] [],
member: JsName {
value_token: IDENT@108..113 "name" [] [Whitespace(" ")],
},
},
operator_token: EQ@113..115 "=" [] [Whitespace(" ")],
right: JsIdentifierExpression {
name: JsReferenceIdentifier {
value_token: IDENT@115..119 "name" [] [],
},
},
},
semicolon_token: SEMICOLON@119..121 ";" [] [Whitespace(" ")],
},
],
r_curly_token: R_CURLY@121..122 "}" [] [],
},
},
JsMethodClassMember {
modifiers: JsMethodModifierList [],
async_token: missing (optional),
star_token: missing (optional),
name: JsLiteralMemberName {
value: IDENT@122..134 "display" [Newline("\n"), Whitespace(" ")] [],
},
question_mark_token: missing (optional),
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@134..135 "(" [] [],
items: JsParameterList [],
r_paren_token: R_PAREN@135..136 ")" [] [],
},
return_type_annotation: TsReturnTypeAnnotation {
colon_token: COLON@136..138 ":" [] [Whitespace(" ")],
ty: TsVoidType {
void_token: VOID_KW@138..143 "void" [] [Whitespace(" ")],
},
},
body: JsFunctionBody {
l_curly_token: L_CURLY@143..145 "{" [] [Whitespace(" ")],
directives: JsDirectiveList [],
statements: JsStatementList [
JsExpressionStatement {
expression: JsCallExpression {
callee: JsStaticMemberExpression {
object: JsIdentifierExpression {
name: JsReferenceIdentifier {
value_token: IDENT@145..152 "console" [] [],
},
},
operator_token: DOT@152..153 "." [] [],
member: JsName {
value_token: IDENT@153..156 "log" [] [],
},
},
optional_chain_token: missing (optional),
type_arguments: missing (optional),
arguments: JsCallArguments {
l_paren_token: L_PAREN@156..157 "(" [] [],
args: JsCallArgumentList [
JsStaticMemberExpression {
object: JsThisExpression {
this_token: THIS_KW@157..161 "this" [] [],
},
operator_token: DOT@161..162 "." [] [],
member: JsName {
value_token: IDENT@162..166 "name" [] [],
},
},
],
r_paren_token: R_PAREN@166..167 ")" [] [],
},
},
semicolon_token: SEMICOLON@167..169 ";" [] [Whitespace(" ")],
},
],
r_curly_token: R_CURLY@169..170 "}" [] [],
},
},
JsGetterClassMember {
modifiers: JsMethodModifierList [
TsAccessibilityModifier {
modifier_token: PUBLIC_KW@170..182 "public" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
get_token: GET_KW@182..186 "get" [] [Whitespace(" ")],
name: JsLiteralMemberName {
value: IDENT@186..193 "my_name" [] [],
},
l_paren_token: L_PAREN@193..194 "(" [] [],
r_paren_token: R_PAREN@194..196 ")" [] [Whitespace(" ")],
return_type: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@196..198 "{" [] [Whitespace(" ")],
directives: JsDirectiveList [],
statements: JsStatementList [
JsReturnStatement {
return_token: RETURN_KW@198..205 "return" [] [Whitespace(" ")],
argument: JsStaticMemberExpression {
object: JsThisExpression {
this_token: THIS_KW@205..209 "this" [] [],
},
operator_token: DOT@209..210 "." [] [],
member: JsName {
value_token: IDENT@210..214 "name" [] [],
},
},
semicolon_token: SEMICOLON@214..216 ";" [] [Whitespace(" ")],
},
],
r_curly_token: R_CURLY@216..217 "}" [] [],
},
},
JsSetterClassMember {
modifiers: JsMethodModifierList [
TsAccessibilityModifier {
modifier_token: PUBLIC_KW@217..229 "public" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
set_token: SET_KW@229..233 "set" [] [Whitespace(" ")],
name: JsLiteralMemberName {
value: IDENT@233..240 "my_name" [] [],
},
l_paren_token: L_PAREN@240..241 "(" [] [],
parameter: JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@241..245 "name" [] [],
},
question_mark_token: missing (optional),
type_annotation: missing (optional),
initializer: missing (optional),
},
r_paren_token: R_PAREN@245..247 ")" [] [Whitespace(" ")],
body: JsFunctionBody {
l_curly_token: L_CURLY@247..249 "{" [] [Whitespace(" ")],
directives: JsDirectiveList [],
statements: JsStatementList [
JsExpressionStatement {
expression: JsAssignmentExpression {
left: JsStaticMemberAssignment {
object: JsThisExpression {
this_token: THIS_KW@249..253 "this" [] [],
},
dot_token: DOT@253..254 "." [] [],
member: JsName {
value_token: IDENT@254..259 "name" [] [Whitespace(" ")],
},
},
operator_token: EQ@259..261 "=" [] [Whitespace(" ")],
right: JsIdentifierExpression {
name: JsReferenceIdentifier {
value_token: IDENT@261..265 "name" [] [],
},
},
},
semicolon_token: SEMICOLON@265..267 ";" [] [Whitespace(" ")],
},
],
r_curly_token: R_CURLY@267..268 "}" [] [],
},
},
JsMethodClassMember {
modifiers: JsMethodModifierList [],
async_token: missing (optional),
star_token: missing (optional),
name: JsPrivateClassMemberName {
hash_token: HASH@268..274 "#" [Newline("\n"), Whitespace(" ")] [],
id_token: IDENT@274..288 "private_method" [] [],
},
question_mark_token: missing (optional),
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@288..289 "(" [] [],
items: JsParameterList [],
r_paren_token: R_PAREN@289..291 ")" [] [Whitespace(" ")],
},
return_type_annotation: missing (optional),
body: JsFunctionBody {
l_curly_token: L_CURLY@291..293 "{" [] [Whitespace(" ")],
directives: JsDirectiveList [],
statements: JsStatementList [],
r_curly_token: R_CURLY@293..294 "}" [] [],
},
},
],
r_curly_token: R_CURLY@294..296 "}" [Newline("\n")] [],
},
JsClassDeclaration {
decorators: JsDecoratorList [],
abstract_token: ABSTRACT_KW@296..306 "abstract" [Newline("\n")] [Whitespace(" ")],
class_token: CLASS_KW@306..312 "class" [] [Whitespace(" ")],
id: JsIdentifierBinding {
name_token: IDENT@312..328 "AbstractMembers" [] [Whitespace(" ")],
},
type_parameters: missing (optional),
extends_clause: missing (optional),
implements_clause: missing (optional),
l_curly_token: L_CURLY@328..329 "{" [] [],
members: JsClassMemberList [
TsPropertySignatureClassMember {
modifiers: TsPropertySignatureModifierList [
TsAbstractModifier {
modifier_token: ABSTRACT_KW@329..343 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
name: JsLiteralMemberName {
value: IDENT@343..347 "name" [] [],
},
property_annotation: TsTypeAnnotation {
colon_token: COLON@347..349 ":" [] [Whitespace(" ")],
ty: TsStringType {
string_token: STRING_KW@349..355 "string" [] [],
},
},
semicolon_token: SEMICOLON@355..356 ";" [] [],
},
TsMethodSignatureClassMember {
modifiers: TsMethodSignatureModifierList [
TsAbstractModifier {
modifier_token: ABSTRACT_KW@356..370 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
async_token: missing (optional),
name: JsLiteralMemberName {
value: IDENT@370..377 "display" [] [],
},
question_mark_token: missing (optional),
type_parameters: missing (optional),
parameters: JsParameters {
l_paren_token: L_PAREN@377..378 "(" [] [],
items: JsParameterList [],
r_paren_token: R_PAREN@378..379 ")" [] [],
},
return_type_annotation: missing (optional),
semicolon_token: SEMICOLON@379..380 ";" [] [],
},
TsGetterSignatureClassMember {
modifiers: TsMethodSignatureModifierList [
TsAbstractModifier {
modifier_token: ABSTRACT_KW@380..394 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
get_token: GET_KW@394..398 "get" [] [Whitespace(" ")],
name: JsLiteralMemberName {
value: IDENT@398..405 "my_name" [] [],
},
l_paren_token: L_PAREN@405..406 "(" [] [],
r_paren_token: R_PAREN@406..407 ")" [] [],
return_type: missing (optional),
semicolon_token: SEMICOLON@407..408 ";" [] [],
},
TsSetterSignatureClassMember {
modifiers: TsMethodSignatureModifierList [
TsAbstractModifier {
modifier_token: ABSTRACT_KW@408..422 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")],
},
],
set_token: SET_KW@422..426 "set" [] [Whitespace(" ")],
name: JsLiteralMemberName {
value: IDENT@426..433 "my_name" [] [],
},
l_paren_token: L_PAREN@433..434 "(" [] [],
parameter: JsFormalParameter {
decorators: JsDecoratorList [],
binding: JsIdentifierBinding {
name_token: IDENT@434..437 "val" [] [],
},
question_mark_token: missing (optional),
type_annotation: missing (optional),
initializer: missing (optional),
},
r_paren_token: R_PAREN@437..438 ")" [] [],
semicolon_token: SEMICOLON@438..439 ";" [] [],
},
],
r_curly_token: R_CURLY@439..441 "}" [Newline("\n")] [],
},
],
eof_token: EOF@441..442 "" [Newline("\n")] [],
}
0: JS_MODULE@0..442
0: (empty)
1: (empty)
2: JS_DIRECTIVE_LIST@0..0
3: JS_MODULE_ITEM_LIST@0..441
0: JS_CLASS_DECLARATION@0..19
0: JS_DECORATOR_LIST@0..0
1: ABSTRACT_KW@0..9 "abstract" [] [Whitespace(" ")]
2: CLASS_KW@9..15 "class" [] [Whitespace(" ")]
3: JS_IDENTIFIER_BINDING@15..17
0: IDENT@15..17 "A" [] [Whitespace(" ")]
4: (empty)
5: (empty)
6: (empty)
7: L_CURLY@17..18 "{" [] []
8: JS_CLASS_MEMBER_LIST@18..18
9: R_CURLY@18..19 "}" [] []
1: JS_CLASS_DECLARATION@19..296
0: JS_DECORATOR_LIST@19..19
1: ABSTRACT_KW@19..29 "abstract" [Newline("\n")] [Whitespace(" ")]
2: CLASS_KW@29..35 "class" [] [Whitespace(" ")]
3: JS_IDENTIFIER_BINDING@35..51
0: IDENT@35..51 "ConcreteMembers" [] [Whitespace(" ")]
4: (empty)
5: (empty)
6: (empty)
7: L_CURLY@51..52 "{" [] []
8: JS_CLASS_MEMBER_LIST@52..294
0: JS_PROPERTY_CLASS_MEMBER@52..70
0: JS_PROPERTY_MODIFIER_LIST@52..52
1: JS_LITERAL_MEMBER_NAME@52..61
0: IDENT@52..61 "name" [Newline("\n"), Whitespace(" ")] []
2: TS_TYPE_ANNOTATION@61..69
0: COLON@61..63 ":" [] [Whitespace(" ")]
1: TS_STRING_TYPE@63..69
0: STRING_KW@63..69 "string" [] []
3: (empty)
4: SEMICOLON@69..70 ";" [] []
1: JS_CONSTRUCTOR_CLASS_MEMBER@70..122
0: JS_CONSTRUCTOR_MODIFIER_LIST@70..70
1: JS_LITERAL_MEMBER_NAME@70..86
0: IDENT@70..86 "constructor" [Newline("\n"), Whitespace(" ")] []
2: JS_CONSTRUCTOR_PARAMETERS@86..101
0: L_PAREN@86..87 "(" [] []
1: JS_CONSTRUCTOR_PARAMETER_LIST@87..99
0: JS_FORMAL_PARAMETER@87..99
0: JS_DECORATOR_LIST@87..87
1: JS_IDENTIFIER_BINDING@87..91
0: IDENT@87..91 "name" [] []
2: (empty)
3: TS_TYPE_ANNOTATION@91..99
0: COLON@91..93 ":" [] [Whitespace(" ")]
1: TS_STRING_TYPE@93..99
0: STRING_KW@93..99 "string" [] []
4: (empty)
2: R_PAREN@99..101 ")" [] [Whitespace(" ")]
3: JS_FUNCTION_BODY@101..122
0: L_CURLY@101..103 "{" [] [Whitespace(" ")]
1: JS_DIRECTIVE_LIST@103..103
2: JS_STATEMENT_LIST@103..121
0: JS_EXPRESSION_STATEMENT@103..121
0: JS_ASSIGNMENT_EXPRESSION@103..119
0: JS_STATIC_MEMBER_ASSIGNMENT@103..113
0: JS_THIS_EXPRESSION@103..107
0: THIS_KW@103..107 "this" [] []
1: DOT@107..108 "." [] []
2: JS_NAME@108..113
0: IDENT@108..113 "name" [] [Whitespace(" ")]
1: EQ@113..115 "=" [] [Whitespace(" ")]
2: JS_IDENTIFIER_EXPRESSION@115..119
0: JS_REFERENCE_IDENTIFIER@115..119
0: IDENT@115..119 "name" [] []
1: SEMICOLON@119..121 ";" [] [Whitespace(" ")]
3: R_CURLY@121..122 "}" [] []
2: JS_METHOD_CLASS_MEMBER@122..170
0: JS_METHOD_MODIFIER_LIST@122..122
1: (empty)
2: (empty)
3: JS_LITERAL_MEMBER_NAME@122..134
0: IDENT@122..134 "display" [Newline("\n"), Whitespace(" ")] []
4: (empty)
5: (empty)
6: JS_PARAMETERS@134..136
0: L_PAREN@134..135 "(" [] []
1: JS_PARAMETER_LIST@135..135
2: R_PAREN@135..136 ")" [] []
7: TS_RETURN_TYPE_ANNOTATION@136..143
0: COLON@136..138 ":" [] [Whitespace(" ")]
1: TS_VOID_TYPE@138..143
0: VOID_KW@138..143 "void" [] [Whitespace(" ")]
8: JS_FUNCTION_BODY@143..170
0: L_CURLY@143..145 "{" [] [Whitespace(" ")]
1: JS_DIRECTIVE_LIST@145..145
2: JS_STATEMENT_LIST@145..169
0: JS_EXPRESSION_STATEMENT@145..169
0: JS_CALL_EXPRESSION@145..167
0: JS_STATIC_MEMBER_EXPRESSION@145..156
0: JS_IDENTIFIER_EXPRESSION@145..152
0: JS_REFERENCE_IDENTIFIER@145..152
0: IDENT@145..152 "console" [] []
1: DOT@152..153 "." [] []
2: JS_NAME@153..156
0: IDENT@153..156 "log" [] []
1: (empty)
2: (empty)
3: JS_CALL_ARGUMENTS@156..167
0: L_PAREN@156..157 "(" [] []
1: JS_CALL_ARGUMENT_LIST@157..166
0: JS_STATIC_MEMBER_EXPRESSION@157..166
0: JS_THIS_EXPRESSION@157..161
0: THIS_KW@157..161 "this" [] []
1: DOT@161..162 "." [] []
2: JS_NAME@162..166
0: IDENT@162..166 "name" [] []
2: R_PAREN@166..167 ")" [] []
1: SEMICOLON@167..169 ";" [] [Whitespace(" ")]
3: R_CURLY@169..170 "}" [] []
3: JS_GETTER_CLASS_MEMBER@170..217
0: JS_METHOD_MODIFIER_LIST@170..182
0: TS_ACCESSIBILITY_MODIFIER@170..182
0: PUBLIC_KW@170..182 "public" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: GET_KW@182..186 "get" [] [Whitespace(" ")]
2: JS_LITERAL_MEMBER_NAME@186..193
0: IDENT@186..193 "my_name" [] []
3: L_PAREN@193..194 "(" [] []
4: R_PAREN@194..196 ")" [] [Whitespace(" ")]
5: (empty)
6: JS_FUNCTION_BODY@196..217
0: L_CURLY@196..198 "{" [] [Whitespace(" ")]
1: JS_DIRECTIVE_LIST@198..198
2: JS_STATEMENT_LIST@198..216
0: JS_RETURN_STATEMENT@198..216
0: RETURN_KW@198..205 "return" [] [Whitespace(" ")]
1: JS_STATIC_MEMBER_EXPRESSION@205..214
0: JS_THIS_EXPRESSION@205..209
0: THIS_KW@205..209 "this" [] []
1: DOT@209..210 "." [] []
2: JS_NAME@210..214
0: IDENT@210..214 "name" [] []
2: SEMICOLON@214..216 ";" [] [Whitespace(" ")]
3: R_CURLY@216..217 "}" [] []
4: JS_SETTER_CLASS_MEMBER@217..268
0: JS_METHOD_MODIFIER_LIST@217..229
0: TS_ACCESSIBILITY_MODIFIER@217..229
0: PUBLIC_KW@217..229 "public" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: SET_KW@229..233 "set" [] [Whitespace(" ")]
2: JS_LITERAL_MEMBER_NAME@233..240
0: IDENT@233..240 "my_name" [] []
3: L_PAREN@240..241 "(" [] []
4: JS_FORMAL_PARAMETER@241..245
0: JS_DECORATOR_LIST@241..241
1: JS_IDENTIFIER_BINDING@241..245
0: IDENT@241..245 "name" [] []
2: (empty)
3: (empty)
4: (empty)
5: R_PAREN@245..247 ")" [] [Whitespace(" ")]
6: JS_FUNCTION_BODY@247..268
0: L_CURLY@247..249 "{" [] [Whitespace(" ")]
1: JS_DIRECTIVE_LIST@249..249
2: JS_STATEMENT_LIST@249..267
0: JS_EXPRESSION_STATEMENT@249..267
0: JS_ASSIGNMENT_EXPRESSION@249..265
0: JS_STATIC_MEMBER_ASSIGNMENT@249..259
0: JS_THIS_EXPRESSION@249..253
0: THIS_KW@249..253 "this" [] []
1: DOT@253..254 "." [] []
2: JS_NAME@254..259
0: IDENT@254..259 "name" [] [Whitespace(" ")]
1: EQ@259..261 "=" [] [Whitespace(" ")]
2: JS_IDENTIFIER_EXPRESSION@261..265
0: JS_REFERENCE_IDENTIFIER@261..265
0: IDENT@261..265 "name" [] []
1: SEMICOLON@265..267 ";" [] [Whitespace(" ")]
3: R_CURLY@267..268 "}" [] []
5: JS_METHOD_CLASS_MEMBER@268..294
0: JS_METHOD_MODIFIER_LIST@268..268
1: (empty)
2: (empty)
3: JS_PRIVATE_CLASS_MEMBER_NAME@268..288
0: HASH@268..274 "#" [Newline("\n"), Whitespace(" ")] []
1: IDENT@274..288 "private_method" [] []
4: (empty)
5: (empty)
6: JS_PARAMETERS@288..291
0: L_PAREN@288..289 "(" [] []
1: JS_PARAMETER_LIST@289..289
2: R_PAREN@289..291 ")" [] [Whitespace(" ")]
7: (empty)
8: JS_FUNCTION_BODY@291..294
0: L_CURLY@291..293 "{" [] [Whitespace(" ")]
1: JS_DIRECTIVE_LIST@293..293
2: JS_STATEMENT_LIST@293..293
3: R_CURLY@293..294 "}" [] []
9: R_CURLY@294..296 "}" [Newline("\n")] []
2: JS_CLASS_DECLARATION@296..441
0: JS_DECORATOR_LIST@296..296
1: ABSTRACT_KW@296..306 "abstract" [Newline("\n")] [Whitespace(" ")]
2: CLASS_KW@306..312 "class" [] [Whitespace(" ")]
3: JS_IDENTIFIER_BINDING@312..328
0: IDENT@312..328 "AbstractMembers" [] [Whitespace(" ")]
4: (empty)
5: (empty)
6: (empty)
7: L_CURLY@328..329 "{" [] []
8: JS_CLASS_MEMBER_LIST@329..439
0: TS_PROPERTY_SIGNATURE_CLASS_MEMBER@329..356
0: TS_PROPERTY_SIGNATURE_MODIFIER_LIST@329..343
0: TS_ABSTRACT_MODIFIER@329..343
0: ABSTRACT_KW@329..343 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: JS_LITERAL_MEMBER_NAME@343..347
0: IDENT@343..347 "name" [] []
2: TS_TYPE_ANNOTATION@347..355
0: COLON@347..349 ":" [] [Whitespace(" ")]
1: TS_STRING_TYPE@349..355
0: STRING_KW@349..355 "string" [] []
3: SEMICOLON@355..356 ";" [] []
1: TS_METHOD_SIGNATURE_CLASS_MEMBER@356..380
0: TS_METHOD_SIGNATURE_MODIFIER_LIST@356..370
0: TS_ABSTRACT_MODIFIER@356..370
0: ABSTRACT_KW@356..370 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: (empty)
2: JS_LITERAL_MEMBER_NAME@370..377
0: IDENT@370..377 "display" [] []
3: (empty)
4: (empty)
5: JS_PARAMETERS@377..379
0: L_PAREN@377..378 "(" [] []
1: JS_PARAMETER_LIST@378..378
2: R_PAREN@378..379 ")" [] []
6: (empty)
7: SEMICOLON@379..380 ";" [] []
2: TS_GETTER_SIGNATURE_CLASS_MEMBER@380..408
0: TS_METHOD_SIGNATURE_MODIFIER_LIST@380..394
0: TS_ABSTRACT_MODIFIER@380..394
0: ABSTRACT_KW@380..394 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: GET_KW@394..398 "get" [] [Whitespace(" ")]
2: JS_LITERAL_MEMBER_NAME@398..405
0: IDENT@398..405 "my_name" [] []
3: L_PAREN@405..406 "(" [] []
4: R_PAREN@406..407 ")" [] []
5: (empty)
6: SEMICOLON@407..408 ";" [] []
3: TS_SETTER_SIGNATURE_CLASS_MEMBER@408..439
0: TS_METHOD_SIGNATURE_MODIFIER_LIST@408..422
0: TS_ABSTRACT_MODIFIER@408..422
0: ABSTRACT_KW@408..422 "abstract" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")]
1: SET_KW@422..426 "set" [] [Whitespace(" ")]
2: JS_LITERAL_MEMBER_NAME@426..433
0: IDENT@426..433 "my_name" [] []
3: L_PAREN@433..434 "(" [] []
4: JS_FORMAL_PARAMETER@434..437
0: JS_DECORATOR_LIST@434..434
1: JS_IDENTIFIER_BINDING@434..437
0: IDENT@434..437 "val" [] []
2: (empty)
3: (empty)
4: (empty)
5: R_PAREN@437..438 ")" [] []
6: SEMICOLON@438..439 ";" [] []
9: R_CURLY@439..441 "}" [Newline("\n")] []
4: EOF@441..442 "" [Newline("\n")] []