squawk-syntax 2.66.0

Linter for Postgres migrations & SQL
Documentation
---
source: crates/squawk_syntax/src/test.rs
input_file: crates/squawk_parser/tests/data/plpgsql/err/exec_sql_stmt.sql
---
PLPGSQL@0..21
  WHITESPACE@0..1 "\n"
  PLPGSQL_BLOCK@1..20
    BEGIN_KW@1..6 "begin"
    WHITESPACE@6..9 "\n  "
    PLPGSQL_BODY@9..16
      PLPGSQL_EXEC_SQL_STMT@9..16
        INSERT@9..15
          INSERT_KW@9..15 "insert"
          RELATION_NAME_REF@15..15
        SEMICOLON@15..16 ";"
    WHITESPACE@16..17 "\n"
    END_KW@17..20 "end"
  WHITESPACE@20..21 "\n"
---
PLPGSQL@0..45
  WHITESPACE@0..1 "\n"
  PLPGSQL_BLOCK@1..44
    BEGIN_KW@1..6 "begin"
    WHITESPACE@6..9 "\n  "
    PLPGSQL_BODY@9..40
      PLPGSQL_EXEC_SQL_STMT@9..40
        DROP_TABLE@9..33
          DROP_KW@9..13 "drop"
          WHITESPACE@13..14 " "
          TABLE_KW@14..19 "table"
          WHITESPACE@19..20 " "
          TABLE_NAME_REF@20..25
            PATH_REF@20..25
              PATH_SEGMENT_REF@20..25
                IDENT@20..25 "exs_t"
          WHITESPACE@25..26 " "
          CASCADE@26..33
            CASCADE_KW@26..33 "cascade"
        WHITESPACE@33..34 " "
        ERROR@34..39
          IDENT@34..39 "extra"
        SEMICOLON@39..40 ";"
    WHITESPACE@40..41 "\n"
    END_KW@41..44 "end"
  WHITESPACE@44..45 "\n"

error[syntax-error]: expected INTO_KW
  ╭▸ 
4 │   insert;
  ╰╴        ━
error[syntax-error]: expected path name
  ╭▸ 
4 │   insert;
  ╰╴        ━
error[syntax-error]: expected select stmt
  ╭▸ 
4 │   insert;
  ╰╴        ━
error[syntax-error]: expected SEMICOLON, got IDENT
   ╭▸ 
11 │   drop table exs_t cascade extra;
   ╰╴                           ━