biome_js_parser 0.5.7

Biome's JavaScript parser
Documentation
JsModule {
    bom_token: missing (optional),
    interpreter_token: missing (optional),
    directives: JsDirectiveList [],
    items: JsModuleItemList [
        JsExport {
            decorators: JsDecoratorList [],
            export_token: EXPORT_KW@0..7 "export" [] [Whitespace(" ")],
            export_clause: JsFunctionDeclaration {
                async_token: missing (optional),
                function_token: FUNCTION_KW@7..16 "function" [] [Whitespace(" ")],
                star_token: missing (optional),
                id: JsIdentifierBinding {
                    name_token: IDENT@16..20 "test" [] [],
                },
                type_parameters: missing (optional),
                parameters: JsParameters {
                    l_paren_token: L_PAREN@20..21 "(" [] [],
                    items: JsParameterList [
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@21..22 "a" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                        COMMA@22..24 "," [] [Whitespace(" ")],
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@24..25 "b" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                    ],
                    r_paren_token: R_PAREN@25..27 ")" [] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@27..28 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@28..29 "}" [] [],
                },
            },
        },
        JsExport {
            decorators: JsDecoratorList [],
            export_token: EXPORT_KW@29..37 "export" [Newline("\n")] [Whitespace(" ")],
            export_clause: JsFunctionDeclaration {
                async_token: missing (optional),
                function_token: FUNCTION_KW@37..45 "function" [] [],
                star_token: STAR@45..47 "*" [] [Whitespace(" ")],
                id: JsIdentifierBinding {
                    name_token: IDENT@47..52 "test2" [] [],
                },
                type_parameters: missing (optional),
                parameters: JsParameters {
                    l_paren_token: L_PAREN@52..53 "(" [] [],
                    items: JsParameterList [
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@53..54 "a" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                        COMMA@54..56 "," [] [Whitespace(" ")],
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@56..57 "b" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                    ],
                    r_paren_token: R_PAREN@57..59 ")" [] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@59..60 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@60..61 "}" [] [],
                },
            },
        },
        JsExport {
            decorators: JsDecoratorList [],
            export_token: EXPORT_KW@61..69 "export" [Newline("\n")] [Whitespace(" ")],
            export_clause: JsFunctionDeclaration {
                async_token: ASYNC_KW@69..75 "async" [] [Whitespace(" ")],
                function_token: FUNCTION_KW@75..84 "function" [] [Whitespace(" ")],
                star_token: missing (optional),
                id: JsIdentifierBinding {
                    name_token: IDENT@84..89 "test3" [] [],
                },
                type_parameters: missing (optional),
                parameters: JsParameters {
                    l_paren_token: L_PAREN@89..90 "(" [] [],
                    items: JsParameterList [
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@90..91 "a" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                        COMMA@91..93 "," [] [Whitespace(" ")],
                        JsFormalParameter {
                            decorators: JsDecoratorList [],
                            binding: JsIdentifierBinding {
                                name_token: IDENT@93..94 "b" [] [],
                            },
                            question_mark_token: missing (optional),
                            type_annotation: missing (optional),
                            initializer: missing (optional),
                        },
                        COMMA@94..96 "," [] [Whitespace(" ")],
                    ],
                    r_paren_token: R_PAREN@96..98 ")" [] [Whitespace(" ")],
                },
                return_type_annotation: missing (optional),
                body: JsFunctionBody {
                    l_curly_token: L_CURLY@98..99 "{" [] [],
                    directives: JsDirectiveList [],
                    statements: JsStatementList [],
                    r_curly_token: R_CURLY@99..100 "}" [] [],
                },
            },
        },
    ],
    eof_token: EOF@100..101 "" [Newline("\n")] [],
}

