JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsExpressionStatement { expression: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@0..1 "5" [] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsBooleanLiteralExpression { value_token: TRUE_KW@1..6 "true" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsBooleanLiteralExpression { value_token: FALSE_KW@6..12 "false" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsBigintLiteralExpression { value_token: JS_BIGINT_LITERAL@12..15 "5n" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@15..21 "\"foo\"" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@21..27 "'bar'" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsNullLiteralExpression { value_token: NULL_KW@27..32 "null" [Newline("\n")] [], }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsSequenceExpression { left: JsSequenceExpression { left: JsSequenceExpression { left: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@32..34 "0" [Newline("\n")] [], }, comma_token: COMMA@34..36 "," [] [Whitespace(" ")], right: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@36..39 "0.0" [] [], }, }, comma_token: COMMA@39..41 "," [] [Whitespace(" ")], right: JsBigintLiteralExpression { value_token: JS_BIGINT_LITERAL@41..43 "0n" [] [], }, }, comma_token: COMMA@43..45 "," [] [Whitespace(" ")], right: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@45..49 "0e00" [] [], }, }, semicolon_token: missing (optional), }, JsExpressionStatement { expression: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@49..66 "\"test\\\nnew-line\"" [Newline("\n")] [], }, semicolon_token: SEMICOLON@66..67 ";" [] [], }, JsExpressionStatement { expression: JsRegexLiteralExpression { value_token: JS_REGEX_LITERAL@67..103 "/^[يفمئامئ\u{200d}ئاسۆند]/i" [Newline("\n")] [], }, semicolon_token: SEMICOLON@103..125 ";" [] [Whitespace(" "), Comments("//regex with unicode")], }, JsExpressionStatement { expression: JsRegexLiteralExpression { value_token: JS_REGEX_LITERAL@125..150 "/[\\p{Control}--[\\t\\n]]/v" [Newline("\n")] [], }, semicolon_token: SEMICOLON@150..151 ";" [] [], }, JsExpressionStatement { expression: JsRegexLiteralExpression { value_token: JS_REGEX_LITERAL@151..158 "/\\’/" [Newline("\n")] [], }, semicolon_token: SEMICOLON@158..211 ";" [] [Whitespace(" "), Comments("// regex with escaped ...")], }, ], eof_token: EOF@211..212 "" [Newline("\n")] [], } 0: JS_MODULE@0..212 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..211 0: JS_EXPRESSION_STATEMENT@0..1 0: JS_NUMBER_LITERAL_EXPRESSION@0..1 0: JS_NUMBER_LITERAL@0..1 "5" [] [] 1: (empty) 1: JS_EXPRESSION_STATEMENT@1..6 0: JS_BOOLEAN_LITERAL_EXPRESSION@1..6 0: TRUE_KW@1..6 "true" [Newline("\n")] [] 1: (empty) 2: JS_EXPRESSION_STATEMENT@6..12 0: JS_BOOLEAN_LITERAL_EXPRESSION@6..12 0: FALSE_KW@6..12 "false" [Newline("\n")] [] 1: (empty) 3: JS_EXPRESSION_STATEMENT@12..15 0: JS_BIGINT_LITERAL_EXPRESSION@12..15 0: JS_BIGINT_LITERAL@12..15 "5n" [Newline("\n")] [] 1: (empty) 4: JS_EXPRESSION_STATEMENT@15..21 0: JS_STRING_LITERAL_EXPRESSION@15..21 0: JS_STRING_LITERAL@15..21 "\"foo\"" [Newline("\n")] [] 1: (empty) 5: JS_EXPRESSION_STATEMENT@21..27 0: JS_STRING_LITERAL_EXPRESSION@21..27 0: JS_STRING_LITERAL@21..27 "'bar'" [Newline("\n")] [] 1: (empty) 6: JS_EXPRESSION_STATEMENT@27..32 0: JS_NULL_LITERAL_EXPRESSION@27..32 0: NULL_KW@27..32 "null" [Newline("\n")] [] 1: (empty) 7: JS_EXPRESSION_STATEMENT@32..49 0: JS_SEQUENCE_EXPRESSION@32..49 0: JS_SEQUENCE_EXPRESSION@32..43 0: JS_SEQUENCE_EXPRESSION@32..39 0: JS_NUMBER_LITERAL_EXPRESSION@32..34 0: JS_NUMBER_LITERAL@32..34 "0" [Newline("\n")] [] 1: COMMA@34..36 "," [] [Whitespace(" ")] 2: JS_NUMBER_LITERAL_EXPRESSION@36..39 0: JS_NUMBER_LITERAL@36..39 "0.0" [] [] 1: COMMA@39..41 "," [] [Whitespace(" ")] 2: JS_BIGINT_LITERAL_EXPRESSION@41..43 0: JS_BIGINT_LITERAL@41..43 "0n" [] [] 1: COMMA@43..45 "," [] [Whitespace(" ")] 2: JS_NUMBER_LITERAL_EXPRESSION@45..49 0: JS_NUMBER_LITERAL@45..49 "0e00" [] [] 1: (empty) 8: JS_EXPRESSION_STATEMENT@49..67 0: JS_STRING_LITERAL_EXPRESSION@49..66 0: JS_STRING_LITERAL@49..66 "\"test\\\nnew-line\"" [Newline("\n")] [] 1: SEMICOLON@66..67 ";" [] [] 9: JS_EXPRESSION_STATEMENT@67..125 0: JS_REGEX_LITERAL_EXPRESSION@67..103 0: JS_REGEX_LITERAL@67..103 "/^[يفمئامئ\u{200d}ئاسۆند]/i" [Newline("\n")] [] 1: SEMICOLON@103..125 ";" [] [Whitespace(" "), Comments("//regex with unicode")] 10: JS_EXPRESSION_STATEMENT@125..151 0: JS_REGEX_LITERAL_EXPRESSION@125..150 0: JS_REGEX_LITERAL@125..150 "/[\\p{Control}--[\\t\\n]]/v" [Newline("\n")] [] 1: SEMICOLON@150..151 ";" [] [] 11: JS_EXPRESSION_STATEMENT@151..211 0: JS_REGEX_LITERAL_EXPRESSION@151..158 0: JS_REGEX_LITERAL@151..158 "/\\’/" [Newline("\n")] [] 1: SEMICOLON@158..211 ";" [] [Whitespace(" "), Comments("// regex with escaped ...")] 4: EOF@211..212 "" [Newline("\n")] []