JsModule {
bom_token: missing (optional),
interpreter_token: missing (optional),
directives: JsDirectiveList [],
items: JsModuleItemList [
JsExpressionStatement {
expression: JsxTagExpression {
tag: JsxElement {
opening_element: JsxOpeningElement {
l_angle_token: L_ANGLE@0..1 "<" [] [],
name: JsxName {
value_token: JSX_IDENT@1..5 "test" [] [],
},
type_arguments: missing (optional),
attributes: JsxAttributeList [],
r_angle_token: R_ANGLE@5..6 ">" [] [],
},
children: JsxChildList [
JsxText {
value_token: JSX_TEXT_LITERAL@6..9 "\n " [] [],
},
JsxExpressionChild {
l_curly_token: L_CURLY@9..11 "{" [] [Whitespace(" ")],
expression: JsBinaryExpression {
left: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@11..13 "5" [] [Whitespace(" ")],
},
operator_token: PLUS@13..15 "+" [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@15..16 "3" [] [],
},
},
r_curly_token: missing (required),
},
JsxText {
value_token: JSX_TEXT_LITERAL@16..29 "some text\n" [Newline("\n"), Whitespace(" ")] [],
},
],
closing_element: JsxClosingElement {
l_angle_token: L_ANGLE@29..30 "<" [] [],
slash_token: SLASH@30..31 "/" [] [],
name: JsxName {
value_token: JSX_IDENT@31..35 "test" [] [],
},
r_angle_token: R_ANGLE@35..36 ">" [] [],
},
},
},
semicolon_token: missing (optional),
},
],
eof_token: EOF@36..37 "" [Newline("\n")] [],
}
0: JS_MODULE@0..37
0: (empty)
1: (empty)
2: JS_DIRECTIVE_LIST@0..0
3: JS_MODULE_ITEM_LIST@0..36
0: JS_EXPRESSION_STATEMENT@0..36
0: JSX_TAG_EXPRESSION@0..36
0: JSX_ELEMENT@0..36
0: JSX_OPENING_ELEMENT@0..6
0: L_ANGLE@0..1 "<" [] []
1: JSX_NAME@1..5
0: JSX_IDENT@1..5 "test" [] []
2: (empty)
3: JSX_ATTRIBUTE_LIST@5..5
4: R_ANGLE@5..6 ">" [] []
1: JSX_CHILD_LIST@6..29
0: JSX_TEXT@6..9
0: JSX_TEXT_LITERAL@6..9 "\n " [] []
1: JSX_EXPRESSION_CHILD@9..16
0: L_CURLY@9..11 "{" [] [Whitespace(" ")]
1: JS_BINARY_EXPRESSION@11..16
0: JS_NUMBER_LITERAL_EXPRESSION@11..13
0: JS_NUMBER_LITERAL@11..13 "5" [] [Whitespace(" ")]
1: PLUS@13..15 "+" [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@15..16
0: JS_NUMBER_LITERAL@15..16 "3" [] []
2: (empty)
2: JSX_TEXT@16..29
0: JSX_TEXT_LITERAL@16..29 "some text\n" [Newline("\n"), Whitespace(" ")] []
2: JSX_CLOSING_ELEMENT@29..36
0: L_ANGLE@29..30 "<" [] []
1: SLASH@30..31 "/" [] []
2: JSX_NAME@31..35
0: JSX_IDENT@31..35 "test" [] []
3: R_ANGLE@35..36 ">" [] []
1: (empty)
4: EOF@36..37 "" [Newline("\n")] []
--
jsx_children_expression_missing_r_curly.jsx:3:3 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× expected `}` but instead found `some`
1 │
2 │ { 5 + 3
> 3 │ some text
│ ^^^^
4 │
5 │
i Remove some
--
{ 5 + 3
some text