squawk-parser 2.48.0

Linter for Postgres migrations & SQL
Documentation
---
source: crates/squawk_parser/tests/tests.rs
input_file: crates/squawk_parser/tests/data/ok/lock.sql
---
SOURCE_FILE
  COMMENT "-- simple"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
  SEMICOLON ";"
  WHITESPACE "\n\n"
  COMMENT "-- table_names"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_KW "table"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
      COMMA ","
      WHITESPACE " "
      RELATION_NAME
        ONLY_KW "only"
        WHITESPACE " "
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "b"
      COMMA ","
      WHITESPACE " "
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "c"
        WHITESPACE " "
        STAR "*"
  SEMICOLON ";"
  WHITESPACE "\n\n"
  COMMENT "-- lock_mode"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    ACCESS_KW "access"
    WHITESPACE " "
    SHARE_KW "share"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    ROW_KW "row"
    WHITESPACE " "
    SHARE_KW "share"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    ROW_KW "row"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    SHARE_KW "share"
    WHITESPACE " "
    UPDATE_KW "update"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    SHARE_KW "share"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    SHARE_KW "share"
    WHITESPACE " "
    ROW_KW "row"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    ACCESS_KW "access"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
  SEMICOLON ";"
  WHITESPACE "\n\n"
  COMMENT "-- all"
  WHITESPACE "\n"
  LOCK
    LOCK_KW "lock"
    WHITESPACE " "
    TABLE_KW "table"
    WHITESPACE " "
    TABLE_LIST
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "t"
      COMMA ","
      WHITESPACE " "
      RELATION_NAME
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "a"
        WHITESPACE " "
        STAR "*"
      COMMA ","
      WHITESPACE " "
      RELATION_NAME
        ONLY_KW "only"
        WHITESPACE " "
        PATH
          PATH_SEGMENT
            NAME_REF
              IDENT "c"
    WHITESPACE " "
    IN_KW "in"
    WHITESPACE " "
    ROW_KW "row"
    WHITESPACE " "
    EXCLUSIVE_KW "exclusive"
    WHITESPACE " "
    MODE_KW "mode"
    WHITESPACE " "
    NOWAIT_KW "nowait"
  SEMICOLON ";"
  WHITESPACE "\n\n"