JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsForStatement { for_token: FOR_KW@0..4 "for" [] [Whitespace(" ")], l_paren_token: L_PAREN@4..5 "(" [] [], initializer: JsObjectExpression { l_curly_token: L_CURLY@5..7 "{" [] [Whitespace(" ")], members: JsObjectMemberList [ JsPropertyObjectMember { name: JsLiteralMemberName { value: IDENT@7..8 "a" [] [], }, colon_token: COLON@8..10 ":" [] [Whitespace(" ")], value: JsInExpression { property: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@10..14 "\"x\"" [] [Whitespace(" ")], }, in_token: IN_KW@14..17 "in" [] [Whitespace(" ")], object: JsObjectExpression { l_curly_token: L_CURLY@17..18 "{" [] [], members: JsObjectMemberList [], r_curly_token: R_CURLY@18..20 "}" [] [Whitespace(" ")], }, }, }, ], r_curly_token: R_CURLY@20..21 "}" [] [], }, first_semi_token: SEMICOLON@21..22 ";" [] [], test: missing (optional), second_semi_token: SEMICOLON@22..23 ";" [] [], update: missing (optional), r_paren_token: R_PAREN@23..25 ")" [] [Whitespace(" ")], body: JsBlockStatement { l_curly_token: L_CURLY@25..26 "{" [] [], statements: JsStatementList [], r_curly_token: R_CURLY@26..27 "}" [] [], }, }, ], eof_token: EOF@27..28 "" [Newline("\n")] [], } 0: JS_MODULE@0..28 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..27 0: JS_FOR_STATEMENT@0..27 0: FOR_KW@0..4 "for" [] [Whitespace(" ")] 1: L_PAREN@4..5 "(" [] [] 2: JS_OBJECT_EXPRESSION@5..21 0: L_CURLY@5..7 "{" [] [Whitespace(" ")] 1: JS_OBJECT_MEMBER_LIST@7..20 0: JS_PROPERTY_OBJECT_MEMBER@7..20 0: JS_LITERAL_MEMBER_NAME@7..8 0: IDENT@7..8 "a" [] [] 1: COLON@8..10 ":" [] [Whitespace(" ")] 2: JS_IN_EXPRESSION@10..20 0: JS_STRING_LITERAL_EXPRESSION@10..14 0: JS_STRING_LITERAL@10..14 "\"x\"" [] [Whitespace(" ")] 1: IN_KW@14..17 "in" [] [Whitespace(" ")] 2: JS_OBJECT_EXPRESSION@17..20 0: L_CURLY@17..18 "{" [] [] 1: JS_OBJECT_MEMBER_LIST@18..18 2: R_CURLY@18..20 "}" [] [Whitespace(" ")] 2: R_CURLY@20..21 "}" [] [] 3: SEMICOLON@21..22 ";" [] [] 4: (empty) 5: SEMICOLON@22..23 ";" [] [] 6: (empty) 7: R_PAREN@23..25 ")" [] [Whitespace(" ")] 8: JS_BLOCK_STATEMENT@25..27 0: L_CURLY@25..26 "{" [] [] 1: JS_STATEMENT_LIST@26..26 2: R_CURLY@26..27 "}" [] [] 4: EOF@27..28 "" [Newline("\n")] []