JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsThrowStatement { throw_token: THROW_KW@0..6 "throw" [] [Whitespace(" ")], argument: JsNewExpression { new_token: NEW_KW@6..10 "new" [] [Whitespace(" ")], callee: JsIdentifierExpression { name: JsReferenceIdentifier { value_token: IDENT@10..15 "Error" [] [], }, }, type_arguments: missing (optional), arguments: JsCallArguments { l_paren_token: L_PAREN@15..16 "(" [] [], args: JsCallArgumentList [ JsStringLiteralExpression { value_token: JS_STRING_LITERAL@16..21 "\"foo\"" [] [], }, ], r_paren_token: R_PAREN@21..22 ")" [] [], }, }, semicolon_token: SEMICOLON@22..23 ";" [] [], }, JsThrowStatement { throw_token: THROW_KW@23..30 "throw" [Newline("\n")] [Whitespace(" ")], argument: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@30..35 "\"foo\"" [] [], }, semicolon_token: missing (optional), }, ], eof_token: EOF@35..36 "" [Newline("\n")] [], } 0: JS_MODULE@0..36 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..35 0: JS_THROW_STATEMENT@0..23 0: THROW_KW@0..6 "throw" [] [Whitespace(" ")] 1: JS_NEW_EXPRESSION@6..22 0: NEW_KW@6..10 "new" [] [Whitespace(" ")] 1: JS_IDENTIFIER_EXPRESSION@10..15 0: JS_REFERENCE_IDENTIFIER@10..15 0: IDENT@10..15 "Error" [] [] 2: (empty) 3: JS_CALL_ARGUMENTS@15..22 0: L_PAREN@15..16 "(" [] [] 1: JS_CALL_ARGUMENT_LIST@16..21 0: JS_STRING_LITERAL_EXPRESSION@16..21 0: JS_STRING_LITERAL@16..21 "\"foo\"" [] [] 2: R_PAREN@21..22 ")" [] [] 2: SEMICOLON@22..23 ";" [] [] 1: JS_THROW_STATEMENT@23..35 0: THROW_KW@23..30 "throw" [Newline("\n")] [Whitespace(" ")] 1: JS_STRING_LITERAL_EXPRESSION@30..35 0: JS_STRING_LITERAL@30..35 "\"foo\"" [] [] 2: (empty) 4: EOF@35..36 "" [Newline("\n")] []