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..6 "{" [] [], members: JsObjectMemberList [ JsPropertyObjectMember { name: JsComputedMemberName { l_brack_token: L_BRACK@6..7 "[" [] [], expression: JsInExpression { property: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@7..11 "\"x\"" [] [Whitespace(" ")], }, in_token: IN_KW@11..14 "in" [] [Whitespace(" ")], object: JsObjectExpression { l_curly_token: L_CURLY@14..15 "{" [] [], members: JsObjectMemberList [], r_curly_token: R_CURLY@15..16 "}" [] [], }, }, r_brack_token: R_BRACK@16..17 "]" [] [], }, colon_token: COLON@17..19 ":" [] [Whitespace(" ")], value: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@19..20 "3" [] [], }, }, ], r_curly_token: R_CURLY@20..22 "}" [] [Whitespace(" ")], }, first_semi_token: SEMICOLON@22..23 ";" [] [], test: missing (optional), second_semi_token: SEMICOLON@23..24 ";" [] [], update: missing (optional), r_paren_token: R_PAREN@24..26 ")" [] [Whitespace(" ")], body: JsBlockStatement { l_curly_token: L_CURLY@26..27 "{" [] [], statements: JsStatementList [], r_curly_token: R_CURLY@27..28 "}" [] [], }, }, ], eof_token: EOF@28..29 "" [Newline("\n")] [], } 0: JS_MODULE@0..29 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..28 0: JS_FOR_STATEMENT@0..28 0: FOR_KW@0..4 "for" [] [Whitespace(" ")] 1: L_PAREN@4..5 "(" [] [] 2: JS_OBJECT_EXPRESSION@5..22 0: L_CURLY@5..6 "{" [] [] 1: JS_OBJECT_MEMBER_LIST@6..20 0: JS_PROPERTY_OBJECT_MEMBER@6..20 0: JS_COMPUTED_MEMBER_NAME@6..17 0: L_BRACK@6..7 "[" [] [] 1: JS_IN_EXPRESSION@7..16 0: JS_STRING_LITERAL_EXPRESSION@7..11 0: JS_STRING_LITERAL@7..11 "\"x\"" [] [Whitespace(" ")] 1: IN_KW@11..14 "in" [] [Whitespace(" ")] 2: JS_OBJECT_EXPRESSION@14..16 0: L_CURLY@14..15 "{" [] [] 1: JS_OBJECT_MEMBER_LIST@15..15 2: R_CURLY@15..16 "}" [] [] 2: R_BRACK@16..17 "]" [] [] 1: COLON@17..19 ":" [] [Whitespace(" ")] 2: JS_NUMBER_LITERAL_EXPRESSION@19..20 0: JS_NUMBER_LITERAL@19..20 "3" [] [] 2: R_CURLY@20..22 "}" [] [Whitespace(" ")] 3: SEMICOLON@22..23 ";" [] [] 4: (empty) 5: SEMICOLON@23..24 ";" [] [] 6: (empty) 7: R_PAREN@24..26 ")" [] [Whitespace(" ")] 8: JS_BLOCK_STATEMENT@26..28 0: L_CURLY@26..27 "{" [] [] 1: JS_STATEMENT_LIST@27..27 2: R_CURLY@27..28 "}" [] [] 4: EOF@28..29 "" [Newline("\n")] []