cyrs-syntax 0.1.0

Lossless CST and recovering parser for Cypher / GQL (spec 0001 §4).
Documentation
---
source: crates/cyrs-syntax/tests/syntax_snapshots.rs
assertion_line: 580
expression: "format_with_errors(\"MATCH (a) WHERE ()-->() RETURN a\")"
---
SOURCE_FILE@0..32
  STATEMENT@0..32
    MATCH_CLAUSE@0..23
      MATCH_KW@0..5 "MATCH"
      PATTERN@5..9
        PATTERN_PART@5..9
          NODE_PATTERN@5..9
            WHITESPACE@5..6 " "
            L_PAREN@6..7 "("
            NAME@7..8
              IDENT@7..8 "a"
            R_PAREN@8..9 ")"
      WHERE_CLAUSE@9..23
        WHITESPACE@9..10 " "
        WHERE_KW@10..15 "WHERE"
        PATTERN_PREDICATE@15..23
          PATTERN@15..23
            PATTERN_PART@15..23
              NODE_PATTERN@15..18
                WHITESPACE@15..16 " "
                L_PAREN@16..17 "("
                R_PAREN@17..18 ")"
              REL_PATTERN@18..21
                MINUS@18..19 "-"
                ARROW_R@19..21 "->"
              NODE_PATTERN@21..23
                L_PAREN@21..22 "("
                R_PAREN@22..23 ")"
    RETURN_CLAUSE@23..32
      WHITESPACE@23..24 " "
      RETURN_KW@24..30 "RETURN"
      RETURN_BODY@30..32
        RETURN_ITEMS@30..32
          RETURN_ITEM@30..32
            VAR_EXPR@30..32
              WHITESPACE@30..31 " "
              IDENT@31..32 "a"