0: JS_MODULE@0..101
  0: (empty)
  1: (empty)
  2: JS_DIRECTIVE_LIST@0..0
  3: JS_MODULE_ITEM_LIST@0..100
    0: JS_EXPORT@0..29
      0: JS_DECORATOR_LIST@0..0
      1: EXPORT_KW@0..7 "export" [] [Whitespace(" ")]
      2: JS_FUNCTION_DECLARATION@7..29
        0: (empty)
        1: FUNCTION_KW@7..16 "function" [] [Whitespace(" ")]
        2: (empty)
        3: JS_IDENTIFIER_BINDING@16..20
          0: IDENT@16..20 "test" [] []
        4: (empty)
        5: JS_PARAMETERS@20..27
          0: L_PAREN@20..21 "(" [] []
          1: JS_PARAMETER_LIST@21..25
            0: JS_FORMAL_PARAMETER@21..22
              0: JS_DECORATOR_LIST@21..21
              1: JS_IDENTIFIER_BINDING@21..22
                0: IDENT@21..22 "a" [] []
              2: (empty)
              3: (empty)
              4: (empty)
            1: COMMA@22..24 "," [] [Whitespace(" ")]
            2: JS_FORMAL_PARAMETER@24..25
              0: JS_DECORATOR_LIST@24..24
              1: JS_IDENTIFIER_BINDING@24..25
                0: IDENT@24..25 "b" [] []
              2: (empty)
              3: (empty)
              4: (empty)
          2: R_PAREN@25..27 ")" [] [Whitespace(" ")]
        6: (empty)
        7: JS_FUNCTION_BODY@27..29
          0: L_CURLY@27..28 "{" [] []
          1: JS_DIRECTIVE_LIST@28..28
          2: JS_STATEMENT_LIST@28..28
          3: R_CURLY@28..29 "}" [] []
    1: JS_EXPORT@29..61
      0: JS_DECORATOR_LIST@29..29
      1: EXPORT_KW@29..37 "export" [Newline("\n")] [Whitespace(" ")]
      2: JS_FUNCTION_DECLARATION@37..61
        0: (empty)
        1: FUNCTION_KW@37..45 "function" [] []
        2: STAR@45..47 "*" [] [Whitespace(" ")]
        3: JS_IDENTIFIER_BINDING@47..52
          0: IDENT@47..52 "test2" [] []
        4: (empty)
        5: JS_PARAMETERS@52..59
          0: L_PAREN@52..53 "(" [] []
          1: JS_PARAMETER_LIST@53..57
            0: JS_FORMAL_PARAMETER@53..54
              0: JS_DECORATOR_LIST@53..53
              1: JS_IDENTIFIER_BINDING@53..54
                0: IDENT@53..54 "a" [] []
              2: (empty)
              3: (empty)
              4: (empty)
            1: COMMA@54..56 "," [] [Whitespace(" ")]
            2: JS_FORMAL_PARAMETER@56..57
              0: JS_DECORATOR_LIST@56..56
              1: JS_IDENTIFIER_BINDING@56..57
                0: IDENT@56..57 "b" [] []
              2: (empty)
              3: (empty)
              4: (empty)
          2: R_PAREN@57..59 ")" [] [Whitespace(" ")]
        6: (empty)
        7: JS_FUNCTION_BODY@59..61
          0: L_CURLY@59..60 "{" [] []
          1: JS_DIRECTIVE_LIST@60..60
          2: JS_STATEMENT_LIST@60..60
          3: R_CURLY@60..61 "}" [] []
    2: JS_EXPORT@61..100
      0: JS_DECORATOR_LIST@61..61
      1: EXPORT_KW@61..69 "export" [Newline("\n")] [Whitespace(" ")]
      2: JS_FUNCTION_DECLARATION@69..100
        0: ASYNC_KW@69..75 "async" [] [Whitespace(" ")]
        1: FUNCTION_KW@75..84 "function" [] [Whitespace(" ")]
        2: (empty)
        3: JS_IDENTIFIER_BINDING@84..89
          0: IDENT@84..89 "test3" [] []
        4: (empty)
        5: JS_PARAMETERS@89..98
          0: L_PAREN@89..90 "(" [] []
          1: JS_PARAMETER_LIST@90..96
            0: JS_FORMAL_PARAMETER@90..91
              0: JS_DECORATOR_LIST@90..90
              1: JS_IDENTIFIER_BINDING@90..91
                0: IDENT@90..91 "a" [] []
              2: (empty)
              3: (empty)
              4: (empty)
            1: COMMA@91..93 "," [] [Whitespace(" ")]
            2: JS_FORMAL_PARAMETER@93..94
              0: JS_DECORATOR_LIST@93..93
              1: JS_IDENTIFIER_BINDING@93..94
                0: IDENT@93..94 "b" [] []
              2: (empty)
              3: (empty)
              4: (empty)
            3: COMMA@94..96 "," [] [Whitespace(" ")]
          2: R_PAREN@96..98 ")" [] [Whitespace(" ")]
        6: (empty)
        7: JS_FUNCTION_BODY@98..100
          0: L_CURLY@98..99 "{" [] []
          1: JS_DIRECTIVE_LIST@99..99
          2: JS_STATEMENT_LIST@99..99
          3: R_CURLY@99..100 "}" [] []
  4: EOF@100..101 "" [Newline("\n")] []