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: 304
expression: "format_with_errors(\"MATCH (n) WHERE n.age >= 18 RETURN n\")"
---
SOURCE_FILE@0..36
  STATEMENT@0..36
    MATCH_CLAUSE@0..27
      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 "n"
            R_PAREN@8..9 ")"
      WHERE_CLAUSE@9..27
        WHITESPACE@9..10 " "
        WHERE_KW@10..15 "WHERE"
        BINARY_EXPR@15..27
          PROP_ACCESS_EXPR@15..21
            VAR_EXPR@15..17
              WHITESPACE@15..16 " "
              IDENT@16..17 "n"
            DOT@17..18 "."
            IDENT@18..21 "age"
          WHITESPACE@21..22 " "
          GE@22..24 ">="
          LITERAL_EXPR@24..27
            WHITESPACE@24..25 " "
            INT_LITERAL@25..27 "18"
    RETURN_CLAUSE@27..36
      WHITESPACE@27..28 " "
      RETURN_KW@28..34 "RETURN"
      RETURN_BODY@34..36
        RETURN_ITEMS@34..36
          RETURN_ITEM@34..36
            VAR_EXPR@34..36
              WHITESPACE@34..35 " "
              IDENT@35..36 "n"