biome_js_parser 0.5.7

Biome's JavaScript parser
Documentation
JsModule {
    bom_token: missing (optional),
    interpreter_token: missing (optional),
    directives: JsDirectiveList [],
    items: JsModuleItemList [
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@0..1 "[" [] [],
                elements: JsArrayElementList [
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@1..4 "foo" [] [],
                        },
                    },
                    COMMA@4..6 "," [] [Whitespace(" ")],
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@6..9 "bar" [] [],
                        },
                    },
                ],
                r_brack_token: R_BRACK@9..10 "]" [] [],
            },
            semicolon_token: SEMICOLON@10..11 ";" [] [],
        },
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@11..13 "[" [Newline("\n")] [],
                elements: JsArrayElementList [
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@13..16 "foo" [] [],
                        },
                    },
                ],
                r_brack_token: R_BRACK@16..17 "]" [] [],
            },
            semicolon_token: SEMICOLON@17..18 ";" [] [],
        },
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@18..20 "[" [Newline("\n")] [],
                elements: JsArrayElementList [
                    JsArrayHole,
                    COMMA@20..21 "," [] [],
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@21..24 "foo" [] [],
                        },
                    },
                ],
                r_brack_token: R_BRACK@24..25 "]" [] [],
            },
            semicolon_token: SEMICOLON@25..26 ";" [] [],
        },
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@26..28 "[" [Newline("\n")] [],
                elements: JsArrayElementList [
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@28..31 "foo" [] [],
                        },
                    },
                    COMMA@31..32 "," [] [],
                ],
                r_brack_token: R_BRACK@32..33 "]" [] [],
            },
            semicolon_token: SEMICOLON@33..34 ";" [] [],
        },
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@34..36 "[" [Newline("\n")] [],
                elements: JsArrayElementList [
                    JsArrayHole,
                    COMMA@36..37 "," [] [],
                    JsArrayHole,
                    COMMA@37..38 "," [] [],
                    JsArrayHole,
                    COMMA@38..39 "," [] [],
                    JsArrayHole,
                    COMMA@39..40 "," [] [],
                    JsArrayHole,
                    COMMA@40..41 "," [] [],
                    JsIdentifierExpression {
                        name: JsReferenceIdentifier {
                            value_token: IDENT@41..44 "foo" [] [],
                        },
                    },
                    COMMA@44..45 "," [] [],
                    JsArrayHole,
                    COMMA@45..46 "," [] [],
                    JsArrayHole,
                    COMMA@46..47 "," [] [],
                    JsArrayHole,
                    COMMA@47..48 "," [] [],
                ],
                r_brack_token: R_BRACK@48..49 "]" [] [],
            },
            semicolon_token: SEMICOLON@49..50 ";" [] [],
        },
        JsExpressionStatement {
            expression: JsArrayExpression {
                l_brack_token: L_BRACK@50..52 "[" [Newline("\n")] [],
                elements: JsArrayElementList [
                    JsSpread {
                        dotdotdot_token: DOT3@52..55 "..." [] [],
                        argument: JsIdentifierExpression {
                            name: JsReferenceIdentifier {
                                value_token: IDENT@55..56 "a" [] [],
                            },
                        },
                    },
                    COMMA@56..58 "," [] [Whitespace(" ")],
                    JsSpread {
                        dotdotdot_token: DOT3@58..61 "..." [] [],
                        argument: JsIdentifierExpression {
                            name: JsReferenceIdentifier {
                                value_token: IDENT@61..62 "b" [] [],
                            },
                        },
                    },
                ],
                r_brack_token: R_BRACK@62..63 "]" [] [],
            },
            semicolon_token: SEMICOLON@63..64 ";" [] [],
        },
    ],
    eof_token: EOF@64..65 "" [Newline("\n")] [],
}

