---
source: crates/squawk_parser/tests/tests.rs
input_file: crates/squawk_parser/tests/data/ok/set_transaction.sql
---
SOURCE_FILE
  COMMENT "-- docs"
  WHITESPACE "\n"
  SET_TRANSACTION
    SET_KW "SET"
    WHITESPACE " "
    TRANSACTION_KW "TRANSACTION"
    WHITESPACE " "
    SNAPSHOT_KW "SNAPSHOT"
    WHITESPACE " "
    LITERAL
      STRING "'00000003-0000001B-1'"
  SEMICOLON ";"
  WHITESPACE "\n\n"
  SET_TRANSACTION
    SET_KW "SET"
    WHITESPACE " "
    SESSION_KW "SESSION"
    WHITESPACE " "
    CHARACTERISTICS_KW "CHARACTERISTICS"
    WHITESPACE " "
    AS_KW "AS"
    WHITESPACE " "
    TRANSACTION_KW "TRANSACTION"
    WHITESPACE " "
    TRANSACTION_MODE_LIST
      READ_COMMITTED
        ISOLATION_KW "ISOLATION"
        WHITESPACE " "
        LEVEL_KW "LEVEL"
        WHITESPACE " "
        READ_KW "READ"
        WHITESPACE " "
        COMMITTED_KW "COMMITTED"
      COMMA ","
      WHITESPACE " "
      READ_WRITE
        READ_KW "read"
        WHITESPACE " "
        WRITE_KW "write"
  SEMICOLON ";"
  WHITESPACE "\n\n"
  SET_TRANSACTION
    SET_KW "SET"
    WHITESPACE " "
    TRANSACTION_KW "TRANSACTION"
    WHITESPACE " "
    TRANSACTION_MODE_LIST
      SERIALIZABLE
        ISOLATION_KW "ISOLATION"
        WHITESPACE " "
        LEVEL_KW "LEVEL"
        WHITESPACE " "
        SERIALIZABLE_KW "SERIALIZABLE"
      COMMA ","
      WHITESPACE " "
      READ_WRITE
        READ_KW "READ"
        WHITESPACE " "
        WRITE_KW "WRITE"
      COMMA ","
      WHITESPACE " "
      NOT_DEFERRABLE
        NOT_KW "NOT"
        WHITESPACE " "
        DEFERRABLE_KW "DEFERRABLE"
  SEMICOLON ";"
  WHITESPACE "\n\n\n"
  COMMENT "-- no commas is postgres historical according to gram.y"
  WHITESPACE "\n"
  SET_TRANSACTION
    SET_KW "SET"
    WHITESPACE " "
    TRANSACTION_KW "TRANSACTION"
    WHITESPACE " "
    TRANSACTION_MODE_LIST
      SERIALIZABLE
        ISOLATION_KW "ISOLATION"
        WHITESPACE " "
        LEVEL_KW "LEVEL"
        WHITESPACE " "
        SERIALIZABLE_KW "SERIALIZABLE"
      WHITESPACE " "
      READ_WRITE
        READ_KW "READ"
        WHITESPACE " "
        WRITE_KW "WRITE"
      WHITESPACE " "
      NOT_DEFERRABLE
        NOT_KW "NOT"
        WHITESPACE " "
        DEFERRABLE_KW "DEFERRABLE"
  SEMICOLON ";"
  WHITESPACE "\n"
