JsScript { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], statements: JsStatementList [ JsExpressionStatement { expression: JsIdentifierExpression { name: JsReferenceIdentifier { value_token: IDENT@0..13 "foo" [Comments("// SCRIPT"), Newline("\n")] [], }, }, semicolon_token: SEMICOLON@13..14 ";" [] [], }, JsExpressionStatement { expression: JsIdentifierExpression { name: JsReferenceIdentifier { value_token: IDENT@14..20 "yield" [Newline("\n")] [], }, }, semicolon_token: SEMICOLON@20..21 ";" [] [], }, JsExpressionStatement { expression: JsIdentifierExpression { name: JsReferenceIdentifier { value_token: IDENT@21..27 "await" [Newline("\n")] [], }, }, semicolon_token: SEMICOLON@27..28 ";" [] [], }, ], eof_token: EOF@28..29 "" [Newline("\n")] [], } 0: JS_SCRIPT@0..29 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_STATEMENT_LIST@0..28 0: JS_EXPRESSION_STATEMENT@0..14 0: JS_IDENTIFIER_EXPRESSION@0..13 0: JS_REFERENCE_IDENTIFIER@0..13 0: IDENT@0..13 "foo" [Comments("// SCRIPT"), Newline("\n")] [] 1: SEMICOLON@13..14 ";" [] [] 1: JS_EXPRESSION_STATEMENT@14..21 0: JS_IDENTIFIER_EXPRESSION@14..20 0: JS_REFERENCE_IDENTIFIER@14..20 0: IDENT@14..20 "yield" [Newline("\n")] [] 1: SEMICOLON@20..21 ";" [] [] 2: JS_EXPRESSION_STATEMENT@21..28 0: JS_IDENTIFIER_EXPRESSION@21..27 0: JS_REFERENCE_IDENTIFIER@21..27 0: IDENT@21..27 "await" [Newline("\n")] [] 1: SEMICOLON@27..28 ";" [] [] 4: EOF@28..29 "" [Newline("\n")] []