0: JS_MODULE@0..65
  0: (empty)
  1: (empty)
  2: JS_DIRECTIVE_LIST@0..0
  3: JS_MODULE_ITEM_LIST@0..64
    0: JS_EXPRESSION_STATEMENT@0..11
      0: JS_ARRAY_EXPRESSION@0..10
        0: L_BRACK@0..1 "[" [] []
        1: JS_ARRAY_ELEMENT_LIST@1..9
          0: JS_IDENTIFIER_EXPRESSION@1..4
            0: JS_REFERENCE_IDENTIFIER@1..4
              0: IDENT@1..4 "foo" [] []
          1: COMMA@4..6 "," [] [Whitespace(" ")]
          2: JS_IDENTIFIER_EXPRESSION@6..9
            0: JS_REFERENCE_IDENTIFIER@6..9
              0: IDENT@6..9 "bar" [] []
        2: R_BRACK@9..10 "]" [] []
      1: SEMICOLON@10..11 ";" [] []
    1: JS_EXPRESSION_STATEMENT@11..18
      0: JS_ARRAY_EXPRESSION@11..17
        0: L_BRACK@11..13 "[" [Newline("\n")] []
        1: JS_ARRAY_ELEMENT_LIST@13..16
          0: JS_IDENTIFIER_EXPRESSION@13..16
            0: JS_REFERENCE_IDENTIFIER@13..16
              0: IDENT@13..16 "foo" [] []
        2: R_BRACK@16..17 "]" [] []
      1: SEMICOLON@17..18 ";" [] []
    2: JS_EXPRESSION_STATEMENT@18..26
      0: JS_ARRAY_EXPRESSION@18..25
        0: L_BRACK@18..20 "[" [Newline("\n")] []
        1: JS_ARRAY_ELEMENT_LIST@20..24
          0: JS_ARRAY_HOLE@20..20
          1: COMMA@20..21 "," [] []
          2: JS_IDENTIFIER_EXPRESSION@21..24
            0: JS_REFERENCE_IDENTIFIER@21..24
              0: IDENT@21..24 "foo" [] []
        2: R_BRACK@24..25 "]" [] []
      1: SEMICOLON@25..26 ";" [] []
    3: JS_EXPRESSION_STATEMENT@26..34
      0: JS_ARRAY_EXPRESSION@26..33
        0: L_BRACK@26..28 "[" [Newline("\n")] []
        1: JS_ARRAY_ELEMENT_LIST@28..32
          0: JS_IDENTIFIER_EXPRESSION@28..31
            0: JS_REFERENCE_IDENTIFIER@28..31
              0: IDENT@28..31 "foo" [] []
          1: COMMA@31..32 "," [] []
        2: R_BRACK@32..33 "]" [] []
      1: SEMICOLON@33..34 ";" [] []
    4: JS_EXPRESSION_STATEMENT@34..50
      0: JS_ARRAY_EXPRESSION@34..49
        0: L_BRACK@34..36 "[" [Newline("\n")] []
        1: JS_ARRAY_ELEMENT_LIST@36..48
          0: JS_ARRAY_HOLE@36..36
          1: COMMA@36..37 "," [] []
          2: JS_ARRAY_HOLE@37..37
          3: COMMA@37..38 "," [] []
          4: JS_ARRAY_HOLE@38..38
          5: COMMA@38..39 "," [] []
          6: JS_ARRAY_HOLE@39..39
          7: COMMA@39..40 "," [] []
          8: JS_ARRAY_HOLE@40..40
          9: COMMA@40..41 "," [] []
          10: JS_IDENTIFIER_EXPRESSION@41..44
            0: JS_REFERENCE_IDENTIFIER@41..44
              0: IDENT@41..44 "foo" [] []
          11: COMMA@44..45 "," [] []
          12: JS_ARRAY_HOLE@45..45
          13: COMMA@45..46 "," [] []
          14: JS_ARRAY_HOLE@46..46
          15: COMMA@46..47 "," [] []
          16: JS_ARRAY_HOLE@47..47
          17: COMMA@47..48 "," [] []
        2: R_BRACK@48..49 "]" [] []
      1: SEMICOLON@49..50 ";" [] []
    5: JS_EXPRESSION_STATEMENT@50..64
      0: JS_ARRAY_EXPRESSION@50..63
        0: L_BRACK@50..52 "[" [Newline("\n")] []
        1: JS_ARRAY_ELEMENT_LIST@52..62
          0: JS_SPREAD@52..56
            0: DOT3@52..55 "..." [] []
            1: JS_IDENTIFIER_EXPRESSION@55..56
              0: JS_REFERENCE_IDENTIFIER@55..56
                0: IDENT@55..56 "a" [] []
          1: COMMA@56..58 "," [] [Whitespace(" ")]
          2: JS_SPREAD@58..62
            0: DOT3@58..61 "..." [] []
            1: JS_IDENTIFIER_EXPRESSION@61..62
              0: JS_REFERENCE_IDENTIFIER@61..62
                0: IDENT@61..62 "b" [] []
        2: R_BRACK@62..63 "]" [] []
      1: SEMICOLON@63..64 ";" [] []
  4: EOF@64..65 "" [Newline("\n")] []