biome_js_parser 0.5.7

Biome's JavaScript parser
Documentation
JsScript {
    bom_token: missing (optional),
    interpreter_token: missing (optional),
    directives: JsDirectiveList [],
    statements: JsStatementList [
        JsExpressionStatement {
            expression: JsArrowFunctionExpression {
                async_token: missing (optional),
                type_parameters: missing (optional),
                parameters: JsIdentifierBinding {
                    name_token: IDENT@0..14 "foo" [Comments("// SCRIPT"), Newline("\n")] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                fat_arrow_token: FAT_ARROW@14..17 "=>" [] [Whitespace(" ")],
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@17..18 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@18..19 "}" [] [],
                },
            },
            semicolon_token: missing (optional),
        },
        JsExpressionStatement {
            expression: JsArrowFunctionExpression {
                async_token: missing (optional),
                type_parameters: missing (optional),
                parameters: JsIdentifierBinding {
                    name_token: IDENT@19..26 "yield" [Newline("\n")] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                fat_arrow_token: FAT_ARROW@26..29 "=>" [] [Whitespace(" ")],
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@29..30 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@30..31 "}" [] [],
                },
            },
            semicolon_token: missing (optional),
        },
        JsExpressionStatement {
            expression: JsArrowFunctionExpression {
                async_token: missing (optional),
                type_parameters: missing (optional),
                parameters: JsIdentifierBinding {
                    name_token: IDENT@31..38 "await" [Newline("\n")] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                fat_arrow_token: FAT_ARROW@38..41 "=>" [] [Whitespace(" ")],
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@41..42 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@42..43 "}" [] [],
                },
            },
            semicolon_token: missing (optional),
        },
        JsExpressionStatement {
            expression: JsArrowFunctionExpression {
                async_token: missing (optional),
                type_parameters: missing (optional),
                parameters: JsIdentifierBinding {
                    name_token: IDENT@43..48 "baz" [Newline("\n")] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                fat_arrow_token: FAT_ARROW@48..50 "=>" [] [],
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@50..52 "{" [Newline("\n")] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@52..53 "}" [] [],
                },
            },
            semicolon_token: missing (optional),
        },
    ],
    eof_token: EOF@53..54 "" [Newline("\n")] [],
}

0: JS_SCRIPT@0..54
  0: (empty)
  1: (empty)
  2: JS_DIRECTIVE_LIST@0..0
  3: JS_STATEMENT_LIST@0..53
    0: JS_EXPRESSION_STATEMENT@0..19
      0: JS_ARROW_FUNCTION_EXPRESSION@0..19
        0: (empty)
        1: (empty)
        2: JS_IDENTIFIER_BINDING@0..14
          0: IDENT@0..14 "foo" [Comments("// SCRIPT"), Newline("\n")] [Whitespace(" ")]
        3: (empty)
        4: FAT_ARROW@14..17 "=>" [] [Whitespace(" ")]
        5: JS_FUNCTION_BODY@17..19
          0: L_CURLY@17..18 "{" [] []
          1: JS_DIRECTIVE_LIST@18..18
          2: JS_STATEMENT_LIST@18..18
          3: R_CURLY@18..19 "}" [] []
      1: (empty)
    1: JS_EXPRESSION_STATEMENT@19..31
      0: JS_ARROW_FUNCTION_EXPRESSION@19..31
        0: (empty)
        1: (empty)
        2: JS_IDENTIFIER_BINDING@19..26
          0: IDENT@19..26 "yield" [Newline("\n")] [Whitespace(" ")]
        3: (empty)
        4: FAT_ARROW@26..29 "=>" [] [Whitespace(" ")]
        5: JS_FUNCTION_BODY@29..31
          0: L_CURLY@29..30 "{" [] []
          1: JS_DIRECTIVE_LIST@30..30
          2: JS_STATEMENT_LIST@30..30
          3: R_CURLY@30..31 "}" [] []
      1: (empty)
    2: JS_EXPRESSION_STATEMENT@31..43
      0: JS_ARROW_FUNCTION_EXPRESSION@31..43
        0: (empty)
        1: (empty)
        2: JS_IDENTIFIER_BINDING@31..38
          0: IDENT@31..38 "await" [Newline("\n")] [Whitespace(" ")]
        3: (empty)
        4: FAT_ARROW@38..41 "=>" [] [Whitespace(" ")]
        5: JS_FUNCTION_BODY@41..43
          0: L_CURLY@41..42 "{" [] []
          1: JS_DIRECTIVE_LIST@42..42
          2: JS_STATEMENT_LIST@42..42
          3: R_CURLY@42..43 "}" [] []
      1: (empty)
    3: JS_EXPRESSION_STATEMENT@43..53
      0: JS_ARROW_FUNCTION_EXPRESSION@43..53
        0: (empty)
        1: (empty)
        2: JS_IDENTIFIER_BINDING@43..48
          0: IDENT@43..48 "baz" [Newline("\n")] [Whitespace(" ")]
        3: (empty)
        4: FAT_ARROW@48..50 "=>" [] []
        5: JS_FUNCTION_BODY@50..53
          0: L_CURLY@50..52 "{" [Newline("\n")] []
          1: JS_DIRECTIVE_LIST@52..52
          2: JS_STATEMENT_LIST@52..52
          3: R_CURLY@52..53 "}" [] []
      1: (empty)
  4: EOF@53..54 "" [Newline("\n")] []