rslint_parser 0.3.1

An extremely fast ECMAScript parser made for the rslint project
Documentation
MODULE@0..48
  CLASS_DECL@0..46
    CLASS_KW@0..5 "class"
    WHITESPACE@5..6 " "
    CLASS_BODY@6..46
      L_CURLY@6..7 "{"
      WHITESPACE@7..10 "\n  "
      CLASS_PROP@10..44
        COMPUTED_PROPERTY_NAME@10..17
          L_BRACK@10..11 "["
          BIN_EXPR@11..16
            LITERAL@11..12
              NUMBER@11..12 "1"
            WHITESPACE@12..13 " "
            PLUS@13..14 "+"
            WHITESPACE@14..15 " "
            LITERAL@15..16
              NUMBER@15..16 "1"
          R_BRACK@16..17 "]"
        WHITESPACE@17..18 " "
        EQ@18..19 "="
        WHITESPACE@19..20 " "
        ARROW_EXPR@20..43
          PARAMETER_LIST@20..22
            L_PAREN@20..21 "("
            R_PAREN@21..22 ")"
          WHITESPACE@22..23 " "
          FAT_ARROW@23..25 "=>"
          WHITESPACE@25..26 " "
          BLOCK_STMT@26..43
            L_CURLY@26..27 "{"
            WHITESPACE@27..32 "\n    "
            VAR_DECL@32..39
              IDENT@32..35 "let"
              WHITESPACE@35..36 " "
              DECLARATOR@36..39
                SINGLE_PATTERN@36..37
                  NAME@36..37
                    IDENT@36..37 "a"
                EQ@37..38 "="
                ERROR@38..39
                  SEMICOLON@38..39 ";"
            WHITESPACE@39..42 "\n  "
            R_CURLY@42..43 "}"
        SEMICOLON@43..44 ";"
      WHITESPACE@44..45 "\n"
      R_CURLY@45..46 "}"
  EMPTY_STMT@46..47
    SEMICOLON@46..47 ";"
  WHITESPACE@47..48 "\n"
--
error[SyntaxError]: class declarations must have a name
  ┌─ invalid_method_recover.js:1:7
  │
1 │ class {
  │       ^

--
error[SyntaxError]: expected an expression, but found `;` instead
  ┌─ invalid_method_recover.js:3:11
  │
3 │     let a=;
  │           ^

--
error[SyntaxError]: class fields are unsupported
  ┌─ invalid_method_recover.js:2:3
  │  
2 │ ┌   [1 + 1] = () => {
3 │ │     let a=;
4 │ │   };
  │ └────^

--
class {
  [1 + 1] = () => {
    let a=;
  };
};