diff --git a/.github/ISSUE_TEMPLATE/BUG_REPORT.yml b/.github/ISSUE_TEMPLATE/BUG_REPORT.yml
index 7895d41f9e..34778af7ef 100644
--- a/.github/ISSUE_TEMPLATE/BUG_REPORT.yml
+++ b/.github/ISSUE_TEMPLATE/BUG_REPORT.yml
@@ -1,6 +1,6 @@
name: Bug Report
description: File a bug report
-labels: [bug, triage]
+labels: [bug]
body:
- type: dropdown
id: version
@@ -9,16 +9,11 @@ body:
description: What version of sqlc are you running? If you don't know, run `sqlc version`.
multiple: false
options:
- - 1.24.0
- - 1.23.0
- - 1.22.0
- - 1.21.0
- - 1.20.0
- - 1.19.1
- - 1.19.0
- - 1.18.0
- - 1.17.2
- - 1.16.0
+ - 1.29.0
+ - 1.28.0
+ - 1.27.0
+ - 1.26.0
+ - 1.25.0
- Other
validations:
required: true
diff --git a/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.yml b/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.yml
index 97c36f512d..b3dd5b0a09 100644
--- a/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.yml
+++ b/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.yml
@@ -1,6 +1,6 @@
name: Feature Request
description: Request a new feature or a change to an existing feature
-labels: [enhancement, triage]
+labels: [enhancement]
body:
- type: textarea
id: feature
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index f278157e42..ecbac919d7 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -4,6 +4,11 @@ updates:
directory: "/"
schedule:
interval: "daily"
+ groups:
+ production-dependencies:
+ dependency-type: "production"
+ development-dependencies:
+ dependency-type: "development"
- package-ecosystem: "docker"
directory: "/"
schedule:
@@ -21,3 +26,9 @@ updates:
# sphinx
- dependency-name: "docutils"
- dependency-name: "sphinx"
+ groups:
+ production-dependencies:
+ dependency-type: "production"
+ development-dependencies:
+ dependency-type: "development"
+
diff --git a/.github/workflows/ci-kotlin.yml b/.github/workflows/ci-kotlin.yml
index 1932c83447..ca53355ad5 100644
--- a/.github/workflows/ci-kotlin.yml
+++ b/.github/workflows/ci-kotlin.yml
@@ -6,13 +6,14 @@ on:
pull_request:
jobs:
build:
+ if: false
name: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - uses: actions/setup-go@v4
+ - uses: actions/setup-go@v5
with:
- go-version: '1.21.3'
+ go-version: '1.24.1'
- name: install ./...
run: go install ./...
- uses: actions/checkout@v4
diff --git a/.github/workflows/ci-python.yml b/.github/workflows/ci-python.yml
index d6b8251771..e0e0b44441 100644
--- a/.github/workflows/ci-python.yml
+++ b/.github/workflows/ci-python.yml
@@ -6,13 +6,14 @@ on:
pull_request:
jobs:
build:
+ if: false
name: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - uses: actions/setup-go@v4
+ - uses: actions/setup-go@v5
with:
- go-version: '1.21.3'
+ go-version: '1.24.1'
- name: install ./...
run: go install ./...
- uses: actions/checkout@v4
diff --git a/.github/workflows/ci-typescript.yml b/.github/workflows/ci-typescript.yml
new file mode 100644
index 0000000000..b502bdcf05
--- /dev/null
+++ b/.github/workflows/ci-typescript.yml
@@ -0,0 +1,26 @@
+name: typescript
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+jobs:
+ build:
+ if: false
+ name: test
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/setup-go@v5
+ with:
+ go-version: '1.24.1'
+ - name: install ./...
+ run: go install ./...
+ - uses: actions/checkout@v4
+ with:
+ repository: sqlc-dev/sqlc-gen-typescript
+ path: typescript
+ # v0.1.3
+ ref: daaf539092421adc15f6c3164279a3470716b560
+ - run: sqlc diff
+ working-directory: typescript/examples
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index f525c4c31d..6e226c0fd2 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -5,38 +5,32 @@ on:
- main
pull_request:
jobs:
- windows-build:
- if: ${{ github.ref == 'refs/heads/main' }}
- runs-on: windows-latest
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-go@v4
- with:
- go-version-file: go.mod
- check-latest: true
- - run: go build ./...
+ test:
+ strategy:
+ matrix:
+ # Disabling windows builds while we fix installing PostgreSQL 16
+ # os: [ubuntu-22.04, macos-14, windows-2022]
+ os: [ubuntu-22.04, macos-15]
+ cgo: ['1', '0']
+ # Workaround no native support for conditional matrix items
+ # https://github.com/orgs/community/discussions/26253#discussioncomment-6745038
+ isMain:
+ - ${{ github.ref == 'refs/heads/main' }}
+ exclude:
+ - isMain: false
+ include:
+ - os: ubuntu-22.04
+ cgo: '1'
+ - os: ubuntu-22.04
+ cgo: '0'
+ name: test ${{ matrix.os }} cgo=${{ matrix.cgo }}
+ runs-on: ${{ matrix.os }}
- darwin-build:
- if: ${{ github.ref == 'refs/heads/main' }}
- runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- - uses: actions/setup-go@v4
+ - uses: actions/setup-go@v5
with:
- go-version-file: go.mod
- check-latest: true
- - run: go build ./...
-
- build:
- name: test
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-go@v4
- with:
- go-version-file: go.mod
- check-latest: true
+ go-version: '1.24.1'
- name: install gotestsum
run: go install gotest.tools/gotestsum@latest
@@ -44,12 +38,30 @@ jobs:
- name: install sqlc-gen-test
run: go install github.com/sqlc-dev/sqlc-gen-test@v0.1.0
+ - name: install test-json-process-plugin
+ run: go install ./scripts/test-json-process-plugin/
+
- name: install ./...
run: go install ./...
+ env:
+ CGO_ENABLED: ${{ matrix.cgo }}
- name: build internal/endtoend
run: go build ./...
working-directory: internal/endtoend/testdata
+ env:
+ CGO_ENABLED: ${{ matrix.cgo }}
+
+ # Start a PostgreSQL server
+ - uses: sqlc-dev/action-setup-postgres@master
+ with:
+ postgres-version: "16"
+ id: postgres
+
+ # Start a MySQL server
+ - uses: shogo82148/actions-setup-mysql@v1
+ with:
+ mysql-version: "9.0"
- name: test ./...
run: gotestsum --junitfile junit.xml -- --tags=examples -timeout 20m ./...
@@ -57,16 +69,13 @@ jobs:
CI_SQLC_PROJECT_ID: ${{ secrets.CI_SQLC_PROJECT_ID }}
CI_SQLC_AUTH_TOKEN: ${{ secrets.CI_SQLC_AUTH_TOKEN }}
SQLC_AUTH_TOKEN: ${{ secrets.CI_SQLC_AUTH_TOKEN }}
+ MYSQL_SERVER_URI: root:@tcp(localhost:3306)/mysql?multiStatements=true&parseTime=true
+ POSTGRESQL_SERVER_URI: ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
+ CGO_ENABLED: ${{ matrix.cgo }}
vuln_check:
- runs-on: ubuntu-latest
+ runs-on: ubuntu-22.04
timeout-minutes: 5
steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-go@v4
- with:
- go-version-file: go.mod
- check-latest: true
- - run: go install golang.org/x/vuln/cmd/govulncheck@latest
- - run: govulncheck ./...
+ - uses: golang/govulncheck-action@v1
diff --git a/.github/workflows/gen.yml b/.github/workflows/gen.yml
index e553c2e563..0db460ce08 100644
--- a/.github/workflows/gen.yml
+++ b/.github/workflows/gen.yml
@@ -18,7 +18,7 @@ jobs:
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- - uses: actions/setup-go@v4
+ - uses: actions/setup-go@v5
with:
go-version-file: go.mod
check-latest: true
@@ -32,7 +32,7 @@ jobs:
PG_PASSWORD: postgres
PG_PORT: ${{ job.services.postgres.ports['5432'] }}
- name: Save results
- uses: actions/upload-artifact@v3
+ uses: actions/upload-artifact@v4
with:
name: sqlc-pg-gen-results
path: gen
diff --git a/Dockerfile b/Dockerfile
index ac44eda729..352c3f9ddd 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,5 +1,5 @@
# STEP 1: Build sqlc
-FROM golang:1.21.4 AS builder
+FROM golang:1.24.4 AS builder
COPY . /workspace
WORKDIR /workspace
@@ -13,7 +13,7 @@ ENV VERSION=$version
RUN go run scripts/release.go -docker
# STEP 2: Build a tiny image
-FROM scratch
+FROM gcr.io/distroless/base-debian12
COPY --from=builder /workspace/sqlc /workspace/sqlc
ENTRYPOINT ["/workspace/sqlc"]
diff --git a/LICENSE b/LICENSE
index 43c4c88534..4d86f4d24d 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2023 Riza, Inc.
+Copyright (c) 2024 Riza, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/Makefile b/Makefile
index 3f1245147e..b8745e57dc 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-.PHONY: build build-endtoend test test-ci test-examples test-endtoend regen start psql mysqlsh proto
+.PHONY: build build-endtoend test test-ci test-examples test-endtoend start psql mysqlsh proto
build:
go build ./...
@@ -9,6 +9,9 @@ install:
test:
go test ./...
+test-managed:
+ MYSQL_SERVER_URI="invalid" POSTGRESQL_SERVER_URI="postgres://postgres:mysecretpassword@localhost:5432/postgres" go test -v ./...
+
vet:
go vet ./...
@@ -20,9 +23,6 @@ build-endtoend:
test-ci: test-examples build-endtoend vet
-regen: sqlc-dev sqlc-gen-json
- go run ./scripts/regenerate/
-
sqlc-dev:
go build -o ~/bin/sqlc-dev ./cmd/sqlc/
@@ -32,6 +32,9 @@ sqlc-pg-gen:
sqlc-gen-json:
go build -o ~/bin/sqlc-gen-json ./cmd/sqlc-gen-json
+test-json-process-plugin:
+ go build -o ~/bin/test-json-process-plugin ./scripts/test-json-process-plugin/
+
start:
docker compose up -d
diff --git a/README.md b/README.md
index 3220a847d5..43fed122b9 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,44 @@ Check out [an interactive example](https://play.sqlc.dev/) to see it in action,
- [Downloads](https://downloads.sqlc.dev/)
- [Community](https://discord.gg/EcXzGe5SEs)
-## Acknowledgments
-
-sqlc was inspired by [PugSQL](https://pugsql.org/) and
-[HugSQL](https://www.hugsql.org/).
+## Supported languages
+
+- [sqlc-gen-go](https://github.com/sqlc-dev/sqlc-gen-go)
+- [sqlc-gen-kotlin](https://github.com/sqlc-dev/sqlc-gen-kotlin)
+- [sqlc-gen-python](https://github.com/sqlc-dev/sqlc-gen-python)
+- [sqlc-gen-typescript](https://github.com/sqlc-dev/sqlc-gen-typescript)
+
+Additional languages can be added via [plugins](https://docs.sqlc.dev/en/latest/reference/language-support.html#community-language-support).
+
+## Sponsors
+
+Development is possible thanks to our sponsors. If you would like to support sqlc,
+please consider [sponsoring on GitHub](https://github.com/sponsors/kyleconroy).
+
+
+
+
+
+
+
+
+
+
+
+
+ Cyberax -
+ NaNuNaNu -
+ Stumble -
+ WestfalNamur -
+ alecthomas -
+ cameronnewman -
+ danielbprice -
+ davherrmann -
+ dvob -
+ gilcrest -
+ gzuidhof -
+ jeffreylo -
+ mmcloughlin -
+ ryohei1216 -
+ sgielen
+
diff --git a/devenv.lock b/devenv.lock
index 6f61ce9a07..ff48a49f12 100644
--- a/devenv.lock
+++ b/devenv.lock
@@ -3,11 +3,10 @@
"devenv": {
"locked": {
"dir": "src/modules",
- "lastModified": 1693830477,
- "narHash": "sha256-6j1oNRpjGseDbgg6mJ9H3gmX5U+VAubOLV+iFL9WW30=",
+ "lastModified": 1742659231,
"owner": "cachix",
"repo": "devenv",
- "rev": "f839f486b98609f3477c0410b31a6f831b390d48",
+ "rev": "c651cb04013be972767aaecb3e9a98fc930d080e",
"type": "github"
},
"original": {
@@ -20,11 +19,10 @@
"flake-compat": {
"flake": false,
"locked": {
- "lastModified": 1673956053,
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
+ "lastModified": 1733328505,
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
+ "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github"
},
"original": {
@@ -33,24 +31,6 @@
"type": "github"
}
},
- "flake-utils": {
- "inputs": {
- "systems": "systems"
- },
- "locked": {
- "lastModified": 1685518550,
- "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -59,11 +39,10 @@
]
},
"locked": {
- "lastModified": 1660459072,
- "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
+ "lastModified": 1709087332,
"owner": "hercules-ci",
"repo": "gitignore.nix",
- "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
+ "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
@@ -74,11 +53,10 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1693844670,
- "narHash": "sha256-t69F2nBB8DNQUWHD809oJZJVE+23XBrth4QZuVd6IE0=",
+ "lastModified": 1742707865,
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "3c15feef7770eb5500a4b8792623e2d6f598c9c1",
+ "rev": "dd613136ee91f67e5dba3f3f41ac99ae89c5406b",
"type": "github"
},
"original": {
@@ -88,38 +66,19 @@
"type": "github"
}
},
- "nixpkgs-stable": {
- "locked": {
- "lastModified": 1685801374,
- "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-23.05",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
"pre-commit-hooks": {
"inputs": {
"flake-compat": "flake-compat",
- "flake-utils": "flake-utils",
"gitignore": "gitignore",
"nixpkgs": [
"nixpkgs"
- ],
- "nixpkgs-stable": "nixpkgs-stable"
+ ]
},
"locked": {
- "lastModified": 1692274144,
- "narHash": "sha256-BxTQuRUANQ81u8DJznQyPmRsg63t4Yc+0kcyq6OLz8s=",
+ "lastModified": 1742649964,
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
- "rev": "7e3517c03d46159fdbf8c0e5c97f82d5d4b0c8fa",
+ "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
"type": "github"
},
"original": {
@@ -134,21 +93,6 @@
"nixpkgs": "nixpkgs",
"pre-commit-hooks": "pre-commit-hooks"
}
- },
- "systems": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
}
},
"root": "root",
diff --git a/devenv.nix b/devenv.nix
index 572e83e198..8a25b78d5a 100644
--- a/devenv.nix
+++ b/devenv.nix
@@ -4,7 +4,7 @@
# https://devenv.sh/packages/
packages = [
pkgs.buf
- pkgs.go_1_21
+ pkgs.go_1_24
pkgs.git
pkgs.git-cliff
pkgs.govulncheck
diff --git a/docker-compose.yml b/docker-compose.yml
index 3087dcc6b4..f318d1ed93 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,7 +1,7 @@
version: "3.8"
services:
mysql:
- image: "mysql/mysql-server:8.0"
+ image: "mysql:9"
ports:
- "3306:3306"
restart: always
@@ -10,20 +10,8 @@ services:
MYSQL_ROOT_PASSWORD: mysecretpassword
MYSQL_ROOT_HOST: '%'
- mysql5:
- image: "mysql/mysql-server:5.7"
- ports:
- - "3305:3306"
- restart: always
- environment:
- MYSQL_DATABASE: dinotest
- MYSQL_ROOT_PASSWORD: mysecretpassword
- MYSQL_ROOT_HOST: '%'
- profiles:
- - mysql
-
postgresql:
- image: "postgres:15"
+ image: "postgres:16"
ports:
- "5432:5432"
restart: always
@@ -31,51 +19,3 @@ services:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: mysecretpassword
POSTGRES_USER: postgres
-
- postgresql14:
- image: "postgres:14"
- ports:
- - "5414:5432"
- restart: always
- environment:
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: mysecretpassword
- POSTGRES_USER: postgres
- profiles:
- - postgres
-
- postgresql13:
- image: "postgres:13"
- ports:
- - "5413:5432"
- restart: always
- environment:
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: mysecretpassword
- POSTGRES_USER: postgres
- profiles:
- - postgres
-
- postgresql12:
- image: "postgres:12"
- ports:
- - "5412:5432"
- restart: always
- environment:
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: mysecretpassword
- POSTGRES_USER: postgres
- profiles:
- - postgres
-
- postgresql11:
- image: "postgres:11"
- ports:
- - "5411:5432"
- restart: always
- environment:
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: mysecretpassword
- POSTGRES_USER: postgres
- profiles:
- - postgres
\ No newline at end of file
diff --git a/docs/_static/customize.css b/docs/_static/customize.css
index b0882f2a05..62b715840c 100644
--- a/docs/_static/customize.css
+++ b/docs/_static/customize.css
@@ -14,4 +14,9 @@
#banner > div > a {
color: #F0F0F4;
text-decoration: underline;
-}
\ No newline at end of file
+}
+
+#sponsorship > img {
+ width: 100%;
+ max-width: 200px;
+}
diff --git a/docs/_templates/breadcrumbs.html b/docs/_templates/breadcrumbs.html
index 77a683a319..40a8b82be1 100644
--- a/docs/_templates/breadcrumbs.html
+++ b/docs/_templates/breadcrumbs.html
@@ -2,9 +2,6 @@
{% block breadcrumbs %}
{% if show_banner %}
-
{% endif %}
{{ super() }}
{% endblock %}
diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html
index c83e9b28a4..4b748dd160 100644
--- a/docs/_templates/layout.html
+++ b/docs/_templates/layout.html
@@ -1,6 +1,16 @@
{% extends "!layout.html" %}
{% block extrahead %}
-
+
{{ super() }}
-{% endblock %}
\ No newline at end of file
+{% endblock %}
+
+{% block menu %}
+{{ super() }}
+Sponsored By
+
+
+
+{% endblock %}
diff --git a/docs/conf.py b/docs/conf.py
index 7356c360d7..81e8df9339 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -18,11 +18,11 @@
# -- Project information -----------------------------------------------------
project = 'sqlc'
-copyright = '2023, Riza, Inc.'
+copyright = '2024, Riza, Inc.'
author = 'Riza, Inc.'
# The full version, including alpha/beta/rc tags
-release = '1.24.0'
+release = '1.29.0'
# -- General configuration ---------------------------------------------------
diff --git a/docs/guides/development.md b/docs/guides/development.md
index 7f03115837..f8196572be 100644
--- a/docs/guides/development.md
+++ b/docs/guides/development.md
@@ -8,6 +8,12 @@ For local development, install `sqlc` under an alias. We suggest `sqlc-dev`.
go build -o ~/go/bin/sqlc-dev ./cmd/sqlc
```
+Install `sqlc-gen-json` to avoid test failure.
+
+```
+go build -o ~/go/bin/sqlc-gen-json ./cmd/sqlc-gen-json
+```
+
## Running Tests
```
@@ -53,16 +59,3 @@ MYSQL_USER root
MYSQL_ROOT_PASSWORD mysecretpassword
MYSQL_DATABASE dinotest
```
-
-## Regenerate expected test output
-
-If you need to update a large number of expected test output in the
-`internal/endtoend/testdata` directory, run the `regenerate` script.
-
-```
-go build -o ~/go/bin/sqlc-dev ./cmd/sqlc
-go run scripts/regenerate/main.go
-```
-
-Note that this uses the `sqlc-dev` binary, not `sqlc` so make sure you have an
-up to date `sqlc-dev` binary.
diff --git a/docs/guides/migrating-off-hosted-managed-databases.md b/docs/guides/migrating-off-hosted-managed-databases.md
new file mode 100644
index 0000000000..6bb8a75ff5
--- /dev/null
+++ b/docs/guides/migrating-off-hosted-managed-databases.md
@@ -0,0 +1,71 @@
+# Migrating off hosted managed databases
+
+Starting in sqlc 1.27.0, [managed databases](../docs/managed-databases.md) will require a database server URI in the configuration file.
+
+This guide walks you through migrating to a locally running database server.
+
+## Run a database server locally
+
+There are many options for running a database server locally, but this guide
+will use [Docker Compose](https://docs.docker.com/compose/), as it can support
+both MySQL and PostgreSQL.
+
+If you're using macOS and PostgreSQL, [Postgres.app](https://postgresapp.com/) is also a good option.
+
+For MySQL, create a `docker-compose.yml` file with the following contents:
+
+```yaml
+version: "3.8"
+services:
+ mysql:
+ image: "mysql/mysql-server:8.0"
+ ports:
+ - "3306:3306"
+ restart: always
+ environment:
+ MYSQL_DATABASE: dinotest
+ MYSQL_ROOT_PASSWORD: mysecretpassword
+ MYSQL_ROOT_HOST: '%'
+```
+
+For PostgreSQL, create a `docker-compose.yml` file with the following contents:
+
+```yaml
+version: "3.8"
+services:
+ postgresql:
+ image: "postgres:16"
+ ports:
+ - "5432:5432"
+ restart: always
+ environment:
+ POSTGRES_DB: postgres
+ POSTGRES_PASSWORD: mysecretpassword
+ POSTGRES_USER: postgres
+```
+
+```sh
+docker compose up -d
+```
+
+## Upgrade sqlc
+
+You must be running sqlc v1.29.0 or greater to have access to the `servers`
+configuration.
+
+## Add servers to configuration
+
+```diff
+version: '2'
+cloud:
+ project: ''
++ servers:
++ - name: mysql
++ uri: mysql://localhost:3306
++ - name: postgres
++ uri: postgres://localhost:5432/postgres?sslmode=disable
+```
+
+## Re-generate the code
+
+Run `sqlc generate`. A database with the `sqlc_managed_` prefix will be automatically created and used for query analysis.
diff --git a/docs/guides/migrating-to-sqlc-gen-kotlin.md b/docs/guides/migrating-to-sqlc-gen-kotlin.md
index 2c39e1c4c4..17660aaad4 100644
--- a/docs/guides/migrating-to-sqlc-gen-kotlin.md
+++ b/docs/guides/migrating-to-sqlc-gen-kotlin.md
@@ -33,7 +33,7 @@ already. Add the following configuration for the plugin:
```yaml
version: "2"
plugins:
- name: "kt"
+- name: "kt"
wasm:
url: "https://downloads.sqlc.dev/plugin/sqlc-gen-kotlin_1.0.0.wasm"
sha256: "7620dc5d462de41fdc90e2011232c842117b416c98fd5c163d27c5738431a45c"
diff --git a/docs/guides/plugins.md b/docs/guides/plugins.md
index 0a97a2b776..b229f91732 100644
--- a/docs/guides/plugins.md
+++ b/docs/guides/plugins.md
@@ -72,6 +72,8 @@ For a complete working example see the following files:
- A process-based plugin that serializes the CodeGenRequest to JSON
- [process_plugin_sqlc_gen_json](https://github.com/sqlc-dev/sqlc/tree/main/internal/endtoend/testdata/process_plugin_sqlc_gen_json)
- An example project showing how to use a process-based plugin
+- [process_plugin_sqlc_gen_json](https://github.com/sqlc-dev/sqlc/tree/main/internal/endtoend/testdata/process_plugin_format_json/)
+ - An example project showing how to use a process-based plugin using json
## Environment variables
@@ -99,4 +101,4 @@ plugins:
```
A variable named `SQLC_VERSION` is always included in the plugin's
-environment, set to the version of the `sqlc` executable invoking it.
\ No newline at end of file
+environment, set to the version of the `sqlc` executable invoking it.
diff --git a/docs/howto/ci-cd.md b/docs/howto/ci-cd.md
index fb6eebe99b..78dac4b78e 100644
--- a/docs/howto/ci-cd.md
+++ b/docs/howto/ci-cd.md
@@ -64,7 +64,7 @@ jobs:
- uses: actions/checkout@v3
- uses: sqlc-dev/setup-sqlc@v3
with:
- sqlc-version: '1.24.0'
+ sqlc-version: '1.29.0'
- run: sqlc diff
```
@@ -80,54 +80,20 @@ on: [push]
jobs:
vet:
runs-on: ubuntu-latest
- services:
- postgres:
- image: "postgres:15"
- env:
- POSTGRES_DB: postgres
- POSTGRES_PASSWORD: postgres
- POSTGRES_USER: postgres
- ports:
- - 5432:5432
- # needed because the postgres container does not provide a healthcheck
- options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
- env:
- PG_PORT: ${{ job.services.postgres.ports['5432'] }}
-
steps:
- uses: actions/checkout@v3
- uses: sqlc-dev/setup-sqlc@v3
with:
- sqlc-version: '1.24.0'
- # Connect and migrate your database here. This is an example which runs
- # commands from a `schema.sql` file.
- - run: psql -h localhost -U postgres -p $PG_PORT -d postgres -f schema.sql
- env:
- PGPASSWORD: postgres
- - run: sqlc vet
-```
-
-#### Managed databases
-
-```{note}
-Managed databases are powered by [sqlc Cloud](https://dashboard.sqlc.dev). Sign up for [free](https://dashboard.sqlc.dev) today.
-```
-
-If you're using [managed databases](managed-databases.md), the `services` block
-in the previous workflow isn't required.
-
-```yaml
-name: sqlc
-on: [push]
-jobs:
- vet:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - uses: sqlc-dev/setup-sqlc@v3
+ sqlc-version: '1.29.0'
+ # Start a PostgreSQL server
+ - uses: sqlc-dev/action-setup-postgres@master
with:
- sqlc-version: '1.24.0'
+ postgres-version: "16"
+ id: postgres
- run: sqlc vet
+ env:
+ POSTGRESQL_SERVER_URI: ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
+
```
### push
@@ -151,7 +117,7 @@ jobs:
- uses: actions/checkout@v3
- uses: sqlc-dev/setup-sqlc@v3
with:
- sqlc-version: '1.24.0'
+ sqlc-version: '1.29.0'
- run: sqlc push
env:
SQLC_AUTH_TOKEN: ${{ secrets.SQLC_AUTH_TOKEN }}
@@ -173,9 +139,14 @@ jobs:
- uses: actions/checkout@v3
- uses: sqlc-dev/setup-sqlc@v3
with:
- sqlc-version: '1.24.0'
+ sqlc-version: '1.29.0'
+ - uses: sqlc-dev/action-setup-postgres@master
+ with:
+ postgres-version: "16"
+ id: postgres
- run: sqlc verify
env:
+ POSTGRESQL_SERVER_URI: ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
SQLC_AUTH_TOKEN: ${{ secrets.SQLC_AUTH_TOKEN }}
push:
runs-on: ubuntu-latest
@@ -183,7 +154,7 @@ jobs:
steps:
- uses: sqlc-dev/setup-sqlc@v3
with:
- sqlc-version: '1.24.0'
+ sqlc-version: '1.29.0'
- run: sqlc push
env:
SQLC_AUTH_TOKEN: ${{ secrets.SQLC_AUTH_TOKEN }}
diff --git a/docs/howto/ddl.md b/docs/howto/ddl.md
index 4e9d36d855..2d51af7fad 100644
--- a/docs/howto/ddl.md
+++ b/docs/howto/ddl.md
@@ -69,75 +69,84 @@ type Post struct {
}
```
-### goose
+### dbmate
```sql
--- +goose Up
-CREATE TABLE post (
- id int NOT NULL,
- title text,
- body text,
- PRIMARY KEY(id)
-);
+-- migrate:up
+CREATE TABLE foo (bar INT NOT NULL);
--- +goose Down
-DROP TABLE post;
+-- migrate:down
+DROP TABLE foo;
```
```go
package db
-type Post struct {
- ID int
- Title sql.NullString
- Body sql.NullString
+type Foo struct {
+ Bar int32
}
```
-### sql-migrate
+### golang-migrate
-```sql
--- +migrate Up
--- SQL in section 'Up' is executed when this migration is applied
-CREATE TABLE people (id int);
+**Warning:**
+[golang-migrate interprets](https://github.com/golang-migrate/migrate/blob/master/MIGRATIONS.md#migration-filename-format)
+migration filenames numerically. However, sqlc parses migration files in
+lexicographic order. If you choose to have sqlc enumerate your migration files,
+make sure their numeric ordering matches their lexicographic ordering to avoid
+unexpected behavior. This can be done by prepending enough zeroes to the
+migration filenames.
+This doesn't work as intended.
--- +migrate Down
--- SQL section 'Down' is executed when this migration is rolled back
-DROP TABLE people;
+```
+1_initial.up.sql
+...
+9_foo.up.sql
+# this migration file will be parsed BEFORE 9_foo
+10_bar.up.sql
```
-```go
-package db
+This worked as intended.
-type People struct {
- ID int32
-}
+```
+001_initial.up.sql
+...
+009_foo.up.sql
+010_bar.up.sql
```
-### tern
+In `20060102.up.sql`:
```sql
-CREATE TABLE comment (id int NOT NULL, text text NOT NULL);
----- create above / drop below ----
-DROP TABLE comment;
+CREATE TABLE post (
+ id int NOT NULL,
+ title text,
+ body text,
+ PRIMARY KEY(id)
+);
+```
+
+In `20060102.down.sql`:
+
+```sql
+DROP TABLE post;
```
```go
package db
-type Comment struct {
- ID int32
- Text string
+type Post struct {
+ ID int
+ Title sql.NullString
+ Body sql.NullString
}
```
-### golang-migrate
+### goose
**Warning:**
-[golang-migrate interprets](https://github.com/golang-migrate/migrate/blob/master/MIGRATIONS.md#migration-filename-format)
-migration filenames numerically. However, sqlc parses migration files in
-lexicographic order. If you choose to have sqlc enumerate your migration files,
+sqlc parses migration files in lexicographic order. **If you are using numeric filenames for migrations in Goose and you choose to have sqlc enumerate your migration files**,
make sure their numeric ordering matches their lexicographic ordering to avoid
unexpected behavior. This can be done by prepending enough zeroes to the
migration filenames.
@@ -145,36 +154,32 @@ migration filenames.
This doesn't work as intended.
```
-1_initial.up.sql
+1_initial.sql
...
-9_foo.up.sql
+9_foo.sql
# this migration file will be parsed BEFORE 9_foo
-10_bar.up.sql
+10_bar.sql
```
This worked as intended.
```
-001_initial.up.sql
+001_initial.sql
...
-009_foo.up.sql
-010_bar.up.sql
+009_foo.sql
+010_bar.sql
```
-In `20060102.up.sql`:
-
```sql
+-- +goose Up
CREATE TABLE post (
id int NOT NULL,
title text,
body text,
PRIMARY KEY(id)
);
-```
-
-In `20060102.down.sql`:
-```sql
+-- +goose Down
DROP TABLE post;
```
@@ -188,20 +193,40 @@ type Post struct {
}
```
-### dbmate
+### sql-migrate
```sql
--- migrate:up
-CREATE TABLE foo (bar INT NOT NULL);
+-- +migrate Up
+-- SQL in section 'Up' is executed when this migration is applied
+CREATE TABLE people (id int);
--- migrate:down
-DROP TABLE foo;
+
+-- +migrate Down
+-- SQL section 'Down' is executed when this migration is rolled back
+DROP TABLE people;
```
```go
package db
-type Foo struct {
- Bar int32
+type People struct {
+ ID int32
+}
+```
+
+### tern
+
+```sql
+CREATE TABLE comment (id int NOT NULL, text text NOT NULL);
+---- create above / drop below ----
+DROP TABLE comment;
+```
+
+```go
+package db
+
+type Comment struct {
+ ID int32
+ Text string
}
```
diff --git a/docs/howto/embedding.md b/docs/howto/embedding.md
index 125386135b..5ea8cbbc0a 100644
--- a/docs/howto/embedding.md
+++ b/docs/howto/embedding.md
@@ -26,7 +26,7 @@ Here's how we'd usually do that:
SELECT students.*, test_scores.*
FROM students
JOIN test_scores ON test_scores.student_id = students.id
-WHERE students.id = ?;
+WHERE students.id = $1;
```
When using Go, sqlc will produce a struct like this:
@@ -50,7 +50,7 @@ flattened list of columns.
SELECT sqlc.embed(students), sqlc.embed(test_scores)
FROM students
JOIN test_scores ON test_scores.student_id = students.id
-WHERE students.id = ?;
+WHERE students.id = $1;
```
```
diff --git a/docs/howto/generate.md b/docs/howto/generate.md
index 447343ac98..288fb1a7d4 100644
--- a/docs/howto/generate.md
+++ b/docs/howto/generate.md
@@ -27,10 +27,6 @@ support planned in the future.
## Enhanced analysis with managed databases
-```{note}
-Managed databases are powered by [sqlc Cloud](https://dashboard.sqlc.dev). Sign up for [free](https://dashboard.sqlc.dev) today.
-```
-
With [managed databases](managed-databases.md) configured, `generate` will automatically create a hosted ephemeral database with your
schema and use that database to improve its query analysis. And sqlc will cache its analysis locally
on a per-query basis to speed up future `generate` runs. This saves you the trouble of running and maintaining a database with
@@ -38,8 +34,9 @@ an up-to-date schema. Here's a minimal working configuration:
```yaml
version: "2"
-cloud:
- project: ""
+servers:
+- engine: postgresql
+ uri: "postgres://locahost:5432/postgres?sslmode=disable"
sql:
- engine: "postgresql"
queries: "query.sql"
diff --git a/docs/howto/managed-databases.md b/docs/howto/managed-databases.md
index bac51610ea..745524ea5f 100644
--- a/docs/howto/managed-databases.md
+++ b/docs/howto/managed-databases.md
@@ -1,37 +1,31 @@
# Managed databases
-```{note}
-Managed databases are powered by [sqlc Cloud](https://dashboard.sqlc.dev). Sign up for [free](https://dashboard.sqlc.dev) today.
-```
-
*Added in v1.22.0*
-`sqlc` can create and maintain short-lived hosted databases for your project.
-These ephemeral databases are immediately useful for powering sqlc's
-database-connected query analyzer, an opt-in feature that improves upon sqlc's
-built-in query analysis engine. PostgreSQL support is available today, with
-MySQL on the way.
+`sqlc` can automatically create read-only databases to power query analysis,
+linting and verification. These databases are immediately useful for powering
+sqlc's database-connected query analyzer, an opt-in feature that improves upon
+sqlc's built-in query analysis engine. PostgreSQL support is available today,
+with MySQL on the way.
Once configured, `sqlc` will also use managed databases when linting queries
with [`sqlc vet`](vet.md) in cases where your lint rules require a connection
to a running database.
Managed databases are under active development, and we're interested in
-supporting other use-cases. Outside of sqlc itself, you can use our managed
-databases in your tests to quickly stand up a database per test suite or even per test,
-providing a real, isolated database for a test run. No cleanup required.
+supporting other use-cases.
## Configuring managed databases
To configure `sqlc` to use managed databases, remove the `uri` key from your
`database` configuration and replace it with the `managed` key set to `true`.
-Set the `project` key in your `cloud` configuration to the value of your
-project ID, obtained via the [dashboard](https://dashboard.sqlc.dev).
+Access to a running database server is required. Add a connection string to the `servers` mapping.
```yaml
version: '2'
-cloud:
- project: ''
+servers:
+- engine: postgresql
+ uri: "postgres://localhost:5432/postgres?sslmode=disable"
sql:
- schema: schema.sql
queries: query.sql
@@ -40,13 +34,19 @@ sql:
managed: true
```
-### Authentication
+An environment variable can also be used via the `${}` syntax.
-`sqlc` expects to find a valid auth token in the value of the `SQLC_AUTH_TOKEN`
-environment variable. You can create an auth token via the [dashboard](https://dashboard.sqlc.dev).
-
-```shell
-export SQLC_AUTH_TOKEN=sqlc_xxxxxxxx
+```yaml
+version: '2'
+servers:
+- engine: postgresql
+ uri: ${DATABASE_URI}
+sql:
+- schema: schema.sql
+ queries: query.sql
+ engine: postgresql
+ database:
+ managed: true
```
## Improving codegen
@@ -61,8 +61,9 @@ on a per-query basis to speed up future codegen runs. Here's a minimal working c
```yaml
version: '2'
-cloud:
- project: ''
+servers:
+- engine: postgresql
+ uri: "postgres://localhost:5432/postgres?sslmode=disable"
sql:
- schema: schema.sql
queries: query.sql
@@ -86,8 +87,9 @@ to ensure the query is valid. Here's a minimal working configuration:
```yaml
version: '2'
-cloud:
- project: ''
+servers:
+- engine: postgresql
+ uri: "postgres://localhost:5432/postgres?sslmode=disable"
sql:
- schema: schema.sql
queries: query.sql
@@ -97,35 +99,3 @@ sql:
rules:
- sqlc/db-prepare
```
-
-## With other tools
-
-With managed databases configured, `sqlc createdb` will create a hosted ephemeral database with your
-schema and write the database's connection URI as a string to standard output (stdout). This allows you to use
-ephemeral databases with other tools that understand database connection strings.
-
-In the simplest case, you can use psql to poke around:
-
-```shell
-psql $(sqlc createdb)
-```
-
-Or if you're tired of waiting for us to resolve https://github.com/sqlc-dev/sqlc/issues/296,
-you can create databases ad hoc to use with pgtyped:
-
-```shell
-DATABASE_URL=$(sqlc createdb) npx pgtyped -c config.json
-```
-
-Here's a minimal working configuration if all you need to use is `sqlc createdb`:
-
-```yaml
-version: '2'
-cloud:
- project: ''
-sql:
-- schema: schema.sql
- engine: postgresql
- database:
- managed: true
-```
diff --git a/docs/howto/named_parameters.md b/docs/howto/named_parameters.md
index c4643bd8e3..0837c70c15 100644
--- a/docs/howto/named_parameters.md
+++ b/docs/howto/named_parameters.md
@@ -1,6 +1,6 @@
# Naming parameters
-sqlc tried to generate good names for positional parameters, but sometimes it
+sqlc tries to generate good names for positional parameters, but sometimes it
lacks enough context. The following SQL generates parameters with less than
ideal names:
@@ -46,6 +46,10 @@ type UpdateAuthorNameParams struct {
If the `sqlc.arg()` syntax is too verbose for your taste, you can use the `@`
operator as a shortcut.
+```{note}
+The `@` operator as a shortcut for `sqlc.arg()` is not supported in MySQL.
+```
+
```sql
-- name: UpsertAuthorName :one
UPDATE author
diff --git a/docs/howto/overrides.md b/docs/howto/overrides.md
index 9fd91bc082..5a7fc39610 100644
--- a/docs/howto/overrides.md
+++ b/docs/howto/overrides.md
@@ -40,6 +40,9 @@ Each element in the `overrides` list has the following keys:
- `go_struct_tag`:
- A reflect-style struct tag to use in generated code, e.g. `a:"b" x:"y,z"`.
If you want `json` or `db` tags for all fields, use `emit_json_tags` or `emit_db_tags` instead.
+- `unsigned`:
+ - If `true`, sqlc will apply this override when a numeric db_type is unsigned.
+ Note that this has no effect on `column` overrides. Defaults to `false`.
- `nullable`:
- If `true`, sqlc will apply this override when a column is nullable.
Otherwise `sqlc` will apply this override when a column is non-nullable.
diff --git a/docs/howto/push.md b/docs/howto/push.md
index 78223d2e40..337e127513 100644
--- a/docs/howto/push.md
+++ b/docs/howto/push.md
@@ -45,7 +45,17 @@ The output is the files `sqlc` would have sent without the `--dry-run` flag.
Once you're ready to push, remove the `--dry-run` flag.
```shell
-sqlc push
+$ sqlc push
+```
+
+### Tags
+
+You can provide tags to associate with a push, primarily as a convenient reference when using `sqlc verify` with the `against` argument.
+
+Tags only refer to a single push, so if you pass an existing tag to `push` it will overwrite the previous reference.
+
+```shell
+$ sqlc push --tag main
```
### Annotations
diff --git a/docs/howto/rename.md b/docs/howto/rename.md
index 0085de4e05..dbc7f94aea 100644
--- a/docs/howto/rename.md
+++ b/docs/howto/rename.md
@@ -67,6 +67,18 @@ rename:
author: Writer
```
+```yaml
+version: "2"
+sql:
+ - engine: postgresql
+ queries: query.sql
+ schema: query.sql
+overrides:
+ go:
+ rename:
+ author: Writer
+```
+
```go
package db
diff --git a/docs/howto/select.md b/docs/howto/select.md
index cea3900b68..4c5ae269a8 100644
--- a/docs/howto/select.md
+++ b/docs/howto/select.md
@@ -125,7 +125,7 @@ SELECT bio, birth_year FROM authors
WHERE id = $1;
```
-When selecting a single column, only that value that returned. The `GetBioForAuthor`
+When selecting a single column, only that value is returned. The `GetBioForAuthor`
method takes a single `int` as an argument and returns a `string` and an
`error`.
diff --git a/docs/howto/transactions.md b/docs/howto/transactions.md
index bc93ebd661..9ed61b6a4d 100644
--- a/docs/howto/transactions.md
+++ b/docs/howto/transactions.md
@@ -57,6 +57,7 @@ func (q *Queries) WithTx(tx *sql.Tx) *Queries {
You'd use it like this:
```go
+// Using `github/lib/pq` as the driver.
func bumpCounter(ctx context.Context, db *sql.DB, queries *tutorial.Queries, id int32) error {
tx, err := db.Begin()
if err != nil {
@@ -76,4 +77,25 @@ func bumpCounter(ctx context.Context, db *sql.DB, queries *tutorial.Queries, id
}
return tx.Commit()
}
+
+// Using `github.com/jackc/pgx/v5` as the driver.
+func bumpCounter(ctx context.Context, db *pgx.Conn, queries *tutorial.Queries, id int32) error {
+ tx, err := db.Begin(ctx)
+ if err != nil {
+ return err
+ }
+ defer tx.Rollback(ctx)
+ qtx := queries.WithTx(tx)
+ r, err := qtx.GetRecord(ctx, id)
+ if err != nil {
+ return err
+ }
+ if err := qtx.UpdateRecord(ctx, tutorial.UpdateRecordParams{
+ ID: r.ID,
+ Counter: r.Counter + 1,
+ }); err != nil {
+ return err
+ }
+ return tx.Commit(ctx)
+}
```
\ No newline at end of file
diff --git a/docs/howto/verify.md b/docs/howto/verify.md
index fc83e7db39..62da44013d 100644
--- a/docs/howto/verify.md
+++ b/docs/howto/verify.md
@@ -1,9 +1,5 @@
# `verify` - Verifying schema changes
-```{note}
-`verify` is powered by [sqlc Cloud](https://dashboard.sqlc.dev). Sign up for [free](https://dashboard.sqlc.dev) today.
-```
-
*Added in v1.24.0*
Schema updates and poorly-written queries often bring down production databases. That’s bad.
@@ -81,7 +77,6 @@ environment variable. You can create an auth token via the [dashboard](https://d
export SQLC_AUTH_TOKEN=sqlc_xxxxxxxx
```
-
## Expected workflow
Using `sqlc verify` requires pushing your queries and schema to sqlc Cloud. When
@@ -90,5 +85,21 @@ queries as well. For example, we run `sqlc push` after any change has been
merged into our `main` branch on Github, as we deploy every commit to
production.
+```shell
+$ sqlc push --tag main
+```
+
Locally or in pull requests, run `sqlc verify` to check that existing queries
continue to work with your current database schema.
+
+```shell
+$ sqlc verify --against main
+```
+
+## Picking a tag
+
+Without an `against` argument, `verify` will run its analysis of the provided schema using your most-recently pushed queries. We suggest using the `against` argument to explicitly select a set of queries for comparison.
+
+```shell
+$ sqlc verify --against [tag]
+```
diff --git a/docs/howto/vet.md b/docs/howto/vet.md
index ff6ff3ceb0..3f6c6a025b 100644
--- a/docs/howto/vet.md
+++ b/docs/howto/vet.md
@@ -259,7 +259,24 @@ rules:
### Opting-out of lint rules
For any query, you can tell `sqlc vet` not to evaluate lint rules using the
-`@sqlc-vet-disable` query annotation.
+`@sqlc-vet-disable` query annotation. The annotation accepts a list of rules to ignore.
+
+```sql
+/* name: GetAuthor :one */
+/* @sqlc-vet-disable sqlc/db-prepare no-pg */
+SELECT * FROM authors
+WHERE id = ? LIMIT 1;
+```
+The rules can also be split across lines.
+```sql
+/* name: GetAuthor :one */
+/* @sqlc-vet-disable sqlc/db-prepare */
+/* @sqlc-vet-disable no-pg */
+SELECT * FROM authors
+WHERE id = ? LIMIT 1;
+```
+
+To skip all rules for a query, you can provide the `@sqlc-vet-disable` annotation without any parameters.
```sql
/* name: GetAuthor :one */
diff --git a/docs/index.rst b/docs/index.rst
index f71a8c5866..f914f3ec41 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -42,6 +42,7 @@ code ever again.
:hidden:
howto/generate.md
+ howto/push.md
howto/verify.md
howto/vet.md
diff --git a/docs/overview/install.md b/docs/overview/install.md
index b9340cd225..0d14c21a0d 100644
--- a/docs/overview/install.md
+++ b/docs/overview/install.md
@@ -14,20 +14,14 @@ brew install sqlc
sudo snap install sqlc
```
-## go install
+## go install
-### Go >= 1.17:
+Installing recent versions of sqlc requires Go 1.21+.
```
go install github.com/sqlc-dev/sqlc/cmd/sqlc@latest
```
-### Go < 1.17:
-
-```
-go get github.com/sqlc-dev/sqlc/cmd/sqlc
-```
-
## Docker
```
@@ -48,10 +42,10 @@ docker run --rm -v "%cd%:/src" -w /src sqlc/sqlc generate
## Downloads
-Get pre-built binaries for *v1.24.0*:
+Get pre-built binaries for *v1.29.0*:
-- [Linux](https://downloads.sqlc.dev/sqlc_1.24.0_linux_amd64.tar.gz)
-- [macOS](https://downloads.sqlc.dev/sqlc_1.24.0_darwin_amd64.zip)
-- [Windows](https://downloads.sqlc.dev/sqlc_1.24.0_windows_amd64.zip)
+- [Linux](https://downloads.sqlc.dev/sqlc_1.29.0_linux_amd64.tar.gz)
+- [macOS](https://downloads.sqlc.dev/sqlc_1.29.0_darwin_amd64.zip)
+- [Windows](https://downloads.sqlc.dev/sqlc_1.29.0_windows_amd64.zip)
See [downloads.sqlc.dev](https://downloads.sqlc.dev/) for older versions.
diff --git a/docs/reference/changelog.md b/docs/reference/changelog.md
index b01f25ddd2..9adbd0e442 100644
--- a/docs/reference/changelog.md
+++ b/docs/reference/changelog.md
@@ -1,6 +1,342 @@
# Changelog
All notable changes to this project will be documented in this file.
+(v1-29-0)=
+## [1.29.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.29.0)
+Released 2025-04-14
+
+### Bug Fixes
+
+- (docs) Correct spelling and grammar (#3645)
+- (dbmanager) Use correct SQL to drop databases (#3640)
+- (compiler) Don't crash on WHERE x IN (... UNION ...) (#3652)
+- (golang) Escape q field name (#3647)
+- Postgresql alter materialized view is not registered to statements (#3728)
+- Do not close wazero module on error (#3758) (#3759)
+- (pgx) Do not wrap nil error (#3913)
+- (migrations) Normalize case for migration statement for all cases (#3919)
+
+### Documentation
+
+- Add missing documentation about copyfrom (#3583)
+- Add sqlc-gen-from-template (#3601)
+- Add changelog for 1.28.0 (#3797)
+- Add PHP DBAL plugin (#3813)
+- Fix PostGIS function name (#3829)
+- Add Zig plugin (#3824)
+- Add link to tandemdude/sqlc-gen-java (#3819)
+
+### Features
+
+- (docs) How-to use transactions with pgx (#3557)
+- (quickdb) Remove unused func (#3576)
+- (vet) Allow selective disabling of rules per query (#3620)
+- (dolphin) Upgrade to latest TiDB parser (#3733)
+- (mysql) Add a test for VECTOR column type (#3734)
+- (cli) Bump version from 1.27.0 to 1.28.0 (#3798)
+- (codegen/golang) Add an option to wrap query errors that includes query name (#3876)
+
+### Miscellaneous Tasks
+
+- Remove the triage label (#3527)
+- Upgrade to Go 1.22.8 to silence vulncheck (#3646)
+- Update sqlc-gen-java supported engines (#3843)
+
+### Build
+
+- (deps) Bump myst-parser (#3530)
+- (deps) Bump golang from 1.22.5 to 1.22.6 (#3532)
+- (deps) Bump modernc.org/sqlite (#3537)
+- (deps) Bump the production-dependencies group across 1 directory with 4 updates (#3566)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3565)
+- (deps) Bump golang from 1.22.6 to 1.23.0 (#3546)
+- (deps) Bump golang from 1.23.0 to 1.23.1 (#3586)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3644)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3642)
+- (deps) Bump sphinx-rtd-theme (#3648)
+- (deps) Bump pyparsing (#3653)
+- (deps) Bump markupsafe (#3666)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3707)
+- (deps) Bump golang from 1.23.2 to 1.23.3 (#3691)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3721)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3731)
+- (deps) Bump certifi in /docs in the production-dependencies group (#3748)
+- (deps) Bump golang.org/x/crypto from 0.27.0 to 0.31.0 (#3740)
+- (deps) Bump golang from 1.23.3 to 1.23.4 (#3735)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3749)
+- (deps) Bump the production-dependencies group with 2 updates (#3753)
+- (deps) Bump the production-dependencies group across 1 directory with 3 updates (#3764)
+- (deps) Bump the production-dependencies group (#3761)
+- (deps) Bump jinja2 from 3.1.4 to 3.1.5 in /docs (#3762)
+- (deps) Bump google.golang.org/protobuf (#3776)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3777)
+- (deps) Bump google.golang.org/grpc (#3784)
+- (deps) Bump golang from 1.23.4 to 1.23.5 (#3791)
+- (deps) Bump the production-dependencies group with 2 updates (#3789)
+- Upgrade to Go 1.23.5 (#3795)
+- (deps) Bump golang.org/x/net from 0.30.0 to 0.33.0 (#3796)
+- (deps) Bump golang from 1.23.5 to 1.23.6 (#3822)
+- Use govulncheck action (#3831)
+- (deps) Bump the production-dependencies group across 1 directory with 3 updates (#3817)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3826)
+- (deps) Bump golang from 1.23.6 to 1.24.0 (#3842)
+- (deps) Bump myst-parser (#3841)
+- (deps) Bump modernc.org/sqlite (#3846)
+- (deps) Bump golang from 1.24.0 to 1.24.1 (#3870)
+- (deps) Bump jinja2 in /docs in the production-dependencies group (#3872)
+- Upgrade to wazero@v1.9.0 (#3887)
+- Upgrade to Go 1.24.1 (#3892)
+- Upgrade to latest version of MySQL parser (#3893)
+- (deps) Bump pyparsing (#3890)
+- (deps) Bump golang.org/x/net from 0.33.0 to 0.37.0 (#3894)
+- (deps) Bump the production-dependencies group across 1 directory with 8 updates (#3896)
+- (deps) Bump github.com/jackc/pgx/v5 (#3898)
+- (deps) Bump the production-dependencies group (#3899)
+- (deps) Bump modernc.org/sqlite (#3905)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3914)
+- (deps) Bump urllib3 in /docs in the production-dependencies group (#3926)
+- (deps) Bump golang from 1.24.1 to 1.24.2 (#3915)
+- (deps) Bump the production-dependencies group across 1 directory with 3 updates (#3923)
+- (deps) Upgrade github.com/wasilibs/go-pgquery (#3927)
+
+(v1-28-0)=
+## [1.28.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.28.0)
+Released 2025-01-20
+
+### Features
+
+- (mysql) Add a test for VECTOR column type (#3734)
+- (quickdb) Remove unused func (#3576)
+- (vet) Allow selective disabling of rules per query (#3620)
+- (dolphin) Upgrade to latest TiDB parser (#3733)
+
+### Bug Fixes
+
+- (dbmanager) Use correct SQL to drop databases (#3640)
+- (compiler) Don't crash on WHERE x IN (... UNION ...) (#3652)
+- (golang) Escape q field name (#3647)
+- Postgresql alter materialized view is not registered to statements (#3728)
+- Do not close wazero module on error (#3758) (#3759)
+
+### Documentation
+
+- How-to use transactions with pgx (#3557)
+- Add missing documentation about copyfrom (#3583)
+- Add sqlc-gen-from-template (#3601)
+- Correct spelling and grammar (#3645)
+
+### Miscellaneous Tasks
+
+- Remove the triage label (#3527)
+- Upgrade to Go 1.22.8 to silence vulncheck (#3646)
+
+### Build
+
+- (deps) Bump myst-parser (#3530)
+- (deps) Bump golang from 1.22.5 to 1.22.6 (#3532)
+- (deps) Bump modernc.org/sqlite (#3537)
+- (deps) Bump the production-dependencies group across 1 directory with 4 updates (#3566)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3565)
+- (deps) Bump golang from 1.22.6 to 1.23.0 (#3546)
+- (deps) Bump golang from 1.23.0 to 1.23.1 (#3586)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3644)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3642)
+- (deps) Bump sphinx-rtd-theme (#3648)
+- (deps) Bump pyparsing (#3653)
+- (deps) Bump markupsafe (#3666)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3707)
+- (deps) Bump golang from 1.23.2 to 1.23.3 (#3691)
+- (deps) Bump the production-dependencies group across 1 directory with 5 updates (#3721)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3731)
+- (deps) Bump certifi in /docs in the production-dependencies group (#3748)
+- (deps) Bump golang.org/x/crypto from 0.27.0 to 0.31.0 (#3740)
+- (deps) Bump golang from 1.23.3 to 1.23.4 (#3735)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3749)
+- (deps) Bump the production-dependencies group with 2 updates (#3753)
+- (deps) Bump the production-dependencies group across 1 directory with 3 updates (#3764)
+- (deps) Bump the production-dependencies group (#3761)
+- (deps) Bump jinja2 from 3.1.4 to 3.1.5 in /docs (#3762)
+- (deps) Bump google.golang.org/protobuf (#3776)
+- (deps) Bump the production-dependencies group across 1 directory with 2 updates (#3777)
+- (deps) Bump google.golang.org/grpc (#3784)
+- (deps) Bump golang from 1.23.4 to 1.23.5 (#3791)
+- (deps) Bump the production-dependencies group with 2 updates (#3789)
+- Upgrade to Go 1.23.5 (#3795)
+
+(v1-27-0)=
+## [1.27.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.27.0)
+Released 2024-08-05
+
+### Bug Fixes
+
+- (dbmanager) Add leading slash to db uri path rewrite (#3493)
+- (verify) Include database engine in request (#3522)
+
+### Features
+
+- (golang) Add initialisms configuration (#3308)
+- (compiler) Support subqueries in the FROM clause (second coming) (#3310)
+- Managed databases with any accessible server (#3421)
+- (vet) Use new dbmanager client (#3423)
+- (verify) Update verify to work with managed databases (#3425)
+
+### Documentation
+
+- Fix typo in config (#3358)
+- Resolve a typo in configuration keys (#3349)
+- Add sponsorship information to README (#3413)
+- Update the language-support to include C# (#3408)
+- Add migration guide for hosted managed databases (#3417)
+- Fix readme links (#3424)
+- Update the managed db and verify documentation (#3426)
+- Add sponsor image (#3428)
+- Add Ruby as supported language (#3487)
+- Update migrating-to-sqlc-gen-kotlin.md (#3454)
+- Fix typo in comment (#3316)
+- Fix deprecated build tag format (#3361)
+
+### Testing
+
+- (endtoend) Re-use databases when possible (#3315)
+- Enabled MySQL database (#3318)
+- Remove internal/sqltest/hosted package (#3521)
+
+(v1-26-0)=
+## [1.26.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.26.0)
+Released 2024-03-28
+
+### Release notes
+
+This release is mainly a bug fix release. It also includes an [important security fix](https://github.com/sqlc-dev/sqlc/issues/3194) for users using output plugins.
+
+### Changes
+
+#### Bug Fixes
+
+- (docker) Use distroless base image instead of scratch (#3111)
+- (generate) Ensure files are created inside output directory (#3195)
+- (mysql) BREAKING: Use `int16` for MySQL `SMALLINT` and `YEAR` (#3106)
+- (mysql) BREAKING: Use `int8` for MySQL TINYINT (#3298)
+- (mysql) Variables not resolving in ORDER BY statements (#3115)
+- (opts) Validate SQL package and driver options (#3241)
+- (postgres/batch) Ignore query_parameter_limit for batches
+- (scripts) Remove deprecated test output regeneration script (#3105)
+- (sqlite) Correctly skip unknown statements (#3239)
+
+#### Documentation
+
+- (postgres) Add instructions for PostGIS/GEOS (#3182)
+- Improve details on TEXT (#3247)
+
+#### Features
+
+- (generate) Avoid generating empty Go imports (#3135)
+- (mysql) Add NEXTVAL() to the MySQL catalog (#3147)
+- (mysql) Support json.RawMessage for LOAD DATA INFILE (#3099)
+
+#### Build
+
+- (deps) Bump github.com/jackc/pgx/v5 to 5.5.5 (#3259)
+- (deps) Bump modernc.org/sqlite to 1.29.5 (#3200)
+- (deps) Bump github.com/go-sql-driver/mysql to 1.8.0 (#3257)
+- (deps) Bump github.com/tetratelabs/wazero to 1.7.0 (#3096)
+- (deps) Bump github.com/pganalyze/pg_query_go to v5 (#3096)
+
+
+(v1-25-0)=
+## [1.25.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.25.0)
+Released 2024-01-03
+
+### Release notes
+
+#### Add tags to push and verify
+
+You can add tags when [pushing](../howto/push.md) schema and queries to [sqlc Cloud](https://dashboard.sqlc.dev). Tags operate like git tags, meaning you can overwrite previously-pushed tag values. We suggest tagging pushes to associate them with something relevant from your environment, e.g. a git tag or branch name.
+
+```
+$ sqlc push --tag v1.0.0
+```
+
+Once you've created a tag, you can refer to it when [verifying](../howto/verify.md) changes, allowing you
+to compare the existing schema against a known set of previous queries.
+
+```
+$ sqlc verify --against v1.0.0
+```
+
+#### C-ya, `cgo`
+
+Over the last month, we've switched out a few different modules to remove our reliance on [cgo](https://go.dev/blog/cgo). Previously, we needed cgo for three separate functions:
+
+- Parsing PostgreSQL queries with [pganalyze/pg_query_go](https://github.com/pganalyze/pg_query_go)
+- Running SQLite databases with [mattn/go-sqlite3](https://github.com/mattn/go-sqlite3)
+- Executing WASM / WASI code with [bytecodealliance/wasmtime-go](https://github.com/bytecodealliance/wasmtime-go)
+
+With the help of the community, we found cgo-free alternatives for each module:
+
+- Parsing PostgreSQL queries, now using [wasilibs/go-pgquery](https://github.com/wasilibs/go-pgquery)
+- Running SQLite databases, now using [modernc.org/sqlite](https://gitlab.com/cznic/sqlite)
+- Executing WASM / WASI code, now using [tetratelabs/wazero](https://github.com/tetratelabs/wazero)
+
+For the first time, Windows users can enjoy full PostgreSQL support without using [WSL](https://learn.microsoft.com/en-us/windows/wsl/about). It's a Christmas miracle!
+
+If you run into any issues with the updated dependencies, please [open an issue](https://github.com/sqlc-dev/sqlc/issues).
+
+### Changes
+
+#### Bug Fixes
+
+- (codegen) Wrong yaml annotation in go codegen options for output_querier_file_name (#3006)
+- (codegen) Use derived ArrayDims instead of deprecated attndims (#3032)
+- (codegen) Take the maximum array dimensions (#3034)
+- (compiler) Skip analysis of queries without a `name` annotation (#3072)
+- (codegen/golang) Don't import `"strings"` for `sqlc.slice()` with pgx (#3073)
+
+### Documentation
+
+- Add name to query set configuration (#3011)
+- Add a sidebar link for `push`, add Go plugin link (#3023)
+- Update banner for sqlc-gen-typescript (#3036)
+- Add strict_order_by in doc (#3044)
+- Re-order the migration tools list (#3064)
+
+### Features
+
+- (analyzer) Return zero values when encountering unexpected ast nodes (#3069)
+- (codegen/go) add omit_sqlc_version to Go code generation (#3019)
+- (codgen/go) Add `emit_sql_as_comment` option to Go code plugin (#2735)
+- (plugins) Use wazero instead of wasmtime (#3042)
+- (push) Add tag support (#3074)
+- (sqlite) Support emit_pointers_for_null_types (#3026)
+
+### Testing
+
+- (endtoend) Enable for more build targets (#3041)
+- (endtoend) Run MySQL and PostgreSQL locally on the runner (#3095)
+- (typescript) Test against sqlc-gen-typescript (#3046)
+- Add tests for omit_sqlc_version (#3020)
+- Split schema and query for test (#3094)
+
+### Build
+
+- (deps) Bump idna from 3.4 to 3.6 in /docs (#3010)
+- (deps) Bump sphinx-rtd-theme from 1.3.0 to 2.0.0 in /docs (#3016)
+- (deps) Bump golang from 1.21.4 to 1.21.5 (#3043)
+- (deps) Bump actions/setup-go from 4 to 5 (#3047)
+- (deps) Bump github.com/jackc/pgx/v5 from 5.5.0 to 5.5.1 (#3050)
+- (deps) Upgrade to latest version of github.com/wasilibs/go-pgquery (#3052)
+- (deps) Bump google.golang.org/grpc from 1.59.0 to 1.60.0 (#3053)
+- (deps) Bump babel from 2.13.1 to 2.14.0 in /docs (#3055)
+- (deps) Bump actions/upload-artifact from 3 to 4 (#3061)
+- (deps) Bump modernc.org/sqlite from 1.27.0 to 1.28.0 (#3062)
+- (deps) Bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#3068)
+- (deps) Bump google.golang.org/grpc from 1.60.0 to 1.60.1 (#3070)
+- (deps) Bump google.golang.org/protobuf from 1.31.0 to 1.32.0 (#3079)
+- (deps) Bump github.com/tetratelabs/wazero from 1.5.0 to 1.6.0 (#3096)
+- (sqlite) Update to antlr 4.13.1 (#3086)
+- (sqlite) Disable modernc for WASM (#3048)
+- (sqlite) Switch from mattn/go-sqlite3 to modernc.org/sqlite (#3040)
+
(v1-24-0)=
## [1.24.0](https://github.com/sqlc-dev/sqlc/releases/tag/v1.24.0)
Released 2023-11-22
diff --git a/docs/reference/cli.md b/docs/reference/cli.md
index e5872cd2d3..fc244da3ae 100644
--- a/docs/reference/cli.md
+++ b/docs/reference/cli.md
@@ -1,17 +1,18 @@
# CLI
-```
+```sh
Usage:
sqlc [command]
Available Commands:
compile Statically check SQL for syntax and type errors
completion Generate the autocompletion script for the specified shell
+ createdb Create an ephemeral database
diff Compare the generated files to the existing files
- generate Generate Go code from SQL
+ generate Generate source code from SQL
help Help about any command
init Create an empty sqlc.yaml settings file
- push Push schema, queries, and configuration for this project
+ push Push the schema, queries, and configuration for this project
verify Verify schema, queries, and configuration for this project
version Print the sqlc version number
vet Vet examines queries
diff --git a/docs/reference/config.md b/docs/reference/config.md
index e4e012679b..e6e690b6a0 100644
--- a/docs/reference/config.md
+++ b/docs/reference/config.md
@@ -34,6 +34,8 @@ sql:
Each mapping in the `sql` collection has the following keys:
+- `name`:
+ - An human-friendly identifier for this query set. Optional.
- `engine`:
- One of `postgresql`, `mysql` or `sqlite`.
- `schema`:
@@ -48,10 +50,12 @@ Each mapping in the `sql` collection has the following keys:
- A mapping to configure database connections. See [database](#database) for the supported keys.
- `rules`:
- A collection of rule names to run via `sqlc vet`. See [rules](#rules) for configuration options.
-- `analzyer`:
+- `analyzer`:
- A mapping to configure query analysis. See [analyzer](#analyzer) for the supported keys.
- `strict_function_checks`
- If true, return an error if a called SQL function does not exist. Defaults to `false`.
+- `strict_order_by`
+ - If true, return an error if a order by column is ambiguous. Defaults to `true`.
### codegen
@@ -131,6 +135,8 @@ The `gen` mapping supports the following keys:
- Output directory for generated code.
- `sql_package`:
- Either `pgx/v4`, `pgx/v5` or `database/sql`. Defaults to `database/sql`.
+- `sql_driver`:
+ - Either `github.com/jackc/pgx/v4`, `github.com/jackc/pgx/v5`, `github.com/lib/pq` or `github.com/go-sql-driver/mysql`. No defaults. Required if query annotation `:copyfrom` is used.
- `emit_db_tags`:
- If true, add DB tags to generated structs. Defaults to `false`.
- `emit_prepared_queries`:
@@ -152,15 +158,19 @@ The `gen` mapping supports the following keys:
- `emit_methods_with_db_argument`:
- If true, generated methods will accept a DBTX argument instead of storing a DBTX on the `*Queries` struct. Defaults to `false`.
- `emit_pointers_for_null_types`:
- - If true and `sql_package` is set to `pgx/v4` or `pgx/v5`, generated types for nullable columns are emitted as pointers (ie. `*string`) instead of `database/sql` null types (ie. `NullString`). Defaults to `false`.
+ - If true, generated types for nullable columns are emitted as pointers (ie. `*string`) instead of `database/sql` null types (ie. `NullString`). Currently only supported for PostgreSQL if `sql_package` is `pgx/v4` or `pgx/v5`, and for SQLite. Defaults to `false`.
- `emit_enum_valid_method`:
- If true, generate a Valid method on enum types,
indicating whether a string is a valid enum value.
- `emit_all_enum_values`:
- If true, emit a function per enum type
that returns all valid enum values.
+- `emit_sql_as_comment`:
+ - If true, emits the SQL statement as a code-block comment above the generated function, appending to any existing comments. Defaults to `false`.
- `build_tags`:
- If set, add a `//go:build ` directive at the beginning of each generated Go file.
+- `initialisms`:
+ - An array of [initialisms](https://google.github.io/styleguide/go/decisions.html#initialisms) to upper-case. For example, `app_id` becomes `AppID`. Defaults to `["id"]`.
- `json_tags_id_uppercase`:
- If true, "Id" in json tags will be uppercase. If false, will be camelcase. Defaults to `false`
- `json_tags_case_style`:
@@ -263,6 +273,8 @@ Each mapping in the `plugins` collection has the following keys:
- `process`: A mapping with a single `cmd` key
- `cmd`:
- The executable to call when using this plugin
+ - `format`:
+ - The format expected. Supports `json` and `protobuf` formats. Defaults to `protobuf`.
- `wasm`: A mapping with a two keys `url` and `sha256`
- `url`:
- The URL to fetch the WASM file. Supports the `https://` or `file://` schemes.
diff --git a/docs/reference/datatypes.md b/docs/reference/datatypes.md
index 4dfade11a5..bb3d8168b6 100644
--- a/docs/reference/datatypes.md
+++ b/docs/reference/datatypes.md
@@ -62,7 +62,7 @@ type Author struct {
## Enums
-PostgreSQL [enums](https://www.postgresql.org/docs/current/arrays.html) are
+PostgreSQL [enums](https://www.postgresql.org/docs/current/datatype-enum.html) are
mapped to an aliased string type.
```sql
@@ -158,8 +158,8 @@ For MySQL, there is no native `uuid` data type. When using `UUID_TO_BIN` to stor
## JSON
By default, sqlc will generate the `[]byte`, `pgtype.JSON` or `json.RawMessage` for JSON column type.
-But if you use the `pgx/v5` sql package then you can specify a some struct instead of default type.
-The `pgx` implementation will marshall/unmarshall the struct automatically.
+But if you use the `pgx/v5` sql package then you can specify a struct instead of default type.
+The `pgx` implementation will marshal/unmarshal the struct automatically.
```go
package dto
@@ -204,10 +204,81 @@ type Book struct {
}
```
+## TEXT
+
+In PostgreSQL, when you have a column with the TEXT type, sqlc will map it to a Go string by default. This default mapping applies to `TEXT` columns that are not nullable. However, for nullable `TEXT` columns, sqlc maps them to `pgtype.Text` when using the pgx/v5 driver. This distinction is crucial for developers looking to handle null values appropriately in their Go applications.
+
+To accommodate nullable strings and map them to `*string` in Go, you can use the `emit_pointers_for_null_types` option in your sqlc configuration. This option ensures that nullable SQL columns are represented as pointer types in Go, allowing for a clear distinction between null and non-null values. Another way to do this is by passing the option `pointer: true` when you are overriding the `TEXT` datatype in you sqlc config file.
+
## Geometry
### PostGIS
+#### Using `github.com/twpayne/go-geos` (pgx/v5 only)
+
+sqlc can be configured to use the [geos](https://github.com/twpayne/go-geos)
+package for working with PostGIS geometry types in [GEOS](https://libgeos.org/).
+
+There are three steps:
+
+1. Configure sqlc to use `*github.com/twpayne/go-geos.Geom` for geometry types.
+2. Call `github.com/twpayne/pgx-geos.Register` on each
+ `*github.com/jackc/pgx/v5.Conn`.
+3. Annotate your SQL with `::geometry` typecasts, if needed.
+
+```sql
+-- Multipolygons in British National Grid (epsg:27700)
+create table shapes(
+ id serial,
+ name varchar,
+ geom geometry(Multipolygon, 27700)
+);
+
+-- name: GetCentroids :many
+SELECT id, name, ST_Centroid(geom)::geometry FROM shapes;
+```
+
+```json
+{
+ "version": 2,
+ "gen": {
+ "go": {
+ "overrides": [
+ {
+ "db_type": "geometry",
+ "go_type": {
+ "import": "github.com/twpayne/go-geos",
+ "package": "geos",
+ "pointer": true,
+ "type": "Geom"
+ },
+ "nullable": true
+ }
+ ]
+ }
+ }
+}
+```
+
+```go
+import (
+ "github.com/twpayne/go-geos"
+ pgxgeos "github.com/twpayne/pgx-geos"
+)
+
+// ...
+
+config.AfterConnect = func(ctx context.Context, conn *pgx.Conn) error {
+ if err := pgxgeos.Register(ctx, conn, geos.NewContext()); err != nil {
+ return err
+ }
+ return nil
+}
+```
+
+
+#### Using `github.com/twpayne/go-geom`
+
sqlc can be configured to use the [geom](https://github.com/twpayne/go-geom)
package for working with PostGIS geometry types.
@@ -238,12 +309,12 @@ SELECT * FROM shapes;
{
"db_type": "geometry",
"go_type": "github.com/twpayne/go-geom.MultiPolygon"
- },
- {
+ },
+ {
"db_type": "geometry",
- "go_type": "github.com/twpayne/go-geom.MultiPolygon",
- "null": true
- }
+ "go_type": "github.com/twpayne/go-geom.MultiPolygon",
+ "nullable": true
+ }
]
}
```
diff --git a/docs/reference/language-support.rst b/docs/reference/language-support.rst
index 37a4e192b6..6826c32a7a 100644
--- a/docs/reference/language-support.rst
+++ b/docs/reference/language-support.rst
@@ -1,29 +1,45 @@
Database and language support
#############################
-======== =================== ============ ============ ===============
-Language Plugin MySQL PostgreSQL SQLite
-======== =================== ============ ============ ===============
-Go (built-in) Stable Stable Beta
-Kotlin `sqlc-gen-kotlin`_ Beta Beta Not implemented
-Python `sqlc-gen-python`_ Beta Beta Not implemented
-======== =================== ============ ============ ===============
+========== ======================= ============ ============ ===============
+Language Plugin MySQL PostgreSQL SQLite
+========== ======================= ============ ============ ===============
+Go (built-in) Stable Stable Beta
+Go `sqlc-gen-go`_ Stable Stable Beta
+Kotlin `sqlc-gen-kotlin`_ Beta Beta Not implemented
+Python `sqlc-gen-python`_ Beta Beta Not implemented
+TypeScript `sqlc-gen-typescript`_ Beta Beta Not implemented
+========== ======================= ============ ============ ===============
Community language support
**************************
-======== ============================== =============== ============ ===============
-Language Plugin MySQL PostgreSQL SQLite
-======== ============================== =============== ============ ===============
-F# `kaashyapan/sqlc-gen-fsharp`_ Not implemented Beta Beta
-======== ============================== =============== ============ ===============
+New languages can be added via :doc:`plugins <../guides/plugins>`.
+======== ================================= =============== =============== ===============
+Language Plugin MySQL PostgreSQL SQLite
+======== ================================= =============== =============== ===============
+C# `DaredevilOSS/sqlc-gen-csharp`_ Stable Stable Stable
+F# `kaashyapan/sqlc-gen-fsharp`_ N/A Beta Beta
+Java `tandemdude/sqlc-gen-java`_ Beta Beta N/A
+PHP `lcarilla/sqlc-plugin-php-dbal`_ Beta N/A N/A
+Ruby `DaredevilOSS/sqlc-gen-ruby`_ Beta Beta Beta
+Zig `tinyzimmer/sqlc-gen-zig`_ N/A Beta Beta
+[Any] `fdietze/sqlc-gen-from-template`_ Stable Stable Stable
+======== ================================= =============== =============== ===============
+
+.. _sqlc-gen-go: https://github.com/sqlc-dev/sqlc-gen-go
.. _kaashyapan/sqlc-gen-fsharp: https://github.com/kaashyapan/sqlc-gen-fsharp
.. _sqlc-gen-kotlin: https://github.com/sqlc-dev/sqlc-gen-kotlin
.. _sqlc-gen-python: https://github.com/sqlc-dev/sqlc-gen-python
+.. _sqlc-gen-typescript: https://github.com/sqlc-dev/sqlc-gen-typescript
+.. _DaredevilOSS/sqlc-gen-csharp: https://github.com/DaredevilOSS/sqlc-gen-csharp
+.. _DaredevilOSS/sqlc-gen-ruby: https://github.com/DaredevilOSS/sqlc-gen-ruby
+.. _fdietze/sqlc-gen-from-template: https://github.com/fdietze/sqlc-gen-from-template
+.. _lcarilla/sqlc-plugin-php-dbal: https://github.com/lcarilla/sqlc-plugin-php-dbal
+.. _tandemdude/sqlc-gen-java: https://github.com/tandemdude/sqlc-gen-java
+.. _tinyzimmer/sqlc-gen-zig: https://github.com/tinyzimmer/sqlc-gen-zig
Future language support
************************
-- `C# `_
-- `TypeScript `_
diff --git a/docs/reference/query-annotations.md b/docs/reference/query-annotations.md
index 0045f49fa7..4fabe05aae 100644
--- a/docs/reference/query-annotations.md
+++ b/docs/reference/query-annotations.md
@@ -222,3 +222,9 @@ func (b *CreateBookBatchResults) Close() error {
//...
}
```
+
+## `:copyfrom`
+
+__NOTE: This command is driver and package specific, see [how to insert](../howto/insert.md#using-copyfrom)
+
+This command is used to insert rows a lot faster than sequential inserts.
diff --git a/docs/requirements.txt b/docs/requirements.txt
index 10ec80f228..3bda4367e3 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -1,28 +1,27 @@
-Babel==2.13.1
-Jinja2==3.1.2
-MarkupSafe==2.1.3
-Pygments==2.17.2
-Sphinx==6.2.1
-alabaster==0.7.13
-certifi==2023.11.17
+Babel==2.17.0
+Jinja2==3.1.6
+MarkupSafe==3.0.2
+Pygments==2.19.1
+Sphinx==7.4.7
+certifi==2025.1.31
chardet==5.2.0
commonmark==0.9.1
-docutils==0.18.1
-idna==3.4
+docutils==0.20.1
+idna==3.10
imagesize==1.4.1
-myst-parser==2.0.0
-packaging==23.2
-pyparsing==3.1.1
-pytz==2023.3.post1
-requests==2.31.0
+myst-parser==4.0.1
+packaging==25.0
+pyparsing==3.2.3
+pytz==2025.2
+requests==2.32.3
snowballstemmer==2.2.0
sphinx-favicon==1.0.1
-sphinx-rtd-theme==1.3.0
-sphinxcontrib-applehelp==1.0.7
-sphinxcontrib-devhelp==1.0.5
-sphinxcontrib-htmlhelp==2.0.4
+sphinx-rtd-theme==3.0.2
+sphinxcontrib-applehelp==2.0.0
+sphinxcontrib-devhelp==2.0.0
+sphinxcontrib-htmlhelp==2.1.0
sphinxcontrib-jsmath==1.0.1
-sphinxcontrib-qthelp==1.0.6
-sphinxcontrib-serializinghtml==1.1.9
+sphinxcontrib-qthelp==2.0.0
+sphinxcontrib-serializinghtml==2.0.0
sphinxext-rediraffe==0.2.7
-urllib3==2.1.0
+urllib3==2.4.0
diff --git a/docs/tutorials/getting-started-mysql.md b/docs/tutorials/getting-started-mysql.md
index 7cf52972fc..1c436e7e6a 100644
--- a/docs/tutorials/getting-started-mysql.md
+++ b/docs/tutorials/getting-started-mysql.md
@@ -8,6 +8,8 @@ We'll generate Go code here, but other
naturally need the Go toolchain if you want to build and run a program with the
code sqlc generates, but sqlc itself has no dependencies.
+At the end, you'll push your SQL queries to [sqlc Cloud](https://dashboard.sqlc.dev/) for further insights and analysis.
+
## Setting up
Create a new directory called `sqlc-tutorial` and open it up.
@@ -181,3 +183,39 @@ database must have the `authors` table as defined in `schema.sql`.
You should now have a working program using sqlc's generated Go source code,
and hopefully can see how you'd use sqlc in your own real-world applications.
+
+## Query verification
+
+[sqlc Cloud](https://dashboard.sqlc.dev) provides additional verification, catching subtle bugs. To get started, create a
+[dashboard account](https://dashboard.sqlc.dev). Once you've signed in, create a
+project and generate an auth token. Add your project's ID to the `cloud` block
+to your sqlc.yaml.
+
+
+```yaml
+version: "2"
+cloud:
+ # Replace with your project ID from the sqlc Cloud dashboard
+ project: ""
+sql:
+ - engine: "mysql"
+ queries: "query.sql"
+ schema: "schema.sql"
+ gen:
+ go:
+ package: "tutorial"
+ out: "tutorial"
+```
+
+Replace `` with your project ID from the sqlc Cloud dashboard. It
+will look something like `01HA8SZH31HKYE9RR3N3N3TSJM`.
+
+And finally, set the `SQLC_AUTH_TOKEN` environment variable:
+
+```shell
+export SQLC_AUTH_TOKEN=""
+```
+
+```shell
+$ sqlc push --tag tutorial
+```
diff --git a/docs/tutorials/getting-started-postgresql.md b/docs/tutorials/getting-started-postgresql.md
index 2f67298969..a98c32ff37 100644
--- a/docs/tutorials/getting-started-postgresql.md
+++ b/docs/tutorials/getting-started-postgresql.md
@@ -8,12 +8,8 @@ We'll generate Go code here, but other
naturally need the Go toolchain if you want to build and run a program with the
code sqlc generates, but sqlc itself has no dependencies.
-We'll also rely on sqlc's [managed databases](../howto/managed-databases.md),
-which require a sqlc Cloud project and auth token. You can get those from
-the [sqlc Cloud dashboard](https://dashboard.sqlc.dev/). Managed databases are
-an optional feature that improves sqlc's query analysis in many cases, but you
-can turn it off simply by removing the `cloud` and `database` sections of your
-configuration.
+At the end, you'll push your SQL queries to [sqlc
+Cloud](https://dashboard.sqlc.dev/) for further insights and analysis.
## Setting up
@@ -31,15 +27,10 @@ following contents:
```yaml
version: "2"
-cloud:
- # Replace with your project ID from the sqlc Cloud dashboard
- project: ""
sql:
- engine: "postgresql"
queries: "query.sql"
schema: "schema.sql"
- database:
- managed: true
gen:
go:
package: "tutorial"
@@ -47,15 +38,6 @@ sql:
sql_package: "pgx/v5"
```
-Replace `` with your project ID from the sqlc Cloud dashboard. It
-will look something like `01HA8SZH31HKYE9RR3N3N3TSJM`.
-
-And finally, set the `SQLC_AUTH_TOKEN` environment variable:
-
-```shell
-export SQLC_AUTH_TOKEN=""
-```
-
## Schema and queries
sqlc needs to know your database schema and queries in order to generate code.
@@ -220,3 +202,47 @@ database must have the `authors` table as defined in `schema.sql`.
You should now have a working program using sqlc's generated Go source code,
and hopefully can see how you'd use sqlc in your own real-world applications.
+
+## Query verification
+
+[sqlc Cloud](https://dashboard.sqlc.dev) provides additional verification, catching subtle bugs. To get started, create a
+[dashboard account](https://dashboard.sqlc.dev). Once you've signed in, create a
+project and generate an auth token. Add your project's ID to the `cloud` block
+to your sqlc.yaml.
+
+```yaml
+version: "2"
+cloud:
+ # Replace with your project ID from the sqlc Cloud dashboard
+ project: ""
+sql:
+ - engine: "postgresql"
+ queries: "query.sql"
+ schema: "schema.sql"
+ gen:
+ go:
+ package: "tutorial"
+ out: "tutorial"
+ sql_package: "pgx/v5"
+```
+
+Replace `` with your project ID from the sqlc Cloud dashboard. It
+will look something like `01HA8SZH31HKYE9RR3N3N3TSJM`.
+
+And finally, set the `SQLC_AUTH_TOKEN` environment variable:
+
+```shell
+export SQLC_AUTH_TOKEN=""
+```
+
+```shell
+$ sqlc push --tag tutorial
+```
+
+In the sidebar, go to the "Queries" section to see your published queries. Run
+`verify` to ensure that previously published queries continue to work against
+updated database schema.
+
+```shell
+$ sqlc verify --against tutorial
+```
diff --git a/docs/tutorials/getting-started-sqlite.md b/docs/tutorials/getting-started-sqlite.md
index f855e41af6..b3c2a570df 100644
--- a/docs/tutorials/getting-started-sqlite.md
+++ b/docs/tutorials/getting-started-sqlite.md
@@ -128,7 +128,7 @@ import (
"log"
"reflect"
- _ "github.com/mattn/go-sqlite3"
+ _ "modernc.org/sqlite"
"tutorial.sqlc.dev/app/tutorial"
)
@@ -139,7 +139,7 @@ var ddl string
func run() error {
ctx := context.Background()
- db, err := sql.Open("sqlite3", ":memory:")
+ db, err := sql.Open("sqlite", ":memory:")
if err != nil {
return err
}
@@ -189,7 +189,7 @@ func main() {
Before this code will compile you'll need to fetch the relevant SQLite driver:
```shell
-go get github.com/mattn/go-sqlite3
+go get modernc.org/sqlite
go build ./...
```
diff --git a/examples/authors/mysql/db.go b/examples/authors/mysql/db.go
index 8f594a8b21..e2b0a86b13 100644
--- a/examples/authors/mysql/db.go
+++ b/examples/authors/mysql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/mysql/db_test.go b/examples/authors/mysql/db_test.go
index 589b22424a..96ec363f77 100644
--- a/examples/authors/mysql/db_test.go
+++ b/examples/authors/mysql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package authors
@@ -10,12 +9,12 @@ import (
_ "github.com/go-sql-driver/mysql"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestAuthors(t *testing.T) {
ctx := context.Background()
- uri := hosted.MySQL(t, []string{"schema.sql"})
+ uri := local.MySQL(t, []string{"schema.sql"})
sdb, err := sql.Open("mysql", uri)
if err != nil {
t.Fatal(err)
diff --git a/examples/authors/mysql/models.go b/examples/authors/mysql/models.go
index 2913c34951..c665426db7 100644
--- a/examples/authors/mysql/models.go
+++ b/examples/authors/mysql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/mysql/query.sql.go b/examples/authors/mysql/query.sql.go
index 8db63ffd88..c157ebd28b 100644
--- a/examples/authors/mysql/query.sql.go
+++ b/examples/authors/mysql/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/examples/authors/postgresql/db.go b/examples/authors/postgresql/db.go
index cc0471821d..7cdd263bbf 100644
--- a/examples/authors/postgresql/db.go
+++ b/examples/authors/postgresql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/postgresql/db_test.go b/examples/authors/postgresql/db_test.go
index bdcd90a547..0fdd8824be 100644
--- a/examples/authors/postgresql/db_test.go
+++ b/examples/authors/postgresql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package authors
@@ -10,12 +9,12 @@ import (
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgtype"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestAuthors(t *testing.T) {
ctx := context.Background()
- uri := hosted.PostgreSQL(t, []string{"schema.sql"})
+ uri := local.PostgreSQL(t, []string{"schema.sql"})
db, err := pgx.Connect(ctx, uri)
if err != nil {
t.Fatal(err)
diff --git a/examples/authors/postgresql/models.go b/examples/authors/postgresql/models.go
index f98d229ad9..a786490b52 100644
--- a/examples/authors/postgresql/models.go
+++ b/examples/authors/postgresql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/postgresql/query.sql.go b/examples/authors/postgresql/query.sql.go
index b7d611137c..1974fcad9e 100644
--- a/examples/authors/postgresql/query.sql.go
+++ b/examples/authors/postgresql/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/examples/authors/sqlc.yaml b/examples/authors/sqlc.yaml
index bf6cdb21a1..57f2319ea1 100644
--- a/examples/authors/sqlc.yaml
+++ b/examples/authors/sqlc.yaml
@@ -7,7 +7,7 @@ sql:
queries: postgresql/query.sql
engine: postgresql
database:
- managed: true
+ uri: "${VET_TEST_EXAMPLES_POSTGRES_AUTHORS}"
analyzer:
database: false
rules:
@@ -23,7 +23,7 @@ sql:
queries: mysql/query.sql
engine: mysql
database:
- managed: true
+ uri: "${VET_TEST_EXAMPLES_MYSQL_AUTHORS}"
rules:
- sqlc/db-prepare
# - mysql-query-too-costly
diff --git a/examples/authors/sqlite/db.go b/examples/authors/sqlite/db.go
index 8f594a8b21..e2b0a86b13 100644
--- a/examples/authors/sqlite/db.go
+++ b/examples/authors/sqlite/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/sqlite/db_test.go b/examples/authors/sqlite/db_test.go
index b07804b627..e10ce46069 100644
--- a/examples/authors/sqlite/db_test.go
+++ b/examples/authors/sqlite/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package authors
@@ -13,6 +12,7 @@ import (
func TestAuthors(t *testing.T) {
sdb, cleanup := sqltest.SQLite(t, []string{"schema.sql"})
+ defer sdb.Close()
defer cleanup()
ctx := context.Background()
diff --git a/examples/authors/sqlite/models.go b/examples/authors/sqlite/models.go
index 2913c34951..c665426db7 100644
--- a/examples/authors/sqlite/models.go
+++ b/examples/authors/sqlite/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/examples/authors/sqlite/query.sql.go b/examples/authors/sqlite/query.sql.go
index 8db63ffd88..c157ebd28b 100644
--- a/examples/authors/sqlite/query.sql.go
+++ b/examples/authors/sqlite/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/examples/batch/postgresql/batch.go b/examples/batch/postgresql/batch.go
index b4d50b9831..086a002485 100644
--- a/examples/batch/postgresql/batch.go
+++ b/examples/batch/postgresql/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package batch
diff --git a/examples/batch/postgresql/db.go b/examples/batch/postgresql/db.go
index fe3710dbf5..d5a442b596 100644
--- a/examples/batch/postgresql/db.go
+++ b/examples/batch/postgresql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package batch
diff --git a/examples/batch/postgresql/db_test.go b/examples/batch/postgresql/db_test.go
index c39bd0b5ed..122fa1aa73 100644
--- a/examples/batch/postgresql/db_test.go
+++ b/examples/batch/postgresql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package batch
@@ -10,11 +9,12 @@ import (
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgtype"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestBatchBooks(t *testing.T) {
- uri := hosted.PostgreSQL(t, []string{"schema.sql"})
+ uri := local.PostgreSQL(t, []string{"schema.sql"})
ctx := context.Background()
diff --git a/examples/batch/postgresql/models.go b/examples/batch/postgresql/models.go
index f5531329b9..027ff37c26 100644
--- a/examples/batch/postgresql/models.go
+++ b/examples/batch/postgresql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package batch
diff --git a/examples/batch/postgresql/querier.go b/examples/batch/postgresql/querier.go
index d2ce4d83a7..ed7075878d 100644
--- a/examples/batch/postgresql/querier.go
+++ b/examples/batch/postgresql/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package batch
diff --git a/examples/batch/postgresql/query.sql.go b/examples/batch/postgresql/query.sql.go
index 28d854bc77..d856deeedd 100644
--- a/examples/batch/postgresql/query.sql.go
+++ b/examples/batch/postgresql/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package batch
diff --git a/examples/batch/sqlc.json b/examples/batch/sqlc.json
index 5b81b40786..2f6b9a9e7e 100644
--- a/examples/batch/sqlc.json
+++ b/examples/batch/sqlc.json
@@ -11,7 +11,7 @@
"queries": "postgresql/query.sql",
"engine": "postgresql",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_POSTGRES_BATCH}"
},
"analyzer": {
"database": false
diff --git a/examples/booktest/mysql/db.go b/examples/booktest/mysql/db.go
index a40a575695..20879ba690 100644
--- a/examples/booktest/mysql/db.go
+++ b/examples/booktest/mysql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/mysql/db_test.go b/examples/booktest/mysql/db_test.go
index b2c80d178a..6f97178c94 100644
--- a/examples/booktest/mysql/db_test.go
+++ b/examples/booktest/mysql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package booktest
@@ -11,12 +10,12 @@ import (
_ "github.com/go-sql-driver/mysql"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestBooks(t *testing.T) {
ctx := context.Background()
- uri := hosted.MySQL(t, []string{"schema.sql"})
+ uri := local.MySQL(t, []string{"schema.sql"})
db, err := sql.Open("mysql", uri)
if err != nil {
t.Fatal(err)
diff --git a/examples/booktest/mysql/models.go b/examples/booktest/mysql/models.go
index 455864ae49..883b5286b5 100644
--- a/examples/booktest/mysql/models.go
+++ b/examples/booktest/mysql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/mysql/query.sql.go b/examples/booktest/mysql/query.sql.go
index 077868dc49..6181c3bb8c 100644
--- a/examples/booktest/mysql/query.sql.go
+++ b/examples/booktest/mysql/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package booktest
diff --git a/examples/booktest/postgresql/db.go b/examples/booktest/postgresql/db.go
index 4d6ab58bbe..fcbe1cd6e3 100644
--- a/examples/booktest/postgresql/db.go
+++ b/examples/booktest/postgresql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/postgresql/db_test.go b/examples/booktest/postgresql/db_test.go
index 8eeb10518c..ae71593852 100644
--- a/examples/booktest/postgresql/db_test.go
+++ b/examples/booktest/postgresql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package booktest
@@ -11,12 +10,12 @@ import (
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgtype"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestBooks(t *testing.T) {
ctx := context.Background()
- uri := hosted.PostgreSQL(t, []string{"schema.sql"})
+ uri := local.PostgreSQL(t, []string{"schema.sql"})
db, err := pgx.Connect(ctx, uri)
if err != nil {
t.Fatal(err)
@@ -150,7 +149,18 @@ func TestBooks(t *testing.T) {
t.Logf("Book %d: '%s', Author: '%s', ISBN: '%s' Tags: '%v'\n", ab.BookID, ab.Title, ab.Name.String, ab.Isbn, ab.Tags)
}
- // TODO: call say_hello(varchar)
+ // call function
+ pgText, err := dq.SayHello(ctx, "world")
+ if err != nil {
+ t.Fatal(err)
+ }
+ str, err := pgText.Value()
+ if err != nil {
+ t.Fatal(err)
+ }
+ if str != "hello world" {
+ t.Fatal("expected function result to be \"hello world\". actual:", str)
+ }
// get book 4 and delete
b5, err := dq.GetBook(ctx, b3.BookID)
diff --git a/examples/booktest/postgresql/models.go b/examples/booktest/postgresql/models.go
index 388000ce9d..802ef764be 100644
--- a/examples/booktest/postgresql/models.go
+++ b/examples/booktest/postgresql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/postgresql/query.sql b/examples/booktest/postgresql/query.sql
index 194897a4bb..75b8cd3b6d 100644
--- a/examples/booktest/postgresql/query.sql
+++ b/examples/booktest/postgresql/query.sql
@@ -58,3 +58,6 @@ WHERE book_id = $3;
UPDATE books
SET title = $1, tags = $2, isbn = $4
WHERE book_id = $3;
+
+-- name: SayHello :one
+select * from say_hello($1);
diff --git a/examples/booktest/postgresql/query.sql.go b/examples/booktest/postgresql/query.sql.go
index e02e4a59fe..bb9f258125 100644
--- a/examples/booktest/postgresql/query.sql.go
+++ b/examples/booktest/postgresql/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package booktest
@@ -206,6 +206,17 @@ func (q *Queries) GetBook(ctx context.Context, bookID int32) (Book, error) {
return i, err
}
+const sayHello = `-- name: SayHello :one
+select say_hello from say_hello($1)
+`
+
+func (q *Queries) SayHello(ctx context.Context, s string) (pgtype.Text, error) {
+ row := q.db.QueryRow(ctx, sayHello, s)
+ var say_hello pgtype.Text
+ err := row.Scan(&say_hello)
+ return say_hello, err
+}
+
const updateBook = `-- name: UpdateBook :exec
UPDATE books
SET title = $1, tags = $2
diff --git a/examples/booktest/postgresql/schema.sql b/examples/booktest/postgresql/schema.sql
index 2beecaba1a..3cdd97ca5f 100644
--- a/examples/booktest/postgresql/schema.sql
+++ b/examples/booktest/postgresql/schema.sql
@@ -23,9 +23,9 @@ CREATE TABLE books (
CREATE INDEX books_title_idx ON books(title, year);
-CREATE FUNCTION say_hello(text) RETURNS text AS $$
+CREATE FUNCTION say_hello(s text) RETURNS text AS $$
BEGIN
- RETURN CONCAT('hello ', $1);
+ RETURN CONCAT('hello ', s);
END;
$$ LANGUAGE plpgsql;
diff --git a/examples/booktest/sqlc.json b/examples/booktest/sqlc.json
index fb7f3823cc..b0b0d71d01 100644
--- a/examples/booktest/sqlc.json
+++ b/examples/booktest/sqlc.json
@@ -12,7 +12,7 @@
"engine": "postgresql",
"sql_package": "pgx/v5",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_POSTGRES_BOOKTEST}"
},
"analyzer": {
"database": false
@@ -28,7 +28,7 @@
"queries": "mysql/query.sql",
"engine": "mysql",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_MYSQL_BOOKTEST}"
},
"rules": [
"sqlc/db-prepare"
diff --git a/examples/booktest/sqlite/db.go b/examples/booktest/sqlite/db.go
index a40a575695..20879ba690 100644
--- a/examples/booktest/sqlite/db.go
+++ b/examples/booktest/sqlite/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/sqlite/db_test.go b/examples/booktest/sqlite/db_test.go
index f169c79148..42a8b396b1 100644
--- a/examples/booktest/sqlite/db_test.go
+++ b/examples/booktest/sqlite/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package booktest
@@ -19,6 +18,7 @@ const (
func TestBooks(t *testing.T) {
db, cleanup := sqltest.SQLite(t, []string{"schema.sql"})
+ defer db.Close()
defer cleanup()
ctx := context.Background()
diff --git a/examples/booktest/sqlite/models.go b/examples/booktest/sqlite/models.go
index 013d7b30de..49429fc589 100644
--- a/examples/booktest/sqlite/models.go
+++ b/examples/booktest/sqlite/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package booktest
diff --git a/examples/booktest/sqlite/query.sql.go b/examples/booktest/sqlite/query.sql.go
index 7cb0257fbc..c1f6f4f57e 100644
--- a/examples/booktest/sqlite/query.sql.go
+++ b/examples/booktest/sqlite/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package booktest
diff --git a/examples/jets/postgresql/db.go b/examples/jets/postgresql/db.go
index d3f847c9f1..3235067366 100644
--- a/examples/jets/postgresql/db.go
+++ b/examples/jets/postgresql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package jets
diff --git a/examples/jets/postgresql/models.go b/examples/jets/postgresql/models.go
index 711fa4a5d6..72ed009f4e 100644
--- a/examples/jets/postgresql/models.go
+++ b/examples/jets/postgresql/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package jets
-import ()
-
type Jet struct {
ID int32
PilotID int32
diff --git a/examples/jets/postgresql/query-building.sql.go b/examples/jets/postgresql/query-building.sql.go
index 856b301188..7b7f9a1399 100644
--- a/examples/jets/postgresql/query-building.sql.go
+++ b/examples/jets/postgresql/query-building.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query-building.sql
package jets
diff --git a/examples/jets/sqlc.json b/examples/jets/sqlc.json
index d664966753..8dfa0df777 100644
--- a/examples/jets/sqlc.json
+++ b/examples/jets/sqlc.json
@@ -12,7 +12,7 @@
"engine": "postgresql",
"sql_package": "pgx/v5",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_POSTGRES_JETS}"
},
"analyzer": {
"database": false
diff --git a/examples/ondeck/mysql/city.sql.go b/examples/ondeck/mysql/city.sql.go
index d70a7f28f3..0d21716e73 100644
--- a/examples/ondeck/mysql/city.sql.go
+++ b/examples/ondeck/mysql/city.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: city.sql
package ondeck
diff --git a/examples/ondeck/mysql/db.go b/examples/ondeck/mysql/db.go
index 5c60c1608f..e2a5dd8883 100644
--- a/examples/ondeck/mysql/db.go
+++ b/examples/ondeck/mysql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/mysql/db_test.go b/examples/ondeck/mysql/db_test.go
index ffa63d9436..6ac70aaf06 100644
--- a/examples/ondeck/mysql/db_test.go
+++ b/examples/ondeck/mysql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package ondeck
@@ -12,7 +11,7 @@ import (
_ "github.com/go-sql-driver/mysql"
"github.com/google/go-cmp/cmp"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func join(vals ...string) sql.NullString {
@@ -144,10 +143,10 @@ func runOnDeckQueries(t *testing.T, q *Queries) {
func TestPrepared(t *testing.T) {
t.Parallel()
- uri := hosted.MySQL(t, []string{"schema"})
+ uri := local.MySQL(t, []string{"schema"})
db, err := sql.Open("mysql", uri)
if err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", uri, err)
}
defer db.Close()
@@ -162,10 +161,10 @@ func TestPrepared(t *testing.T) {
func TestQueries(t *testing.T) {
t.Parallel()
- uri := hosted.MySQL(t, []string{"schema"})
+ uri := local.MySQL(t, []string{"schema"})
db, err := sql.Open("mysql", uri)
if err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", uri, err)
}
defer db.Close()
diff --git a/examples/ondeck/mysql/models.go b/examples/ondeck/mysql/models.go
index 7000ec84f8..508a79a3ed 100644
--- a/examples/ondeck/mysql/models.go
+++ b/examples/ondeck/mysql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/mysql/querier.go b/examples/ondeck/mysql/querier.go
index 2ec49218ef..f70ac57cc6 100644
--- a/examples/ondeck/mysql/querier.go
+++ b/examples/ondeck/mysql/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/mysql/schema/0001_city.sql b/examples/ondeck/mysql/schema/0001_city.sql
index 6be35d16bf..94e9b0f8d4 100644
--- a/examples/ondeck/mysql/schema/0001_city.sql
+++ b/examples/ondeck/mysql/schema/0001_city.sql
@@ -1,4 +1,4 @@
CREATE TABLE city (
slug varchar(255) PRIMARY KEY,
name text NOT NULL
-)
+);
diff --git a/examples/ondeck/mysql/schema/0002_venue.sql b/examples/ondeck/mysql/schema/0002_venue.sql
index 4fc842cee0..dcab205c96 100644
--- a/examples/ondeck/mysql/schema/0002_venue.sql
+++ b/examples/ondeck/mysql/schema/0002_venue.sql
@@ -5,7 +5,7 @@ CREATE TABLE venues (
statuses text, -- status[],
slug text not null COMMENT 'This value appears in public URLs',
name varchar(255) not null,
- city text not null references city(slug),
+ city varchar(255) not null references city(slug),
spotify_playlist varchar(255) not null,
songkick_id text,
tags text -- text[]
diff --git a/examples/ondeck/mysql/venue.sql.go b/examples/ondeck/mysql/venue.sql.go
index 821e5cc749..7c9d664427 100644
--- a/examples/ondeck/mysql/venue.sql.go
+++ b/examples/ondeck/mysql/venue.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: venue.sql
package ondeck
diff --git a/examples/ondeck/postgresql/city.sql.go b/examples/ondeck/postgresql/city.sql.go
index 52114b94e6..c87815a348 100644
--- a/examples/ondeck/postgresql/city.sql.go
+++ b/examples/ondeck/postgresql/city.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: city.sql
package ondeck
diff --git a/examples/ondeck/postgresql/db.go b/examples/ondeck/postgresql/db.go
index 5c60c1608f..e2a5dd8883 100644
--- a/examples/ondeck/postgresql/db.go
+++ b/examples/ondeck/postgresql/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/postgresql/db_test.go b/examples/ondeck/postgresql/db_test.go
index c4e4ce8bbf..6d2fba6714 100644
--- a/examples/ondeck/postgresql/db_test.go
+++ b/examples/ondeck/postgresql/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package ondeck
@@ -11,7 +10,7 @@ import (
"github.com/google/go-cmp/cmp"
_ "github.com/lib/pq"
- "github.com/sqlc-dev/sqlc/internal/sqltest/hosted"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func runOnDeckQueries(t *testing.T, q *Queries) {
@@ -126,10 +125,10 @@ func runOnDeckQueries(t *testing.T, q *Queries) {
func TestPrepared(t *testing.T) {
t.Parallel()
- uri := hosted.PostgreSQL(t, []string{"schema"})
+ uri := local.PostgreSQL(t, []string{"schema"})
db, err := sql.Open("postgres", uri)
if err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", uri, err)
}
defer db.Close()
@@ -144,10 +143,10 @@ func TestPrepared(t *testing.T) {
func TestQueries(t *testing.T) {
t.Parallel()
- uri := hosted.PostgreSQL(t, []string{"schema"})
+ uri := local.PostgreSQL(t, []string{"schema"})
db, err := sql.Open("postgres", uri)
if err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", uri, err)
}
defer db.Close()
diff --git a/examples/ondeck/postgresql/models.go b/examples/ondeck/postgresql/models.go
index 00864711d9..efd5575df5 100644
--- a/examples/ondeck/postgresql/models.go
+++ b/examples/ondeck/postgresql/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/postgresql/querier.go b/examples/ondeck/postgresql/querier.go
index 2bdc225577..0681661637 100644
--- a/examples/ondeck/postgresql/querier.go
+++ b/examples/ondeck/postgresql/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/postgresql/venue.sql.go b/examples/ondeck/postgresql/venue.sql.go
index f4606f0d60..5f3b4daf03 100644
--- a/examples/ondeck/postgresql/venue.sql.go
+++ b/examples/ondeck/postgresql/venue.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: venue.sql
package ondeck
diff --git a/examples/ondeck/sqlc.json b/examples/ondeck/sqlc.json
index f8070f3641..7b97328b3f 100644
--- a/examples/ondeck/sqlc.json
+++ b/examples/ondeck/sqlc.json
@@ -12,7 +12,7 @@
"engine": "postgresql",
"sql_package": "database/sql",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_POSTGRES_ONDECK}"
},
"analyzer": {
"database": false
@@ -31,7 +31,7 @@
"queries": "mysql/query",
"engine": "mysql",
"database": {
- "managed": true
+ "uri": "${VET_TEST_EXAMPLES_MYSQL_ONDECK}"
},
"rules": [
"sqlc/db-prepare"
diff --git a/examples/ondeck/sqlite/city.sql.go b/examples/ondeck/sqlite/city.sql.go
index d70a7f28f3..0d21716e73 100644
--- a/examples/ondeck/sqlite/city.sql.go
+++ b/examples/ondeck/sqlite/city.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: city.sql
package ondeck
diff --git a/examples/ondeck/sqlite/db.go b/examples/ondeck/sqlite/db.go
index 5c60c1608f..e2a5dd8883 100644
--- a/examples/ondeck/sqlite/db.go
+++ b/examples/ondeck/sqlite/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/sqlite/db_test.go b/examples/ondeck/sqlite/db_test.go
index f106256d45..e4bb4e4195 100644
--- a/examples/ondeck/sqlite/db_test.go
+++ b/examples/ondeck/sqlite/db_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package ondeck
@@ -150,6 +149,7 @@ func TestPrepared(t *testing.T) {
t.Parallel()
sdb, cleanup := sqltest.SQLite(t, []string{"schema"})
+ defer sdb.Close()
defer cleanup()
q, err := Prepare(context.Background(), sdb)
@@ -164,6 +164,7 @@ func TestQueries(t *testing.T) {
t.Parallel()
sdb, cleanup := sqltest.SQLite(t, []string{"schema"})
+ defer sdb.Close()
defer cleanup()
runOnDeckQueries(t, New(sdb))
diff --git a/examples/ondeck/sqlite/models.go b/examples/ondeck/sqlite/models.go
index 1e3507092e..d20a091b8f 100644
--- a/examples/ondeck/sqlite/models.go
+++ b/examples/ondeck/sqlite/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/sqlite/querier.go b/examples/ondeck/sqlite/querier.go
index 2ec49218ef..f70ac57cc6 100644
--- a/examples/ondeck/sqlite/querier.go
+++ b/examples/ondeck/sqlite/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package ondeck
diff --git a/examples/ondeck/sqlite/venue.sql.go b/examples/ondeck/sqlite/venue.sql.go
index f0a2c957cd..6e5bebfdb1 100644
--- a/examples/ondeck/sqlite/venue.sql.go
+++ b/examples/ondeck/sqlite/venue.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: venue.sql
package ondeck
diff --git a/go.mod b/go.mod
index fa2da759e6..3f400daed9 100644
--- a/go.mod
+++ b/go.mod
@@ -1,63 +1,73 @@
module github.com/sqlc-dev/sqlc
-go 1.21
+go 1.23.0
+
+toolchain go1.24.1
require (
- github.com/antlr/antlr4/runtime/Go/antlr/v4 v4.0.0-20230321174746-8dcc6526cfb1
- github.com/bytecodealliance/wasmtime-go/v14 v14.0.0
+ github.com/antlr4-go/antlr/v4 v4.13.1
github.com/cubicdaiya/gonp v1.0.4
github.com/davecgh/go-spew v1.1.1
- github.com/go-sql-driver/mysql v1.7.1
- github.com/google/cel-go v0.18.2
- github.com/google/go-cmp v0.6.0
- github.com/jackc/pgx/v4 v4.18.1
- github.com/jackc/pgx/v5 v5.5.0
+ github.com/fatih/structtag v1.2.0
+ github.com/go-sql-driver/mysql v1.9.2
+ github.com/google/cel-go v0.25.0
+ github.com/google/go-cmp v0.7.0
+ github.com/jackc/pgx/v4 v4.18.3
+ github.com/jackc/pgx/v5 v5.7.4
github.com/jinzhu/inflection v1.0.0
github.com/lib/pq v1.10.9
- github.com/mattn/go-sqlite3 v1.14.18
- github.com/pganalyze/pg_query_go/v4 v4.2.3
- github.com/pingcap/tidb/pkg/parser v0.0.0-20231103154709-4f00ece106b1
+ github.com/pganalyze/pg_query_go/v6 v6.1.0
+ github.com/pingcap/tidb/pkg/parser v0.0.0-20250324122243-d51e00e5bbf0
github.com/riza-io/grpc-go v0.2.0
- github.com/spf13/cobra v1.8.0
- github.com/spf13/pflag v1.0.5
+ github.com/spf13/cobra v1.9.1
+ github.com/spf13/pflag v1.0.6
+ github.com/tetratelabs/wazero v1.9.0
+ github.com/wasilibs/go-pgquery v0.0.0-20250409022910-10ac41983c07
github.com/xeipuuv/gojsonschema v1.2.0
- golang.org/x/sync v0.5.0
- google.golang.org/grpc v1.59.0
- google.golang.org/protobuf v1.31.0
+ golang.org/x/sync v0.13.0
+ google.golang.org/grpc v1.72.0
+ google.golang.org/protobuf v1.36.6
gopkg.in/yaml.v3 v3.0.1
+ modernc.org/sqlite v1.37.0
)
require (
- github.com/antlr4-go/antlr/v4 v4.13.0 // indirect
- github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 // indirect
- github.com/fatih/structtag v1.2.0
- github.com/golang/protobuf v1.5.3 // indirect
+ cel.dev/expr v0.23.1 // indirect
+ filippo.io/edwards25519 v1.1.0 // indirect
+ github.com/dustin/go-humanize v1.0.1 // indirect
+ github.com/google/uuid v1.6.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/jackc/chunkreader/v2 v2.0.1 // indirect
- github.com/jackc/pgconn v1.14.1 // indirect
+ github.com/jackc/pgconn v1.14.3 // indirect
github.com/jackc/pgio v1.0.0 // indirect
github.com/jackc/pgpassfile v1.0.0 // indirect
- github.com/jackc/pgproto3/v2 v2.3.2 // indirect
- github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect
+ github.com/jackc/pgproto3/v2 v2.3.3 // indirect
+ github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
github.com/jackc/pgtype v1.14.0 // indirect
- github.com/jackc/puddle/v2 v2.2.1 // indirect
- github.com/pingcap/errors v0.11.5-0.20210425183316-da1aaba5fb63 // indirect
- github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c // indirect
+ github.com/jackc/puddle/v2 v2.2.2 // indirect
+ github.com/mattn/go-isatty v0.0.20 // indirect
+ github.com/ncruces/go-strftime v0.1.9 // indirect
+ github.com/pingcap/errors v0.11.5-0.20240311024730-e056997136bb // indirect
+ github.com/pingcap/failpoint v0.0.0-20240528011301-b51a646c7c86 // indirect
github.com/pingcap/log v1.1.0 // indirect
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
github.com/rogpeppe/go-internal v1.10.0 // indirect
github.com/stoewer/go-strcase v1.2.0 // indirect
+ github.com/wasilibs/wazero-helpers v0.0.0-20240620070341-3dff1577cd52 // indirect
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
go.uber.org/atomic v1.11.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
- go.uber.org/zap v1.26.0 // indirect
- golang.org/x/crypto v0.14.0 // indirect
- golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect
- golang.org/x/net v0.17.0 // indirect
- golang.org/x/sys v0.13.0 // indirect
- golang.org/x/text v0.14.0 // indirect
- google.golang.org/genproto/googleapis/api v0.0.0-20230822172742-b8732ec3820d // indirect
- google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d // indirect
+ go.uber.org/zap v1.27.0 // indirect
+ golang.org/x/crypto v0.36.0 // indirect
+ golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
+ golang.org/x/net v0.38.0 // indirect
+ golang.org/x/sys v0.31.0 // indirect
+ golang.org/x/text v0.23.0 // indirect
+ google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a // indirect
+ google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a // indirect
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
+ modernc.org/libc v1.62.1 // indirect
+ modernc.org/mathutil v1.7.1 // indirect
+ modernc.org/memory v1.9.1 // indirect
)
diff --git a/go.sum b/go.sum
index 90d91347c6..64414ebb7d 100644
--- a/go.sum
+++ b/go.sum
@@ -1,53 +1,51 @@
+cel.dev/expr v0.23.1 h1:K4KOtPCJQjVggkARsjG9RWXP6O4R73aHeJMa/dmCQQg=
+cel.dev/expr v0.23.1/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw=
+filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
+filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs=
-github.com/antlr/antlr4/runtime/Go/antlr/v4 v4.0.0-20230321174746-8dcc6526cfb1 h1:X8MJ0fnN5FPdcGF5Ij2/OW+HgiJrRg3AfHAx1PJtIzM=
-github.com/antlr/antlr4/runtime/Go/antlr/v4 v4.0.0-20230321174746-8dcc6526cfb1/go.mod h1:pSwJ0fSY5KhvocuWSx4fz3BA8OrA1bQn+K1Eli3BRwM=
-github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI=
-github.com/antlr4-go/antlr/v4 v4.13.0/go.mod h1:pfChB/xh/Unjila75QW7+VU4TSnWnnk9UTnmpPaOR2g=
+github.com/antlr4-go/antlr/v4 v4.13.1 h1:SqQKkuVZ+zWkMMNkjy5FZe5mr5WURWnlpmOuzYWrPrQ=
+github.com/antlr4-go/antlr/v4 v4.13.1/go.mod h1:GKmUxMtwp6ZgGwZSva4eWPC5mS6vUAmOABFgjdkM7Nw=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
-github.com/bytecodealliance/wasmtime-go/v14 v14.0.0 h1:ur7S3P+PAeJmgllhSrKnGQOAmmtUbLQxb/nw2NZiaEM=
-github.com/bytecodealliance/wasmtime-go/v14 v14.0.0/go.mod h1:tqOVEUjnXY6aGpSfM9qdVRR6G//Yc513fFYUdzZb/DY=
github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I=
github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ=
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
-github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
+github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
github.com/cubicdaiya/gonp v1.0.4 h1:ky2uIAJh81WiLcGKBVD5R7KsM/36W6IqqTy6Bo6rGws=
github.com/cubicdaiya/gonp v1.0.4/go.mod h1:iWGuP/7+JVTn02OWhRemVbMmG1DOUnmrGTYYACpOI0I=
-github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso=
-github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
+github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
github.com/fatih/structtag v1.2.0 h1:/OdNE99OxoI/PqaW/SuSK9uxxT3f/tcSZgon/ssNSx4=
github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94=
github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
-github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI=
-github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
+github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
+github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
+github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
+github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
+github.com/go-sql-driver/mysql v1.9.2 h1:4cNKDYQ1I84SXslGddlsrMhc8k4LeDVj6Ad6WRjiHuU=
+github.com/go-sql-driver/mysql v1.9.2/go.mod h1:qn46aNg1333BRMNU69Lq93t8du/dwxI64Gl8i5p1WMU=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/gofrs/uuid v4.0.0+incompatible h1:1SD/1F5pU8p29ybwgQSwpQk+mwdRrXCYuPhW6m+TnJw=
github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
-github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
-github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
-github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
-github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
-github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
-github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
-github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
-github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
-github.com/google/cel-go v0.18.2 h1:L0B6sNBSVmt0OyECi8v6VOS74KOc9W/tLiWKfZABvf4=
-github.com/google/cel-go v0.18.2/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg=
-github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
-github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
-github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
+github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
+github.com/google/cel-go v0.25.0 h1:jsFw9Fhn+3y2kBbltZR4VEz5xKkcIFRPDnuEzAGv5GY=
+github.com/google/cel-go v0.25.0/go.mod h1:hjEb6r5SuOSlhCHmFoLzu8HGCERvIsDAbxDAyNU/MmI=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
-github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
+github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
+github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
+github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs=
+github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
+github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
+github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo=
@@ -60,9 +58,8 @@ github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsU
github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o=
github.com/jackc/pgconn v1.9.0/go.mod h1:YctiPyvzfU11JFxoXokUOOKQXQmDMoJL9vJzHH8/2JY=
github.com/jackc/pgconn v1.9.1-0.20210724152538-d89c8390a530/go.mod h1:4z2w8XhRbP1hYxkpTuBjTS3ne3J48K83+u0zoyvg2pI=
-github.com/jackc/pgconn v1.14.0/go.mod h1:9mBNlny0UvkgJdCDvdVHYSjI+8tD2rnKK69Wz8ti++E=
-github.com/jackc/pgconn v1.14.1 h1:smbxIaZA08n6YuxEX1sDyjV/qkbtUtkH20qLkR9MUR4=
-github.com/jackc/pgconn v1.14.1/go.mod h1:9mBNlny0UvkgJdCDvdVHYSjI+8tD2rnKK69Wz8ti++E=
+github.com/jackc/pgconn v1.14.3 h1:bVoTr12EGANZz66nZPkMInAV/KHD2TxH9npjXXgiB3w=
+github.com/jackc/pgconn v1.14.3/go.mod h1:RZbme4uasqzybK2RK5c65VsHxoyaml09lx3tXOcO/VM=
github.com/jackc/pgio v1.0.0 h1:g12B9UwVnzGhueNavwioyEEpAmqMe1E/BN9ES+8ovkE=
github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8=
github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE=
@@ -78,11 +75,11 @@ github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvW
github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM=
github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
github.com/jackc/pgproto3/v2 v2.1.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
-github.com/jackc/pgproto3/v2 v2.3.2 h1:7eY55bdBeCz1F2fTzSz69QC+pG46jYq9/jtSPiJ5nn0=
-github.com/jackc/pgproto3/v2 v2.3.2/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
+github.com/jackc/pgproto3/v2 v2.3.3 h1:1HLSx5H+tXR9pW3in3zaztoEwQYRC9SQaYUHjTSUOag=
+github.com/jackc/pgproto3/v2 v2.3.3/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA=
github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E=
-github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a h1:bbPeKD0xmW/Y25WS6cokEszi5g+S0QxI/d45PkRi7Nk=
-github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM=
+github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo=
+github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM=
github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg=
github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc=
github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw=
@@ -93,16 +90,15 @@ github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08
github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM=
github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc=
github.com/jackc/pgx/v4 v4.12.1-0.20210724153913-640aa07df17c/go.mod h1:1QD0+tgSXP7iUjYm9C1NxKhny7lq6ee99u/z+IHFcgs=
-github.com/jackc/pgx/v4 v4.18.1 h1:YP7G1KABtKpB5IHrO9vYwSrCOhs7p3uqhvhhQBptya0=
-github.com/jackc/pgx/v4 v4.18.1/go.mod h1:FydWkUyadDmdNH/mHnGob881GawxeEm7TcMCzkb+qQE=
-github.com/jackc/pgx/v5 v5.5.0 h1:NxstgwndsTRy7eq9/kqYc/BZh5w2hHJV86wjvO+1xPw=
-github.com/jackc/pgx/v5 v5.5.0/go.mod h1:Ig06C2Vu0t5qXC60W8sqIthScaEnFvojjj9dSljmHRA=
+github.com/jackc/pgx/v4 v4.18.3 h1:dE2/TrEsGX3RBprb3qryqSV9Y60iZN1C6i8IrmW9/BA=
+github.com/jackc/pgx/v4 v4.18.3/go.mod h1:Ey4Oru5tH5sB6tV7hDmfWFahwF15Eb7DNXlRKx2CkVw=
+github.com/jackc/pgx/v5 v5.7.4 h1:9wKznZrhWa2QiHL+NjTSPP6yjl3451BX3imWDnokYlg=
+github.com/jackc/pgx/v5 v5.7.4/go.mod h1:ncY89UGWxg82EykZUwSpUKEfccBGGYq1xjrOpsbsfGQ=
github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
-github.com/jackc/puddle v1.3.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk=
-github.com/jackc/puddle/v2 v2.2.1 h1:RhxXJtFG022u4ibrCSMSiu5aOq1i77R3OHKNJj77OAk=
-github.com/jackc/puddle/v2 v2.2.1/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4=
+github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo=
+github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4=
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
@@ -127,20 +123,21 @@ github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
-github.com/mattn/go-sqlite3 v1.14.18 h1:JL0eqdCOq6DJVNPSvArO/bIV9/P7fbGrV00LZHc+5aI=
-github.com/mattn/go-sqlite3 v1.14.18/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
-github.com/pganalyze/pg_query_go/v4 v4.2.3 h1:cNLqyiVMasV7YGWyYV+fkXyHp32gDfXVNCqoHztEGNk=
-github.com/pganalyze/pg_query_go/v4 v4.2.3/go.mod h1:aEkDNOXNM5j0YGzaAapwJ7LB3dLNj+bvbWcLv1hOVqA=
+github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
+github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
+github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4=
+github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls=
+github.com/pganalyze/pg_query_go/v6 v6.1.0 h1:jG5ZLhcVgL1FAw4C/0VNQaVmX1SUJx71wBGdtTtBvls=
+github.com/pganalyze/pg_query_go/v6 v6.1.0/go.mod h1:nvTHIuoud6e1SfrUaFwHqT0i4b5Nr+1rPWVds3B5+50=
github.com/pingcap/errors v0.11.0/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8=
-github.com/pingcap/errors v0.11.4/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8=
-github.com/pingcap/errors v0.11.5-0.20210425183316-da1aaba5fb63 h1:+FZIDR/D97YOPik4N4lPDaUcLDF/EQPogxtlHB2ZZRM=
-github.com/pingcap/errors v0.11.5-0.20210425183316-da1aaba5fb63/go.mod h1:X2r9ueLEUZgtx2cIogM0v4Zj5uvvzhuuiu7Pn8HzMPg=
-github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c h1:CgbKAHto5CQgWM9fSBIvaxsJHuGP0uM74HXtv3MyyGQ=
-github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c/go.mod h1:4qGtCB0QK0wBzKtFEGDhxXnSnbQApw1gc9siScUl8ew=
+github.com/pingcap/errors v0.11.5-0.20240311024730-e056997136bb h1:3pSi4EDG6hg0orE1ndHkXvX6Qdq2cZn8gAPir8ymKZk=
+github.com/pingcap/errors v0.11.5-0.20240311024730-e056997136bb/go.mod h1:X2r9ueLEUZgtx2cIogM0v4Zj5uvvzhuuiu7Pn8HzMPg=
+github.com/pingcap/failpoint v0.0.0-20240528011301-b51a646c7c86 h1:tdMsjOqUR7YXHoBitzdebTvOjs/swniBTOLy5XiMtuE=
+github.com/pingcap/failpoint v0.0.0-20240528011301-b51a646c7c86/go.mod h1:exzhVYca3WRtd6gclGNErRWb1qEgff3LYta0LvRmON4=
github.com/pingcap/log v1.1.0 h1:ELiPxACz7vdo1qAvvaWJg1NrYFoY6gqAh/+Uo6aXdD8=
github.com/pingcap/log v1.1.0/go.mod h1:DWQW5jICDR7UJh4HtxXSM20Churx4CQL0fwL/SoOSA4=
-github.com/pingcap/tidb/pkg/parser v0.0.0-20231103154709-4f00ece106b1 h1:SwGY3zMnK4wO85vvRIqrR3Yh6VpIC9pydG0QNOUPHCY=
-github.com/pingcap/tidb/pkg/parser v0.0.0-20231103154709-4f00ece106b1/go.mod h1:yRkiqLFwIqibYg2P7h4bclHjHcJiIFRLKhGRyBcKYus=
+github.com/pingcap/tidb/pkg/parser v0.0.0-20250324122243-d51e00e5bbf0 h1:W3rpAI3bubR6VWOcwxDIG0Gz9G5rl5b3SL116T0vBt0=
+github.com/pingcap/tidb/pkg/parser v0.0.0-20250324122243-d51e00e5bbf0/go.mod h1:+8feuexTKcXHZF/dkDfvCwEyBAmgb4paFc3/WeYV2eE=
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
@@ -158,41 +155,52 @@ github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OK
github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
-github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ=
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
-github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0=
-github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho=
-github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
-github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
+github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
+github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
+github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
+github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU=
github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
-github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
-github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
-github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
-github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
-github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
-github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
-github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
+github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
+github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
+github.com/tetratelabs/wazero v1.9.0 h1:IcZ56OuxrtaEz8UYNRHBrUa9bYeX9oVY93KspZZBf/I=
+github.com/tetratelabs/wazero v1.9.0/go.mod h1:TSbcXCfFP0L2FGkRPxHphadXPjo1T6W+CseNNY7EkjM=
+github.com/wasilibs/go-pgquery v0.0.0-20250409022910-10ac41983c07 h1:mJdDDPblDfPe7z7go8Dvv1AJQDI3eQ/5xith3q2mFlo=
+github.com/wasilibs/go-pgquery v0.0.0-20250409022910-10ac41983c07/go.mod h1:Ak17IJ037caFp4jpCw/iQQ7/W74Sqpb1YuKJU6HTKfM=
+github.com/wasilibs/wazero-helpers v0.0.0-20240620070341-3dff1577cd52 h1:OvLBa8SqJnZ6P+mjlzc2K7PM22rRUPE1x32G9DTPrC4=
+github.com/wasilibs/wazero-helpers v0.0.0-20240620070341-3dff1577cd52/go.mod h1:jMeV4Vpbi8osrE/pKUxRZkVaA0EX7NZN0A9/oRzgpgY=
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f h1:J9EGpcZtP0E/raorCMxlFGSTBrsSlaDGf3jU/qvAE2c=
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0=
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ=
github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74=
github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y=
-github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q=
+go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
+go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
+go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY=
+go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI=
+go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ=
+go.opentelemetry.io/otel/metric v1.34.0/go.mod h1:CEDrp0fy2D0MvkXE+dPV7cMi8tWZwX3dmaIhwPOaqHE=
+go.opentelemetry.io/otel/sdk v1.34.0 h1:95zS4k/2GOy069d321O8jWgYsW3MzVV+KuSPKp7Wr1A=
+go.opentelemetry.io/otel/sdk v1.34.0/go.mod h1:0e/pNiaMAqaykJGKbi+tSjWfNNHMTxoC9qANsCzbyxU=
+go.opentelemetry.io/otel/sdk/metric v1.34.0 h1:5CeK9ujjbFVL5c1PhLuStg1wxA7vQv7ce1EK0Gyvahk=
+go.opentelemetry.io/otel/sdk/metric v1.34.0/go.mod h1:jQ/r8Ze28zRKoNRdkjCZxfs6YvBTG1+YIqyFVFYec5w=
+go.opentelemetry.io/otel/trace v1.34.0 h1:+ouXS2V8Rd4hp4580a8q23bg0azF2nI8cqLYnC8mh/k=
+go.opentelemetry.io/otel/trace v1.34.0/go.mod h1:Svm7lSjQD7kG7KJ/MUHPVXSDGz2OX4h0M2jHBhmSfRE=
go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE=
go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ=
@@ -202,8 +210,8 @@ go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE=
go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A=
-go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk=
-go.uber.org/goleak v1.2.0/go.mod h1:XJYK+MuIchqpmGmUSAzotztawfKvYLUIgg7guXrwVUo=
+go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
+go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0=
go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4=
go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU=
@@ -216,8 +224,8 @@ go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=
go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=
-go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo=
-go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so=
+go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
+go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
@@ -227,29 +235,25 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
-golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
-golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58=
-golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
-golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
-golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
-golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
+golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
+golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
+golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
+golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
-golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
+golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU=
+golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM=
-golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
+golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8=
+golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
-golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.13.0 h1:AauUjRAJ9OSnvULf/ARrrVywoJDy0YS2AwQ98I37610=
+golang.org/x/sync v0.13.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -262,24 +266,18 @@ golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
-golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
+golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
-golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
-golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
-golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
+golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
@@ -288,34 +286,27 @@ golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtn
golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
-golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
+golang.org/x/tools v0.31.0 h1:0EedkvKDbh+qistFTd0Bcwe/YLh4vHwWEkiI0toFIBU=
+golang.org/x/tools v0.31.0/go.mod h1:naFTU+Cev749tSJRXJlna0T3WxKvb1kWEx15xA4SdmQ=
golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-google.golang.org/genproto/googleapis/api v0.0.0-20230822172742-b8732ec3820d h1:DoPTO70H+bcDXcd39vOqb2viZxgqeBeSGtZ55yZU4/Q=
-google.golang.org/genproto/googleapis/api v0.0.0-20230822172742-b8732ec3820d/go.mod h1:KjSP20unUpOx5kyQUFa7k4OJg0qeJ7DEZflGDu2p6Bk=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d h1:uvYuEyMHKNt+lT4K3bN6fGswmK8qSvcreM3BwjDh+y4=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
-google.golang.org/grpc v1.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk=
-google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98=
-google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
-google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
-google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
-google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
-google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
-google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
+google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a h1:nwKuGPlUAt+aR+pcrkfFRrTU1BVrSmYyYMxYbUIVHr0=
+google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a/go.mod h1:3kWAYMk1I75K4vykHtKt2ycnOgpA6974V7bREqbsenU=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a h1:51aaUVRocpvUOSQKM6Q7VuoaktNIaMCLuhZB6DKksq4=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a/go.mod h1:uRxBH1mhmO8PGhU89cMcHaXKZqO+OfakD8QQO0oYwlQ=
+google.golang.org/grpc v1.72.0 h1:S7UkcVa60b5AAQTaO6ZKamFp1zMZSU0fGDK2WZLbBnM=
+google.golang.org/grpc v1.72.0/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
-google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
-google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
+google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
+google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
-gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
@@ -324,10 +315,33 @@ gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24
gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc=
gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYskCTPBJVb9jqSc=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
-gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
+modernc.org/cc/v4 v4.25.2 h1:T2oH7sZdGvTaie0BRNFbIYsabzCxUQg8nLqCdQ2i0ic=
+modernc.org/cc/v4 v4.25.2/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0=
+modernc.org/ccgo/v4 v4.25.1 h1:TFSzPrAGmDsdnhT9X2UrcPMI3N/mJ9/X9ykKXwLhDsU=
+modernc.org/ccgo/v4 v4.25.1/go.mod h1:njjuAYiPflywOOrm3B7kCB444ONP5pAVr8PIEoE0uDw=
+modernc.org/fileutil v1.3.0 h1:gQ5SIzK3H9kdfai/5x41oQiKValumqNTDXMvKo62HvE=
+modernc.org/fileutil v1.3.0/go.mod h1:XatxS8fZi3pS8/hKG2GH/ArUogfxjpEKs3Ku3aK4JyQ=
+modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI=
+modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito=
+modernc.org/libc v1.62.1 h1:s0+fv5E3FymN8eJVmnk0llBe6rOxCu/DEU+XygRbS8s=
+modernc.org/libc v1.62.1/go.mod h1:iXhATfJQLjG3NWy56a6WVU73lWOcdYVxsvwCgoPljuo=
+modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU=
+modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg=
+modernc.org/memory v1.9.1 h1:V/Z1solwAVmMW1yttq3nDdZPJqV1rM05Ccq6KMSZ34g=
+modernc.org/memory v1.9.1/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw=
+modernc.org/opt v0.1.4 h1:2kNGMRiUjrp4LcaPuLY2PzUfqM/w9N23quVwhKt5Qm8=
+modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns=
+modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w=
+modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE=
+modernc.org/sqlite v1.37.0 h1:s1TMe7T3Q3ovQiK2Ouz4Jwh7dw4ZDqbebSDTlSJdfjI=
+modernc.org/sqlite v1.37.0/go.mod h1:5YiWv+YviqGMuGw4V+PNplcyaJ5v+vQd7TQOgkACoJM=
+modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0=
+modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A=
+modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
+modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM=
diff --git a/internal/analyzer/analyzer.go b/internal/analyzer/analyzer.go
index 85ae587b6e..3d7e3a0287 100644
--- a/internal/analyzer/analyzer.go
+++ b/internal/analyzer/analyzer.go
@@ -48,7 +48,7 @@ func (c *CachedAnalyzer) Analyze(ctx context.Context, n ast.Node, q string, sche
}
func (c *CachedAnalyzer) analyze(ctx context.Context, n ast.Node, q string, schema []string, np *named.ParamSet) (*analysis.Analysis, bool, error) {
- // Only cache queries for managed databases. We can't be certain the the
+ // Only cache queries for managed databases. We can't be certain the
// database is in an unchanged state otherwise
if !c.db.Managed {
return nil, true, nil
diff --git a/internal/bundler/upload.go b/internal/bundler/upload.go
index a04eaf9ed0..49e3b44a4c 100644
--- a/internal/bundler/upload.go
+++ b/internal/bundler/upload.go
@@ -86,7 +86,7 @@ func annotate() map[string]string {
return labels
}
-func BuildRequest(ctx context.Context, dir, configPath string, results []*QuerySetArchive) (*pb.UploadArchiveRequest, error) {
+func BuildRequest(ctx context.Context, dir, configPath string, results []*QuerySetArchive, tags []string) (*pb.UploadArchiveRequest, error) {
conf, err := readFile(dir, configPath)
if err != nil {
return nil, err
@@ -94,6 +94,7 @@ func BuildRequest(ctx context.Context, dir, configPath string, results []*QueryS
res := &pb.UploadArchiveRequest{
SqlcVersion: info.Version,
Config: conf,
+ Tags: tags,
Annotations: annotate(),
}
for i, result := range results {
@@ -126,12 +127,12 @@ func BuildRequest(ctx context.Context, dir, configPath string, results []*QueryS
return res, nil
}
-func (up *Uploader) buildRequest(ctx context.Context, results []*QuerySetArchive) (*pb.UploadArchiveRequest, error) {
- return BuildRequest(ctx, up.dir, up.configPath, results)
+func (up *Uploader) buildRequest(ctx context.Context, results []*QuerySetArchive, tags []string) (*pb.UploadArchiveRequest, error) {
+ return BuildRequest(ctx, up.dir, up.configPath, results, tags)
}
func (up *Uploader) DumpRequestOut(ctx context.Context, result []*QuerySetArchive) error {
- req, err := up.buildRequest(ctx, result)
+ req, err := up.buildRequest(ctx, result, []string{})
if err != nil {
return err
}
@@ -148,11 +149,11 @@ func (up *Uploader) DumpRequestOut(ctx context.Context, result []*QuerySetArchiv
return nil
}
-func (up *Uploader) Upload(ctx context.Context, result []*QuerySetArchive) error {
+func (up *Uploader) Upload(ctx context.Context, result []*QuerySetArchive, tags []string) error {
if err := up.Validate(); err != nil {
return err
}
- req, err := up.buildRequest(ctx, result)
+ req, err := up.buildRequest(ctx, result, tags)
if err != nil {
return err
}
diff --git a/internal/cmd/cmd.go b/internal/cmd/cmd.go
index 3a60704125..93fd6bbeaa 100644
--- a/internal/cmd/cmd.go
+++ b/internal/cmd/cmd.go
@@ -36,7 +36,6 @@ func init() {
func Do(args []string, stdin io.Reader, stdout io.Writer, stderr io.Writer) int {
rootCmd := &cobra.Command{Use: "sqlc", SilenceUsage: true}
rootCmd.PersistentFlags().StringP("file", "f", "", "specify an alternate config file (default: sqlc.yaml)")
- rootCmd.PersistentFlags().BoolP("experimental", "x", false, "DEPRECATED: enable experimental features (default: false)")
rootCmd.PersistentFlags().Bool("no-remote", false, "disable remote execution (default: false)")
rootCmd.PersistentFlags().Bool("remote", false, "enable remote execution (default: false)")
@@ -150,7 +149,7 @@ func ParseEnv(c *cobra.Command) Env {
return Env{
DryRun: dr != nil && dr.Changed,
Debug: opts.DebugFromEnv(),
- Remote: r != nil && nr.Value.String() == "true",
+ Remote: r != nil && r.Value.String() == "true",
NoRemote: nr != nil && nr.Value.String() == "true",
}
}
diff --git a/internal/cmd/createdb.go b/internal/cmd/createdb.go
index 9298dfb088..02b3031352 100644
--- a/internal/cmd/createdb.go
+++ b/internal/cmd/createdb.go
@@ -5,12 +5,12 @@ import (
"fmt"
"os"
"runtime/trace"
+ "time"
"github.com/spf13/cobra"
"github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/dbmanager"
"github.com/sqlc-dev/sqlc/internal/migrations"
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
"github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
)
@@ -88,20 +88,16 @@ func CreateDB(ctx context.Context, dir, filename, querySetName string, o *Option
ddl = append(ddl, migrations.RemoveRollbackStatements(string(contents)))
}
- client, err := quickdb.NewClientFromConfig(conf.Cloud)
- if err != nil {
- return fmt.Errorf("client error: %w", err)
- }
-
- resp, err := client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
+ now := time.Now().UTC().UnixNano()
+ client := dbmanager.NewClient(conf.Servers)
+ resp, err := client.CreateDatabase(ctx, &dbmanager.CreateDatabaseRequest{
Engine: string(queryset.Engine),
- Region: quickdb.GetClosestRegion(),
Migrations: ddl,
+ Prefix: fmt.Sprintf("sqlc_createdb_%d", now),
})
if err != nil {
return fmt.Errorf("managed: create database: %w", err)
}
- fmt.Fprintln(os.Stderr, "WARNING: This database will be removed in two minutes")
fmt.Println(resp.Uri)
return nil
}
diff --git a/internal/cmd/generate.go b/internal/cmd/generate.go
index fc02e94d8c..00e8871c7e 100644
--- a/internal/cmd/generate.go
+++ b/internal/cmd/generate.go
@@ -9,6 +9,7 @@ import (
"os"
"path/filepath"
"runtime/trace"
+ "strings"
"sync"
"google.golang.org/grpc"
@@ -208,8 +209,21 @@ func (g *generator) ProcessResult(ctx context.Context, combo config.CombinedSett
files[file.Name] = string(file.Contents)
}
g.m.Lock()
+
+ // out is specified by the user, not a plugin
+ absout := filepath.Join(g.dir, out)
+
for n, source := range files {
filename := filepath.Join(g.dir, out, n)
+ // filepath.Join calls filepath.Clean which should remove all "..", but
+ // double check to make sure
+ if strings.Contains(filename, "..") {
+ return fmt.Errorf("invalid file output path: %s", filename)
+ }
+ // The output file must be contained inside the output directory
+ if !strings.HasPrefix(filename, absout) {
+ return fmt.Errorf("invalid file output path: %s", filename)
+ }
g.output[filename] = source
}
g.m.Unlock()
@@ -335,8 +349,9 @@ func codegen(ctx context.Context, combo config.CombinedSettings, sql OutputPair,
switch {
case plug.Process != nil:
handler = &process.Runner{
- Cmd: plug.Process.Cmd,
- Env: plug.Env,
+ Cmd: plug.Process.Cmd,
+ Env: plug.Env,
+ Format: plug.Process.Format,
}
case plug.WASM != nil:
handler = &wasm.Runner{
diff --git a/internal/cmd/options.go b/internal/cmd/options.go
index 8dd99fb04f..02d3614f4e 100644
--- a/internal/cmd/options.go
+++ b/internal/cmd/options.go
@@ -7,8 +7,13 @@ import (
)
type Options struct {
- Env Env
- Stderr io.Writer
+ Env Env
+ Stderr io.Writer
+ // TODO: Move these to a command-specific struct
+ Tags []string
+ Against string
+
+ // Testing only
MutateConfig func(*config.Config)
}
diff --git a/internal/cmd/push.go b/internal/cmd/push.go
index 221a0ffd3e..19aca6739b 100644
--- a/internal/cmd/push.go
+++ b/internal/cmd/push.go
@@ -13,6 +13,10 @@ import (
"github.com/sqlc-dev/sqlc/internal/config"
)
+func init() {
+ pushCmd.Flags().StringSliceP("tag", "t", nil, "tag this push with a value")
+}
+
var pushCmd = &cobra.Command{
Use: "push",
Aliases: []string{"upload"},
@@ -20,9 +24,14 @@ var pushCmd = &cobra.Command{
RunE: func(cmd *cobra.Command, args []string) error {
stderr := cmd.ErrOrStderr()
dir, name := getConfigPath(stderr, cmd.Flag("file"))
+ tags, err := cmd.Flags().GetStringSlice("tag")
+ if err != nil {
+ return err
+ }
opts := &Options{
Env: ParseEnv(cmd),
Stderr: stderr,
+ Tags: tags,
}
if err := Push(cmd.Context(), dir, name, opts); err != nil {
fmt.Fprintf(stderr, "error pushing: %s\n", err)
@@ -78,6 +87,6 @@ func Push(ctx context.Context, dir, filename string, opts *Options) error {
if e.DryRun {
return up.DumpRequestOut(ctx, p.results)
} else {
- return up.Upload(ctx, p.results)
+ return up.Upload(ctx, p.results, opts.Tags)
}
}
diff --git a/internal/cmd/verify.go b/internal/cmd/verify.go
index b17b5305e3..a52c218bff 100644
--- a/internal/cmd/verify.go
+++ b/internal/cmd/verify.go
@@ -2,28 +2,46 @@ package cmd
import (
"context"
+ "database/sql"
+ "errors"
"fmt"
+ "log/slog"
"os"
+ _ "github.com/jackc/pgx/v5/stdlib"
"github.com/spf13/cobra"
+ "google.golang.org/protobuf/proto"
- "github.com/sqlc-dev/sqlc/internal/bundler"
+ "github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/dbmanager"
+ "github.com/sqlc-dev/sqlc/internal/migrations"
+ "github.com/sqlc-dev/sqlc/internal/plugin"
"github.com/sqlc-dev/sqlc/internal/quickdb"
- quickdbv1 "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
+ pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
+ "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
)
+func init() {
+ verifyCmd.Flags().String("against", "", "compare against this tag")
+}
+
var verifyCmd = &cobra.Command{
Use: "verify",
Short: "Verify schema, queries, and configuration for this project",
RunE: func(cmd *cobra.Command, args []string) error {
stderr := cmd.ErrOrStderr()
dir, name := getConfigPath(stderr, cmd.Flag("file"))
+ against, err := cmd.Flags().GetString("against")
+ if err != nil {
+ return err
+ }
opts := &Options{
- Env: ParseEnv(cmd),
- Stderr: stderr,
+ Env: ParseEnv(cmd),
+ Stderr: stderr,
+ Against: against,
}
if err := Verify(cmd.Context(), dir, name, opts); err != nil {
- fmt.Fprintf(stderr, "error verifying: %s\n", err)
+ fmt.Fprintf(stderr, "Error verifying queries: %s\n", err)
os.Exit(1)
}
return nil
@@ -32,49 +50,107 @@ var verifyCmd = &cobra.Command{
func Verify(ctx context.Context, dir, filename string, opts *Options) error {
stderr := opts.Stderr
- configPath, conf, err := readConfig(stderr, dir, filename)
+ _, conf, err := readConfig(stderr, dir, filename)
if err != nil {
return err
}
+
client, err := quickdb.NewClientFromConfig(conf.Cloud)
if err != nil {
return fmt.Errorf("client init failed: %w", err)
}
- p := &pusher{}
- if err := Process(ctx, p, dir, filename, opts); err != nil {
- return err
- }
- req, err := bundler.BuildRequest(ctx, dir, configPath, p.results)
- if err != nil {
- return err
- }
- if val := os.Getenv("CI"); val != "" {
- req.Annotations["env.ci"] = val
- }
- if val := os.Getenv("GITHUB_RUN_ID"); val != "" {
- req.Annotations["github.run.id"] = val
- }
- resp, err := client.VerifyQuerySets(ctx, &quickdbv1.VerifyQuerySetsRequest{
- SqlcVersion: req.SqlcVersion,
- QuerySets: req.QuerySets,
- Config: req.Config,
- Annotations: req.Annotations,
+ manager := dbmanager.NewClient(conf.Servers)
+
+ // Get query sets from a previous archive by tag. If no tag is provided, get
+ // the latest query sets.
+ previous, err := client.GetQuerySets(ctx, &pb.GetQuerySetsRequest{
+ Tag: opts.Against,
})
if err != nil {
return err
}
- summaryPath := os.Getenv("GITHUB_STEP_SUMMARY")
- if resp.Summary != "" {
- if _, err := os.Stat(summaryPath); err == nil {
- if err := os.WriteFile(summaryPath, []byte(resp.Summary), 0644); err != nil {
+
+ // Create a mapping of name to query set
+ existing := map[string]config.SQL{}
+ for _, qs := range conf.SQL {
+ existing[qs.Name] = qs
+ }
+
+ var verr error
+ for _, qs := range previous.QuerySets {
+ // TODO: Create a function for this so that we can return early on errors
+
+ check := func() error {
+ if qs.Name == "" {
+ return fmt.Errorf("unnamed query set")
+ }
+
+ current, found := existing[qs.Name]
+ if !found {
+ return fmt.Errorf("unknown query set: %s", qs.Name)
+ }
+
+ // Read the schema files into memory, removing rollback statements
+ var ddl []string
+ files, err := sqlpath.Glob(current.Schema)
+ if err != nil {
+ return err
+ }
+ for _, schema := range files {
+ contents, err := os.ReadFile(schema)
+ if err != nil {
+ return fmt.Errorf("read file: %w", err)
+ }
+ ddl = append(ddl, migrations.RemoveRollbackStatements(string(contents)))
+ }
+
+ var codegen plugin.GenerateRequest
+ if err := proto.Unmarshal(qs.CodegenRequest.Contents, &codegen); err != nil {
+ return err
+ }
+
+ // Create (or re-use) a database to verify against
+ resp, err := manager.CreateDatabase(ctx, &dbmanager.CreateDatabaseRequest{
+ Engine: string(current.Engine),
+ Migrations: ddl,
+ })
+ if err != nil {
+ return err
+ }
+
+ db, err := sql.Open("pgx", resp.Uri)
+ if err != nil {
return err
}
+ defer db.Close()
+
+ var qerr error
+ for _, query := range codegen.Queries {
+ stmt, err := db.PrepareContext(ctx, query.Text)
+ if err != nil {
+ fmt.Fprintf(stderr, "Failed to prepare the following query:\n")
+ fmt.Fprintf(stderr, "%s\n", query.Text)
+ fmt.Fprintf(stderr, "Error was: %s\n", err)
+ qerr = err
+ continue
+ }
+ if err := stmt.Close(); err != nil {
+ slog.Error("stmt.Close failed", "err", err)
+ }
+ }
+
+ return qerr
+ }
+
+ if err := check(); err != nil {
+ verr = errors.New("errored")
+ fmt.Fprintf(stderr, "FAIL\t%s\n", qs.Name)
+ fmt.Fprintf(stderr, " ERROR\t%s\n", err)
+ } else {
+ fmt.Fprintf(stderr, "ok\t%s\n", qs.Name)
}
}
- fmt.Fprintf(stderr, resp.Output)
- if resp.Errored {
- return fmt.Errorf("BREAKING CHANGES DETECTED")
- }
- return nil
+
+ return verr
}
diff --git a/internal/cmd/vet.go b/internal/cmd/vet.go
index 2dd9069ab1..8a7f8077db 100644
--- a/internal/cmd/vet.go
+++ b/internal/cmd/vet.go
@@ -6,11 +6,13 @@ import (
"encoding/json"
"errors"
"fmt"
+ "github.com/sqlc-dev/sqlc/internal/constants"
"io"
"log"
"os"
"path/filepath"
"runtime/trace"
+ "slices"
"strings"
"time"
@@ -18,17 +20,16 @@ import (
"github.com/google/cel-go/cel"
"github.com/google/cel-go/ext"
"github.com/jackc/pgx/v5"
- _ "github.com/mattn/go-sqlite3"
"github.com/spf13/cobra"
"google.golang.org/protobuf/encoding/protojson"
"github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/dbmanager"
"github.com/sqlc-dev/sqlc/internal/debug"
"github.com/sqlc-dev/sqlc/internal/migrations"
"github.com/sqlc-dev/sqlc/internal/opts"
"github.com/sqlc-dev/sqlc/internal/plugin"
"github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
"github.com/sqlc-dev/sqlc/internal/shfmt"
"github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
"github.com/sqlc-dev/sqlc/internal/vet"
@@ -38,9 +39,6 @@ var ErrFailedChecks = errors.New("failed checks")
var pjson = protojson.UnmarshalOptions{AllowPartial: true, DiscardUnknown: true}
-const RuleDbPrepare = "sqlc/db-prepare"
-const QueryFlagSqlcVetDisable = "@sqlc-vet-disable"
-
func NewCmdVet() *cobra.Command {
return &cobra.Command{
Use: "vet",
@@ -110,7 +108,7 @@ func Vet(ctx context.Context, dir, filename string, opts *Options) error {
}
rules := map[string]rule{
- RuleDbPrepare: {NeedsPrepare: true},
+ constants.QueryRuleDbPrepare: {NeedsPrepare: true},
}
for _, c := range conf.Rules {
@@ -387,7 +385,7 @@ type checker struct {
Env *cel.Env
Stderr io.Writer
OnlyManagedDB bool
- Client pb.QuickClient
+ Client dbmanager.Client
Replacer *shfmt.Replacer
}
@@ -406,10 +404,7 @@ func (c *checker) fetchDatabaseUri(ctx context.Context, s config.SQL) (string, f
if c.Client == nil {
// FIXME: Eventual race condition
- client, err := quickdb.NewClientFromConfig(c.Conf.Cloud)
- if err != nil {
- return "", cleanup, fmt.Errorf("managed: client: %w", err)
- }
+ client := dbmanager.NewClient(c.Conf.Servers)
c.Client = client
}
@@ -426,22 +421,14 @@ func (c *checker) fetchDatabaseUri(ctx context.Context, s config.SQL) (string, f
ddl = append(ddl, migrations.RemoveRollbackStatements(string(contents)))
}
- resp, err := c.Client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
+ resp, err := c.Client.CreateDatabase(ctx, &dbmanager.CreateDatabaseRequest{
Engine: string(s.Engine),
- Region: quickdb.GetClosestRegion(),
Migrations: ddl,
})
if err != nil {
return "", cleanup, fmt.Errorf("managed: create database: %w", err)
}
- cleanup = func() error {
- _, err := c.Client.DropEphemeralDatabase(ctx, &pb.DropEphemeralDatabaseRequest{
- DatabaseId: resp.DatabaseId,
- })
- return err
- }
-
var uri string
switch s.Engine {
case config.EngineMySQL:
@@ -529,7 +516,7 @@ func (c *checker) checkSQL(ctx context.Context, s config.SQL) error {
prep = &dbPreparer{db}
expl = &mysqlExplainer{db}
case config.EngineSQLite:
- db, err := sql.Open("sqlite3", dburl)
+ db, err := sql.Open("sqlite", dburl)
if err != nil {
return fmt.Errorf("database: connection error: %s", err)
}
@@ -550,11 +537,23 @@ func (c *checker) checkSQL(ctx context.Context, s config.SQL) error {
req := codeGenRequest(result, combo)
cfg := vetConfig(req)
for i, query := range req.Queries {
- if result.Queries[i].Metadata.Flags[QueryFlagSqlcVetDisable] {
- if debug.Active {
- log.Printf("Skipping vet rules for query: %s\n", query.Name)
+ md := result.Queries[i].Metadata
+ if md.Flags[constants.QueryFlagSqlcVetDisable] {
+ // If the vet disable flag is specified without any rules listed, all rules are ignored.
+ if len(md.RuleSkiplist) == 0 {
+ if debug.Active {
+ log.Printf("Skipping all vet rules for query: %s\n", query.Name)
+ }
+ continue
+ }
+
+ // Rules which are listed to be disabled but not declared in the config file are rejected.
+ for r := range md.RuleSkiplist {
+ if !slices.Contains(s.Rules, r) {
+ fmt.Fprintf(c.Stderr, "%s: %s: rule-check error: rule %q does not exist in the config file\n", query.Filename, query.Name, r)
+ errored = true
+ }
}
- continue
}
evalMap := map[string]any{
@@ -563,74 +562,81 @@ func (c *checker) checkSQL(ctx context.Context, s config.SQL) error {
}
for _, name := range s.Rules {
- rule, ok := c.Rules[name]
- if !ok {
- return fmt.Errorf("type-check error: a rule with the name '%s' does not exist", name)
- }
-
- if rule.NeedsPrepare {
- if prep == nil {
- fmt.Fprintf(c.Stderr, "%s: %s: %s: error preparing query: database connection required\n", query.Filename, query.Name, name)
- errored = true
- continue
+ if _, skip := md.RuleSkiplist[name]; skip {
+ if debug.Active {
+ log.Printf("Skipping vet rule %q for query: %s\n", name, query.Name)
}
- prepName := fmt.Sprintf("sqlc_vet_%d_%d", time.Now().Unix(), i)
- if err := prep.Prepare(ctx, prepName, query.Text); err != nil {
- fmt.Fprintf(c.Stderr, "%s: %s: %s: error preparing query: %s\n", query.Filename, query.Name, name, err)
- errored = true
- continue
+ } else {
+ rule, ok := c.Rules[name]
+ if !ok {
+ return fmt.Errorf("type-check error: a rule with the name '%s' does not exist", name)
}
- }
- // short-circuit for "sqlc/db-prepare" rule which doesn't have a CEL program
- if rule.Program == nil {
- continue
- }
-
- // Get explain output for this query if we need it
- _, pgsqlOK := evalMap["postgresql"]
- _, mysqlOK := evalMap["mysql"]
- if rule.NeedsExplain && !(pgsqlOK || mysqlOK) {
- if expl == nil {
- fmt.Fprintf(c.Stderr, "%s: %s: %s: error explaining query: database connection required\n", query.Filename, query.Name, name)
- errored = true
- continue
+ if rule.NeedsPrepare {
+ if prep == nil {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s: error preparing query: database connection required\n", query.Filename, query.Name, name)
+ errored = true
+ continue
+ }
+ prepName := fmt.Sprintf("sqlc_vet_%d_%d", time.Now().Unix(), i)
+ if err := prep.Prepare(ctx, prepName, query.Text); err != nil {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s: error preparing query: %s\n", query.Filename, query.Name, name, err)
+ errored = true
+ continue
+ }
}
- engineOutput, err := expl.Explain(ctx, query.Text, query.Params...)
- if err != nil {
- fmt.Fprintf(c.Stderr, "%s: %s: %s: error explaining query: %s\n", query.Filename, query.Name, name, err)
- errored = true
+
+ // short-circuit for "sqlc/db-prepare" rule which doesn't have a CEL program
+ if rule.Program == nil {
continue
}
- evalMap["postgresql"] = engineOutput.PostgreSQL
- evalMap["mysql"] = engineOutput.MySQL
- }
+ // Get explain output for this query if we need it
+ _, pgsqlOK := evalMap["postgresql"]
+ _, mysqlOK := evalMap["mysql"]
+ if rule.NeedsExplain && !(pgsqlOK || mysqlOK) {
+ if expl == nil {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s: error explaining query: database connection required\n", query.Filename, query.Name, name)
+ errored = true
+ continue
+ }
+ engineOutput, err := expl.Explain(ctx, query.Text, query.Params...)
+ if err != nil {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s: error explaining query: %s\n", query.Filename, query.Name, name, err)
+ errored = true
+ continue
+ }
+
+ evalMap["postgresql"] = engineOutput.PostgreSQL
+ evalMap["mysql"] = engineOutput.MySQL
+ }
- if debug.Debug.DumpVetEnv {
- fmt.Printf("vars for rule '%s' evaluating against query '%s':\n", name, query.Name)
- debug.DumpAsJSON(evalMap)
- }
+ if debug.Debug.DumpVetEnv {
+ fmt.Printf("vars for rule '%s' evaluating against query '%s':\n", name, query.Name)
+ debug.DumpAsJSON(evalMap)
+ }
- out, _, err := (*rule.Program).Eval(evalMap)
- if err != nil {
- return err
- }
- tripped, ok := out.Value().(bool)
- if !ok {
- return fmt.Errorf("expression returned non-bool value: %v", out.Value())
- }
- if tripped {
- // TODO: Get line numbers in the output
- if rule.Message == "" {
- fmt.Fprintf(c.Stderr, "%s: %s: %s\n", query.Filename, query.Name, name)
- } else {
- fmt.Fprintf(c.Stderr, "%s: %s: %s: %s\n", query.Filename, query.Name, name, rule.Message)
+ out, _, err := (*rule.Program).Eval(evalMap)
+ if err != nil {
+ return err
+ }
+ tripped, ok := out.Value().(bool)
+ if !ok {
+ return fmt.Errorf("expression returned non-bool value: %v", out.Value())
+ }
+ if tripped {
+ // TODO: Get line numbers in the output
+ if rule.Message == "" {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s\n", query.Filename, query.Name, name)
+ } else {
+ fmt.Fprintf(c.Stderr, "%s: %s: %s: %s\n", query.Filename, query.Name, name, rule.Message)
+ }
+ errored = true
}
- errored = true
}
}
}
+
if errored {
return ErrFailedChecks
}
diff --git a/internal/cmd/vet_modernc.go b/internal/cmd/vet_modernc.go
new file mode 100644
index 0000000000..74313007af
--- /dev/null
+++ b/internal/cmd/vet_modernc.go
@@ -0,0 +1,7 @@
+//go:build !wasm
+
+package cmd
+
+import (
+ _ "modernc.org/sqlite"
+)
diff --git a/internal/codegen/golang/driver.go b/internal/codegen/golang/driver.go
index 7ef723b55e..5e3a533dcc 100644
--- a/internal/codegen/golang/driver.go
+++ b/internal/codegen/golang/driver.go
@@ -1,46 +1,14 @@
package golang
-type SQLDriver string
+import "github.com/sqlc-dev/sqlc/internal/codegen/golang/opts"
-const (
- SQLPackagePGXV4 string = "pgx/v4"
- SQLPackagePGXV5 string = "pgx/v5"
- SQLPackageStandard string = "database/sql"
-)
-
-const (
- SQLDriverPGXV4 SQLDriver = "github.com/jackc/pgx/v4"
- SQLDriverPGXV5 = "github.com/jackc/pgx/v5"
- SQLDriverLibPQ = "github.com/lib/pq"
- SQLDriverGoSQLDriverMySQL = "github.com/go-sql-driver/mysql"
-)
-
-func parseDriver(sqlPackage string) SQLDriver {
+func parseDriver(sqlPackage string) opts.SQLDriver {
switch sqlPackage {
- case SQLPackagePGXV4:
- return SQLDriverPGXV4
- case SQLPackagePGXV5:
- return SQLDriverPGXV5
- default:
- return SQLDriverLibPQ
- }
-}
-
-func (d SQLDriver) IsPGX() bool {
- return d == SQLDriverPGXV4 || d == SQLDriverPGXV5
-}
-
-func (d SQLDriver) IsGoSQLDriverMySQL() bool {
- return d == SQLDriverGoSQLDriverMySQL
-}
-
-func (d SQLDriver) Package() string {
- switch d {
- case SQLDriverPGXV4:
- return SQLPackagePGXV4
- case SQLDriverPGXV5:
- return SQLPackagePGXV5
+ case opts.SQLPackagePGXV4:
+ return opts.SQLDriverPGXV4
+ case opts.SQLPackagePGXV5:
+ return opts.SQLDriverPGXV5
default:
- return SQLPackageStandard
+ return opts.SQLDriverLibPQ
}
}
diff --git a/internal/codegen/golang/gen.go b/internal/codegen/golang/gen.go
index 54b7427638..ac91cc537f 100644
--- a/internal/codegen/golang/gen.go
+++ b/internal/codegen/golang/gen.go
@@ -19,7 +19,7 @@ import (
type tmplCtx struct {
Q string
Package string
- SQLDriver SQLDriver
+ SQLDriver opts.SQLDriver
Enums []Enum
Structs []Struct
GoQueries []Query
@@ -39,7 +39,9 @@ type tmplCtx struct {
EmitAllEnumValues bool
UsesCopyFrom bool
UsesBatch bool
+ OmitSqlcVersion bool
BuildTags string
+ WrapErrors bool
}
func (t *tmplCtx) OutputQuery(sourceName string) bool {
@@ -97,6 +99,9 @@ func (t *tmplCtx) codegenQueryRetval(q Query) (string, error) {
case ":execrows", ":execlastid":
return "result, err :=", nil
case ":execresult":
+ if t.WrapErrors {
+ return "result, err :=", nil
+ }
return "return", nil
default:
return "", fmt.Errorf("unhandled q.Cmd case %q", q.Cmd)
@@ -185,17 +190,19 @@ func generate(req *plugin.GenerateRequest, options *opts.Options, enums []Enum,
Structs: structs,
SqlcVersion: req.SqlcVersion,
BuildTags: options.BuildTags,
+ OmitSqlcVersion: options.OmitSqlcVersion,
+ WrapErrors: options.WrapErrors,
}
- if tctx.UsesCopyFrom && !tctx.SQLDriver.IsPGX() && options.SqlDriver != SQLDriverGoSQLDriverMySQL {
+ if tctx.UsesCopyFrom && !tctx.SQLDriver.IsPGX() && options.SqlDriver != opts.SQLDriverGoSQLDriverMySQL {
return nil, errors.New(":copyfrom is only supported by pgx and github.com/go-sql-driver/mysql")
}
- if tctx.UsesCopyFrom && options.SqlDriver == SQLDriverGoSQLDriverMySQL {
+ if tctx.UsesCopyFrom && options.SqlDriver == opts.SQLDriverGoSQLDriverMySQL {
if err := checkNoTimesForMySQLCopyFrom(queries); err != nil {
return nil, err
}
- tctx.SQLDriver = SQLDriverGoSQLDriverMySQL
+ tctx.SQLDriver = opts.SQLDriverGoSQLDriverMySQL
}
if tctx.UsesBatch && !tctx.SQLDriver.IsPGX() {
@@ -207,6 +214,7 @@ func generate(req *plugin.GenerateRequest, options *opts.Options, enums []Enum,
"comment": sdk.DoubleSlashComment,
"escape": sdk.EscapeBacktick,
"imports": i.Imports,
+ "hasImports": i.HasImports,
"hasPrefix": strings.HasPrefix,
// These methods are Go specific, they do not belong in the codegen package
diff --git a/internal/codegen/golang/go_type.go b/internal/codegen/golang/go_type.go
index 4c491cba5a..0d72621efe 100644
--- a/internal/codegen/golang/go_type.go
+++ b/internal/codegen/golang/go_type.go
@@ -85,7 +85,7 @@ func goInnerType(req *plugin.GenerateRequest, options *opts.Options, col *plugin
case "postgresql":
return postgresType(req, options, col)
case "sqlite":
- return sqliteType(req, col)
+ return sqliteType(req, options, col)
default:
return "interface{}"
}
diff --git a/internal/codegen/golang/imports.go b/internal/codegen/golang/imports.go
index 83f72cd78a..ccca4f603c 100644
--- a/internal/codegen/golang/imports.go
+++ b/internal/codegen/golang/imports.go
@@ -75,6 +75,11 @@ func (i *importer) usesType(typ string) bool {
return false
}
+func (i *importer) HasImports(filename string) bool {
+ imports := i.Imports(filename)
+ return len(imports[0]) != 0 || len(imports[1]) != 0
+}
+
func (i *importer) Imports(filename string) [][]ImportSpec {
dbFileName := "db.go"
if i.Options.OutputDbFileName != "" {
@@ -121,10 +126,10 @@ func (i *importer) dbImports() fileImports {
sqlpkg := parseDriver(i.Options.SqlPackage)
switch sqlpkg {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
pkg = append(pkg, ImportSpec{Path: "github.com/jackc/pgconn"})
pkg = append(pkg, ImportSpec{Path: "github.com/jackc/pgx/v4"})
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
pkg = append(pkg, ImportSpec{Path: "github.com/jackc/pgx/v5/pgconn"})
pkg = append(pkg, ImportSpec{Path: "github.com/jackc/pgx/v5"})
default:
@@ -167,9 +172,9 @@ func buildImports(options *opts.Options, queries []Query, uses func(string) bool
for _, q := range queries {
if q.Cmd == metadata.CmdExecResult {
switch sqlpkg {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
pkg[ImportSpec{Path: "github.com/jackc/pgconn"}] = struct{}{}
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
pkg[ImportSpec{Path: "github.com/jackc/pgx/v5/pgconn"}] = struct{}{}
default:
std["database/sql"] = struct{}{}
@@ -184,7 +189,7 @@ func buildImports(options *opts.Options, queries []Query, uses func(string) bool
}
if uses("pgtype.") {
- if sqlpkg == SQLDriverPGXV5 {
+ if sqlpkg == opts.SQLDriverPGXV5 {
pkg[ImportSpec{Path: "github.com/jackc/pgx/v5/pgtype"}] = struct{}{}
} else {
pkg[ImportSpec{Path: "github.com/jackc/pgtype"}] = struct{}{}
@@ -390,13 +395,17 @@ func (i *importer) queryImports(filename string) fileImports {
}
sqlpkg := parseDriver(i.Options.SqlPackage)
- if sqlcSliceScan() {
+ if sqlcSliceScan() && !sqlpkg.IsPGX() {
std["strings"] = struct{}{}
}
if sliceScan() && !sqlpkg.IsPGX() {
pkg[ImportSpec{Path: "github.com/lib/pq"}] = struct{}{}
}
+ if i.Options.WrapErrors {
+ std["fmt"] = struct{}{}
+ }
+
return sortedImports(std, pkg)
}
@@ -424,7 +433,7 @@ func (i *importer) copyfromImports() fileImports {
})
std["context"] = struct{}{}
- if i.Options.SqlDriver == SQLDriverGoSQLDriverMySQL {
+ if i.Options.SqlDriver == opts.SQLDriverGoSQLDriverMySQL {
std["io"] = struct{}{}
std["fmt"] = struct{}{}
std["sync/atomic"] = struct{}{}
@@ -476,9 +485,9 @@ func (i *importer) batchImports() fileImports {
std["errors"] = struct{}{}
sqlpkg := parseDriver(i.Options.SqlPackage)
switch sqlpkg {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
pkg[ImportSpec{Path: "github.com/jackc/pgx/v4"}] = struct{}{}
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
pkg[ImportSpec{Path: "github.com/jackc/pgx/v5"}] = struct{}{}
}
diff --git a/internal/codegen/golang/mysql_type.go b/internal/codegen/golang/mysql_type.go
index 32e1df68c3..b8e8aa43c7 100644
--- a/internal/codegen/golang/mysql_type.go
+++ b/internal/codegen/golang/mysql_type.go
@@ -31,14 +31,31 @@ func mysqlType(req *plugin.GenerateRequest, options *opts.Options, col *plugin.C
} else {
if notNull {
if unsigned {
- return "uint32"
+ return "uint8"
}
- return "int32"
+ return "int8"
}
- return "sql.NullInt32"
+ // The database/sql package does not have a sql.NullInt8 type, so we
+ // use the smallest type they have which is NullInt16
+ return "sql.NullInt16"
}
- case "int", "integer", "smallint", "mediumint", "year":
+ case "year":
+ if notNull {
+ return "int16"
+ }
+ return "sql.NullInt16"
+
+ case "smallint":
+ if notNull {
+ if unsigned {
+ return "uint16"
+ }
+ return "int16"
+ }
+ return "sql.NullInt16"
+
+ case "int", "integer", "mediumint":
if notNull {
if unsigned {
return "uint32"
diff --git a/internal/codegen/golang/opts/enum.go b/internal/codegen/golang/opts/enum.go
new file mode 100644
index 0000000000..40457d040a
--- /dev/null
+++ b/internal/codegen/golang/opts/enum.go
@@ -0,0 +1,64 @@
+package opts
+
+import "fmt"
+
+type SQLDriver string
+
+const (
+ SQLPackagePGXV4 string = "pgx/v4"
+ SQLPackagePGXV5 string = "pgx/v5"
+ SQLPackageStandard string = "database/sql"
+)
+
+var validPackages = map[string]struct{}{
+ string(SQLPackagePGXV4): {},
+ string(SQLPackagePGXV5): {},
+ string(SQLPackageStandard): {},
+}
+
+func validatePackage(sqlPackage string) error {
+ if _, found := validPackages[sqlPackage]; !found {
+ return fmt.Errorf("unknown SQL package: %s", sqlPackage)
+ }
+ return nil
+}
+
+const (
+ SQLDriverPGXV4 SQLDriver = "github.com/jackc/pgx/v4"
+ SQLDriverPGXV5 = "github.com/jackc/pgx/v5"
+ SQLDriverLibPQ = "github.com/lib/pq"
+ SQLDriverGoSQLDriverMySQL = "github.com/go-sql-driver/mysql"
+)
+
+var validDrivers = map[string]struct{}{
+ string(SQLDriverPGXV4): {},
+ string(SQLDriverPGXV5): {},
+ string(SQLDriverLibPQ): {},
+ string(SQLDriverGoSQLDriverMySQL): {},
+}
+
+func validateDriver(sqlDriver string) error {
+ if _, found := validDrivers[sqlDriver]; !found {
+ return fmt.Errorf("unknown SQL driver: %s", sqlDriver)
+ }
+ return nil
+}
+
+func (d SQLDriver) IsPGX() bool {
+ return d == SQLDriverPGXV4 || d == SQLDriverPGXV5
+}
+
+func (d SQLDriver) IsGoSQLDriverMySQL() bool {
+ return d == SQLDriverGoSQLDriverMySQL
+}
+
+func (d SQLDriver) Package() string {
+ switch d {
+ case SQLDriverPGXV4:
+ return SQLPackagePGXV4
+ case SQLDriverPGXV5:
+ return SQLPackagePGXV5
+ default:
+ return SQLPackageStandard
+ }
+}
diff --git a/internal/codegen/golang/opts/options.go b/internal/codegen/golang/opts/options.go
index 343dd8ae04..0d5d51c2dd 100644
--- a/internal/codegen/golang/opts/options.go
+++ b/internal/codegen/golang/opts/options.go
@@ -24,6 +24,7 @@ type Options struct {
EmitPointersForNullTypes bool `json:"emit_pointers_for_null_types" yaml:"emit_pointers_for_null_types"`
EmitEnumValidMethod bool `json:"emit_enum_valid_method,omitempty" yaml:"emit_enum_valid_method"`
EmitAllEnumValues bool `json:"emit_all_enum_values,omitempty" yaml:"emit_all_enum_values"`
+ EmitSqlAsComment bool `json:"emit_sql_as_comment,omitempty" yaml:"emit_sql_as_comment"`
JsonTagsCaseStyle string `json:"json_tags_case_style,omitempty" yaml:"json_tags_case_style"`
Package string `json:"package" yaml:"package"`
Out string `json:"out" yaml:"out"`
@@ -34,13 +35,18 @@ type Options struct {
OutputBatchFileName string `json:"output_batch_file_name,omitempty" yaml:"output_batch_file_name"`
OutputDbFileName string `json:"output_db_file_name,omitempty" yaml:"output_db_file_name"`
OutputModelsFileName string `json:"output_models_file_name,omitempty" yaml:"output_models_file_name"`
- OutputQuerierFileName string `json:"output_querier_file_name,omitempty" yaml:"output_queries_file_name"`
+ OutputQuerierFileName string `json:"output_querier_file_name,omitempty" yaml:"output_querier_file_name"`
OutputCopyfromFileName string `json:"output_copyfrom_file_name,omitempty" yaml:"output_copyfrom_file_name"`
OutputFilesSuffix string `json:"output_files_suffix,omitempty" yaml:"output_files_suffix"`
InflectionExcludeTableNames []string `json:"inflection_exclude_table_names,omitempty" yaml:"inflection_exclude_table_names"`
+ WrapErrors bool `json:"wrap_errors,omitempty" yaml:"wrap_errors"`
QueryParameterLimit *int32 `json:"query_parameter_limit,omitempty" yaml:"query_parameter_limit"`
+ OmitSqlcVersion bool `json:"omit_sqlc_version,omitempty" yaml:"omit_sqlc_version"`
OmitUnusedStructs bool `json:"omit_unused_structs,omitempty" yaml:"omit_unused_structs"`
BuildTags string `json:"build_tags,omitempty" yaml:"build_tags"`
+ Initialisms *[]string `json:"initialisms,omitempty" yaml:"initialisms"`
+
+ InitialismsMap map[string]struct{} `json:"-" yaml:"-"`
}
type GlobalOptions struct {
@@ -92,11 +98,33 @@ func parseOpts(req *plugin.GenerateRequest) (*Options, error) {
}
}
+ if options.SqlPackage != "" {
+ if err := validatePackage(options.SqlPackage); err != nil {
+ return nil, fmt.Errorf("invalid options: %s", err)
+ }
+ }
+
+ if options.SqlDriver != "" {
+ if err := validateDriver(options.SqlDriver); err != nil {
+ return nil, fmt.Errorf("invalid options: %s", err)
+ }
+ }
+
if options.QueryParameterLimit == nil {
options.QueryParameterLimit = new(int32)
*options.QueryParameterLimit = 1
}
+ if options.Initialisms == nil {
+ options.Initialisms = new([]string)
+ *options.Initialisms = []string{"id"}
+ }
+
+ options.InitialismsMap = map[string]struct{}{}
+ for _, initial := range *options.Initialisms {
+ options.InitialismsMap[initial] = struct{}{}
+ }
+
return &options, nil
}
diff --git a/internal/codegen/golang/postgresql_type.go b/internal/codegen/golang/postgresql_type.go
index 855d5425c0..398d01e2e8 100644
--- a/internal/codegen/golang/postgresql_type.go
+++ b/internal/codegen/golang/postgresql_type.go
@@ -48,7 +48,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int32"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int4"
}
return "sql.NullInt32"
@@ -60,7 +60,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int64"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int8"
}
return "sql.NullInt64"
@@ -72,7 +72,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int16"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int2"
}
return "sql.NullInt16"
@@ -84,7 +84,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int32"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int4"
}
return "sql.NullInt32"
@@ -96,7 +96,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int64"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int8"
}
return "sql.NullInt64"
@@ -108,7 +108,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*int16"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Int2"
}
return "sql.NullInt16"
@@ -120,7 +120,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*float64"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Float8"
}
return "sql.NullFloat64"
@@ -132,7 +132,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*float32"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Float4"
}
return "sql.NullFloat64" // TODO: Change to sql.NullFloat32 after updating the go.mod file
@@ -160,18 +160,18 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*bool"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Bool"
}
return "sql.NullBool"
- case "json":
+ case "json", "pg_catalog.json":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "[]byte"
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.JSON"
- case SQLDriverLibPQ:
+ case opts.SQLDriverLibPQ:
if notNull {
return "json.RawMessage"
} else {
@@ -181,13 +181,13 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
return "interface{}"
}
- case "jsonb":
+ case "jsonb", "pg_catalog.jsonb":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "[]byte"
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.JSONB"
- case SQLDriverLibPQ:
+ case opts.SQLDriverLibPQ:
if notNull {
return "json.RawMessage"
} else {
@@ -201,7 +201,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
return "[]byte"
case "date":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Date"
}
if notNull {
@@ -213,7 +213,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
return "sql.NullTime"
case "pg_catalog.time":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Time"
}
if notNull {
@@ -233,8 +233,8 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
}
return "sql.NullTime"
- case "pg_catalog.timestamp":
- if driver == SQLDriverPGXV5 {
+ case "pg_catalog.timestamp", "timestamp":
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Timestamp"
}
if notNull {
@@ -246,7 +246,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
return "sql.NullTime"
case "pg_catalog.timestamptz", "timestamptz":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Timestamptz"
}
if notNull {
@@ -264,13 +264,13 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*string"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Text"
}
return "sql.NullString"
case "uuid":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.UUID"
}
if notNull {
@@ -283,14 +283,14 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "inet":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
if notNull {
return "netip.Addr"
}
return "*netip.Addr"
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Inet"
- case SQLDriverLibPQ:
+ case opts.SQLDriverLibPQ:
return "pqtype.Inet"
default:
return "interface{}"
@@ -298,14 +298,14 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "cidr":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
if notNull {
return "netip.Prefix"
}
return "*netip.Prefix"
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.CIDR"
- case SQLDriverLibPQ:
+ case opts.SQLDriverLibPQ:
return "pqtype.CIDR"
default:
return "interface{}"
@@ -313,11 +313,11 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "macaddr", "macaddr8":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "net.HardwareAddr"
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Macaddr"
- case SQLDriverLibPQ:
+ case opts.SQLDriverLibPQ:
return "pqtype.Macaddr"
default:
return "interface{}"
@@ -335,13 +335,13 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
if emitPointersForNull {
return "*string"
}
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Text"
}
return "sql.NullString"
case "interval", "pg_catalog.interval":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Interval"
}
if notNull {
@@ -354,9 +354,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "daterange":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Daterange"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Date]"
default:
return "interface{}"
@@ -364,7 +364,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "datemultirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Date]]"
default:
return "interface{}"
@@ -372,9 +372,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "tsrange":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Tsrange"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Timestamp]"
default:
return "interface{}"
@@ -382,7 +382,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "tsmultirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Timestamp]]"
default:
return "interface{}"
@@ -390,9 +390,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "tstzrange":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Tstzrange"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Timestamptz]"
default:
return "interface{}"
@@ -400,7 +400,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "tstzmultirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Timestamptz]]"
default:
return "interface{}"
@@ -408,9 +408,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "numrange":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Numrange"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Numeric]"
default:
return "interface{}"
@@ -418,7 +418,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "nummultirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Numeric]]"
default:
return "interface{}"
@@ -426,9 +426,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "int4range":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Int4range"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Int4]"
default:
return "interface{}"
@@ -436,7 +436,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "int4multirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Int4]]"
default:
return "interface{}"
@@ -444,9 +444,9 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "int8range":
switch driver {
- case SQLDriverPGXV4:
+ case opts.SQLDriverPGXV4:
return "pgtype.Int8range"
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Range[pgtype.Int8]"
default:
return "interface{}"
@@ -454,7 +454,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
case "int8multirange":
switch driver {
- case SQLDriverPGXV5:
+ case opts.SQLDriverPGXV5:
return "pgtype.Multirange[pgtype.Range[pgtype.Int8]]"
default:
return "interface{}"
@@ -467,26 +467,26 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
return "interface{}"
case "bit", "varbit", "pg_catalog.bit", "pg_catalog.varbit":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Bits"
}
- if driver == SQLDriverPGXV4 {
+ if driver == opts.SQLDriverPGXV4 {
return "pgtype.Varbit"
}
case "cid":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Uint32"
}
- if driver == SQLDriverPGXV4 {
+ if driver == opts.SQLDriverPGXV4 {
return "pgtype.CID"
}
case "oid":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Uint32"
}
- if driver == SQLDriverPGXV4 {
+ if driver == opts.SQLDriverPGXV4 {
return "pgtype.OID"
}
@@ -496,10 +496,10 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
}
case "xid":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
return "pgtype.Uint32"
}
- if driver == SQLDriverPGXV4 {
+ if driver == opts.SQLDriverPGXV4 {
return "pgtype.XID"
}
@@ -539,7 +539,7 @@ func postgresType(req *plugin.GenerateRequest, options *opts.Options, col *plugi
}
case "vector":
- if driver == SQLDriverPGXV5 {
+ if driver == opts.SQLDriverPGXV5 {
if emitPointersForNull {
return "*pgvector.Vector"
} else {
diff --git a/internal/codegen/golang/query.go b/internal/codegen/golang/query.go
index b82178686c..3b4fb2fa1a 100644
--- a/internal/codegen/golang/query.go
+++ b/internal/codegen/golang/query.go
@@ -4,6 +4,7 @@ import (
"fmt"
"strings"
+ "github.com/sqlc-dev/sqlc/internal/codegen/golang/opts"
"github.com/sqlc-dev/sqlc/internal/metadata"
"github.com/sqlc-dev/sqlc/internal/plugin"
)
@@ -15,7 +16,7 @@ type QueryValue struct {
DBName string // The name of the field in the database. Only set if Struct==nil.
Struct *Struct
Typ string
- SQLDriver SQLDriver
+ SQLDriver opts.SQLDriver
// Column is kept so late in the generation process around to differentiate
// between mysql slices and pg arrays
diff --git a/internal/codegen/golang/reserved.go b/internal/codegen/golang/reserved.go
index fee711c57b..0461c4a2de 100644
--- a/internal/codegen/golang/reserved.go
+++ b/internal/codegen/golang/reserved.go
@@ -59,6 +59,8 @@ func IsReserved(s string) bool {
return true
case "var":
return true
+ case "q":
+ return true
default:
return false
}
diff --git a/internal/codegen/golang/result.go b/internal/codegen/golang/result.go
index 787329dea1..515d0a654f 100644
--- a/internal/codegen/golang/result.go
+++ b/internal/codegen/golang/result.go
@@ -1,6 +1,7 @@
package golang
import (
+ "bufio"
"fmt"
"sort"
"strings"
@@ -199,6 +200,22 @@ func buildQueries(req *plugin.GenerateRequest, options *opts.Options, structs []
constantName = sdk.LowerTitle(query.Name)
}
+ comments := query.Comments
+ if options.EmitSqlAsComment {
+ if len(comments) == 0 {
+ comments = append(comments, query.Name)
+ }
+ comments = append(comments, " ")
+ scanner := bufio.NewScanner(strings.NewReader(query.Text))
+ for scanner.Scan() {
+ line := scanner.Text()
+ comments = append(comments, " "+line)
+ }
+ if err := scanner.Err(); err != nil {
+ return nil, err
+ }
+ }
+
gq := Query{
Cmd: query.Cmd,
ConstantName: constantName,
@@ -206,7 +223,7 @@ func buildQueries(req *plugin.GenerateRequest, options *opts.Options, structs []
MethodName: query.Name,
SourceName: query.Filename,
SQL: query.Text,
- Comments: query.Comments,
+ Comments: comments,
Table: query.InsertIntoTable,
}
sqlpkg := parseDriver(options.SqlPackage)
@@ -242,7 +259,9 @@ func buildQueries(req *plugin.GenerateRequest, options *opts.Options, structs []
EmitPointer: options.EmitParamsStructPointers,
}
- if len(query.Params) <= qpl {
+ // if query params is 2, and query params limit is 4 AND this is a copyfrom, we still want to emit the query's model
+ // otherwise we end up with a copyfrom using a struct without the struct definition
+ if len(query.Params) <= qpl && query.Cmd != ":copyfrom" {
gq.Arg.Emit = false
}
}
diff --git a/internal/codegen/golang/sqlite_type.go b/internal/codegen/golang/sqlite_type.go
index a0117e69e4..8a22aaa262 100644
--- a/internal/codegen/golang/sqlite_type.go
+++ b/internal/codegen/golang/sqlite_type.go
@@ -4,14 +4,16 @@ import (
"log"
"strings"
+ "github.com/sqlc-dev/sqlc/internal/codegen/golang/opts"
"github.com/sqlc-dev/sqlc/internal/codegen/sdk"
"github.com/sqlc-dev/sqlc/internal/debug"
"github.com/sqlc-dev/sqlc/internal/plugin"
)
-func sqliteType(req *plugin.GenerateRequest, col *plugin.Column) string {
+func sqliteType(req *plugin.GenerateRequest, options *opts.Options, col *plugin.Column) string {
dt := strings.ToLower(sdk.DataType(col.Type))
notNull := col.NotNull || col.IsArray
+ emitPointersForNull := options.EmitPointersForNullTypes
switch dt {
@@ -19,6 +21,9 @@ func sqliteType(req *plugin.GenerateRequest, col *plugin.Column) string {
if notNull {
return "int64"
}
+ if emitPointersForNull {
+ return "*int64"
+ }
return "sql.NullInt64"
case "blob":
@@ -28,20 +33,32 @@ func sqliteType(req *plugin.GenerateRequest, col *plugin.Column) string {
if notNull {
return "float64"
}
+ if emitPointersForNull {
+ return "*float64"
+ }
return "sql.NullFloat64"
case "boolean", "bool":
if notNull {
return "bool"
}
+ if emitPointersForNull {
+ return "*bool"
+ }
return "sql.NullBool"
case "date", "datetime", "timestamp":
if notNull {
return "time.Time"
}
+ if emitPointersForNull {
+ return "*time.Time"
+ }
return "sql.NullTime"
+ case "json", "jsonb":
+ return "json.RawMessage"
+
case "any":
return "interface{}"
@@ -60,12 +77,18 @@ func sqliteType(req *plugin.GenerateRequest, col *plugin.Column) string {
if notNull {
return "string"
}
+ if emitPointersForNull {
+ return "*string"
+ }
return "sql.NullString"
case strings.HasPrefix(dt, "decimal"), dt == "numeric":
if notNull {
return "float64"
}
+ if emitPointersForNull {
+ return "*float64"
+ }
return "sql.NullFloat64"
default:
diff --git a/internal/codegen/golang/struct.go b/internal/codegen/golang/struct.go
index 322dd71bf6..ed9311800e 100644
--- a/internal/codegen/golang/struct.go
+++ b/internal/codegen/golang/struct.go
@@ -32,8 +32,8 @@ func StructName(name string, options *opts.Options) string {
}, name)
for _, p := range strings.Split(name, "_") {
- if p == "id" {
- out += "ID"
+ if _, found := options.InitialismsMap[p]; found {
+ out += strings.ToUpper(p)
} else {
out += strings.Title(p)
}
diff --git a/internal/codegen/golang/templates/go-sql-driver-mysql/copyfromCopy.tmpl b/internal/codegen/golang/templates/go-sql-driver-mysql/copyfromCopy.tmpl
index 3bdc5d5729..e21475b148 100644
--- a/internal/codegen/golang/templates/go-sql-driver-mysql/copyfromCopy.tmpl
+++ b/internal/codegen/golang/templates/go-sql-driver-mysql/copyfromCopy.tmpl
@@ -9,11 +9,11 @@ func convertRowsFor{{.MethodName}}(w *io.PipeWriter, {{.Arg.SlicePair}}) {
{{- with $arg := .Arg }}
{{- range $arg.CopyFromMySQLFields}}
{{- if eq .Type "string"}}
- e.AppendString({{if eq (len $arg.CopyFromMySQLFields) 1}}row{{else}}row.{{.Name}}{{end}})
-{{- else if eq .Type "[]byte"}}
- e.AppendBytes({{if eq (len $arg.CopyFromMySQLFields) 1}}row{{else}}row.{{.Name}}{{end}})
+ e.AppendString({{if $arg.Struct}}row.{{.Name}}{{else}}row{{end}})
+{{- else if or (eq .Type "[]byte") (eq .Type "json.RawMessage")}}
+ e.AppendBytes({{if $arg.Struct}}row.{{.Name}}{{else}}row{{end}})
{{- else}}
- e.AppendValue({{if eq (len $arg.CopyFromMySQLFields) 1}}row{{else}}row.{{.Name}}{{end}})
+ e.AppendValue({{if $arg.Struct}}row.{{.Name}}{{else}}row{{end}})
{{- end}}
{{- end}}
{{- end}}
diff --git a/internal/codegen/golang/templates/pgx/batchCode.tmpl b/internal/codegen/golang/templates/pgx/batchCode.tmpl
index 93cdad48a3..35bd701bd3 100644
--- a/internal/codegen/golang/templates/pgx/batchCode.tmpl
+++ b/internal/codegen/golang/templates/pgx/batchCode.tmpl
@@ -16,7 +16,7 @@ type {{.MethodName}}BatchResults struct {
closed bool
}
-{{if .Arg.EmitStruct}}
+{{if .Arg.Struct}}
type {{.Arg.Type}} struct { {{- range .Arg.Struct.Fields}}
{{.Name}} {{.Type}} {{if .Tag}}{{$.Q}}{{.Tag}}{{$.Q}}{{end}}
{{- end}}
diff --git a/internal/codegen/golang/templates/pgx/queryCode.tmpl b/internal/codegen/golang/templates/pgx/queryCode.tmpl
index 18de5db2ba..59a88c880a 100644
--- a/internal/codegen/golang/templates/pgx/queryCode.tmpl
+++ b/internal/codegen/golang/templates/pgx/queryCode.tmpl
@@ -37,6 +37,11 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) ({{.Ret.De
var {{.Ret.Name}} {{.Ret.Type}}
{{- end}}
err := row.Scan({{.Ret.Scan}})
+ {{- if $.WrapErrors}}
+ if err != nil {
+ err = fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ {{- end}}
return {{.Ret.ReturnName}}, err
}
{{end}}
@@ -52,7 +57,7 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) ([]{{.Ret.
rows, err := q.db.Query(ctx, {{.ConstantName}}, {{.Arg.Params}})
{{- end}}
if err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
defer rows.Close()
{{- if $.EmitEmptySlices}}
@@ -63,12 +68,12 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) ([]{{.Ret.
for rows.Next() {
var {{.Ret.Name}} {{.Ret.Type}}
if err := rows.Scan({{.Ret.Scan}}); err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
items = append(items, {{.Ret.ReturnName}})
}
if err := rows.Err(); err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
return items, nil
}
@@ -84,7 +89,14 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, db DBTX, {{.Arg.Pair}}) e
func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) error {
_, err := q.db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
{{- end}}
+ {{- if $.WrapErrors }}
+ if err != nil {
+ return fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ return nil
+ {{- else }}
return err
+ {{- end }}
}
{{end}}
@@ -99,7 +111,7 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) (int64, er
result, err := q.db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
{{- end}}
if err != nil {
- return 0, err
+ return 0, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
return result.RowsAffected(), nil
}
@@ -110,11 +122,17 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) (int64, er
{{end -}}
{{- if $.EmitMethodsWithDBArgument -}}
func (q *Queries) {{.MethodName}}(ctx context.Context, db DBTX, {{.Arg.Pair}}) (pgconn.CommandTag, error) {
- return db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
+ {{queryRetval .}} db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
{{- else -}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{.Arg.Pair}}) (pgconn.CommandTag, error) {
- return q.db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
+ {{queryRetval .}} q.db.Exec(ctx, {{.ConstantName}}, {{.Arg.Params}})
{{- end}}
+ {{- if $.WrapErrors}}
+ if err != nil {
+ err = fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ return result, err
+ {{- end}}
}
{{end}}
diff --git a/internal/codegen/golang/templates/stdlib/queryCode.tmpl b/internal/codegen/golang/templates/stdlib/queryCode.tmpl
index cf56000ec6..1e7f4e22a4 100644
--- a/internal/codegen/golang/templates/stdlib/queryCode.tmpl
+++ b/internal/codegen/golang/templates/stdlib/queryCode.tmpl
@@ -28,6 +28,11 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
var {{.Ret.Name}} {{.Ret.Type}}
{{- end}}
err := row.Scan({{.Ret.Scan}})
+ {{- if $.WrapErrors}}
+ if err != nil {
+ err = fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ {{- end}}
return {{.Ret.ReturnName}}, err
}
{{end}}
@@ -38,7 +43,7 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}) ([]{{.Ret.DefineType}}, error) {
{{- template "queryCodeStdExec" . }}
if err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
defer rows.Close()
{{- if $.EmitEmptySlices}}
@@ -49,15 +54,15 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
for rows.Next() {
var {{.Ret.Name}} {{.Ret.Type}}
if err := rows.Scan({{.Ret.Scan}}); err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
items = append(items, {{.Ret.ReturnName}})
}
if err := rows.Close(); err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
if err := rows.Err(); err != nil {
- return nil, err
+ return nil, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
return items, nil
}
@@ -68,6 +73,11 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
{{end -}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}) error {
{{- template "queryCodeStdExec" . }}
+ {{- if $.WrapErrors}}
+ if err != nil {
+ err = fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ {{- end}}
return err
}
{{end}}
@@ -78,7 +88,7 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}) (int64, error) {
{{- template "queryCodeStdExec" . }}
if err != nil {
- return 0, err
+ return 0, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
return result.RowsAffected()
}
@@ -90,7 +100,7 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}) (int64, error) {
{{- template "queryCodeStdExec" . }}
if err != nil {
- return 0, err
+ return 0, {{if $.WrapErrors}}fmt.Errorf("query {{.MethodName}}: %w", err){{else}}err{{end}}
}
return result.LastInsertId()
}
@@ -101,6 +111,12 @@ func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}
{{end -}}
func (q *Queries) {{.MethodName}}(ctx context.Context, {{ dbarg }} {{.Arg.Pair}}) (sql.Result, error) {
{{- template "queryCodeStdExec" . }}
+ {{- if $.WrapErrors}}
+ if err != nil {
+ err = fmt.Errorf("query {{.MethodName}}: %w", err)
+ }
+ return result, err
+ {{- end}}
}
{{end}}
diff --git a/internal/codegen/golang/templates/template.tmpl b/internal/codegen/golang/templates/template.tmpl
index 29f29801c6..afd50c01ac 100644
--- a/internal/codegen/golang/templates/template.tmpl
+++ b/internal/codegen/golang/templates/template.tmpl
@@ -3,17 +3,20 @@
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
+{{end}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
{{template "dbCode" . }}
{{end}}
@@ -33,17 +36,20 @@ import (
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
+{{end}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
{{template "interfaceCode" . }}
{{end}}
@@ -61,17 +67,20 @@ import (
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
+{{end}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
{{template "modelsCode" . }}
{{end}}
@@ -158,18 +167,20 @@ type {{.Name}} struct { {{- range .Fields}}
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
-// source: {{.SourceName}}
+{{end}}// source: {{.SourceName}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
{{template "queryCode" . }}
{{end}}
@@ -187,18 +198,20 @@ import (
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
-// source: {{.SourceName}}
+{{end}}// source: {{.SourceName}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
{{template "copyfromCode" . }}
{{end}}
@@ -216,18 +229,21 @@ import (
//go:build {{.BuildTags}}
{{end}}// Code generated by sqlc. DO NOT EDIT.
-// versions:
+{{if not .OmitSqlcVersion}}// versions:
// sqlc {{.SqlcVersion}}
-// source: {{.SourceName}}
+{{end}}// source: {{.SourceName}}
package {{.Package}}
+{{ if hasImports .SourceName }}
import (
{{range imports .SourceName}}
{{range .}}{{.}}
{{end}}
{{end}}
)
+{{end}}
+
{{template "batchCode" . }}
{{end}}
diff --git a/internal/codegen/sdk/utils.go b/internal/codegen/sdk/utils.go
index 1dffda9e7e..ec4a4e5ab4 100644
--- a/internal/codegen/sdk/utils.go
+++ b/internal/codegen/sdk/utils.go
@@ -23,12 +23,14 @@ func Title(s string) string {
// a backtick, replace it the following way:
//
// input:
-// SELECT `group` FROM foo
+//
+// SELECT `group` FROM foo
//
// output:
-// SELECT ` + "`" + `group` + "`" + ` FROM foo
//
-// The escaped string must be rendered inside an existing string literal
+// SELECT ` + "`" + `group` + "`" + ` FROM foo
+//
+// # The escaped string must be rendered inside an existing string literal
//
// A string cannot be escaped twice
func EscapeBacktick(s string) string {
diff --git a/internal/compiler/analyze.go b/internal/compiler/analyze.go
index 82a67fb6f2..38d66fce19 100644
--- a/internal/compiler/analyze.go
+++ b/internal/compiler/analyze.go
@@ -135,10 +135,6 @@ func (c *Compiler) _analyzeQuery(raw *ast.RawStmt, query string, failfast bool)
var table *ast.TableName
switch n := raw.Stmt.(type) {
- case *ast.CallStmt:
- case *ast.SelectStmt:
- case *ast.DeleteStmt:
- case *ast.DoStmt:
case *ast.InsertStmt:
if err := check(validate.InsertStmt(n)); err != nil {
return nil, err
@@ -148,15 +144,6 @@ func (c *Compiler) _analyzeQuery(raw *ast.RawStmt, query string, failfast bool)
if err := check(err); err != nil {
return nil, err
}
- case *ast.ListenStmt:
- case *ast.NotifyStmt:
- case *ast.TruncateStmt:
- case *ast.UpdateStmt:
- case *ast.RefreshMatViewStmt:
- default:
- if err := check(ErrUnsupportedStatementType); err != nil {
- return nil, err
- }
}
if err := check(validate.FuncCall(c.catalog, c.combo, raw)); err != nil {
diff --git a/internal/compiler/compile.go b/internal/compiler/compile.go
index 19b737257c..84fbb20a3c 100644
--- a/internal/compiler/compile.go
+++ b/internal/compiler/compile.go
@@ -79,9 +79,6 @@ func (c *Compiler) parseQueries(o opts.Parser) (*Result, error) {
}
for _, stmt := range stmts {
query, err := c.parseQuery(stmt.Raw, src, o)
- if err == ErrUnsupportedStatementType {
- continue
- }
if err != nil {
var e *sqlerr.Error
loc := stmt.Raw.Pos()
@@ -95,6 +92,10 @@ func (c *Compiler) parseQueries(o opts.Parser) (*Result, error) {
}
continue
}
+ if query == nil {
+ continue
+ }
+ query.Metadata.Filename = filepath.Base(filename)
queryName := query.Metadata.Name
if queryName != "" {
if _, exists := set[queryName]; exists {
@@ -103,10 +104,7 @@ func (c *Compiler) parseQueries(o opts.Parser) (*Result, error) {
}
set[queryName] = struct{}{}
}
- query.Metadata.Filename = filepath.Base(filename)
- if query != nil {
- q = append(q, query)
- }
+ q = append(q, query)
}
}
if len(merr.Errs()) > 0 {
diff --git a/internal/compiler/engine.go b/internal/compiler/engine.go
index e7e11152c4..f742bfd999 100644
--- a/internal/compiler/engine.go
+++ b/internal/compiler/engine.go
@@ -6,13 +6,12 @@ import (
"github.com/sqlc-dev/sqlc/internal/analyzer"
"github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/dbmanager"
"github.com/sqlc-dev/sqlc/internal/engine/dolphin"
"github.com/sqlc-dev/sqlc/internal/engine/postgresql"
pganalyze "github.com/sqlc-dev/sqlc/internal/engine/postgresql/analyzer"
"github.com/sqlc-dev/sqlc/internal/engine/sqlite"
"github.com/sqlc-dev/sqlc/internal/opts"
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
"github.com/sqlc-dev/sqlc/internal/sql/catalog"
)
@@ -23,7 +22,8 @@ type Compiler struct {
parser Parser
result *Result
analyzer analyzer.Analyzer
- client pb.QuickClient
+ client dbmanager.Client
+ selector selector
schema []string
}
@@ -32,10 +32,7 @@ func NewCompiler(conf config.SQL, combo config.CombinedSettings) (*Compiler, err
c := &Compiler{conf: conf, combo: combo}
if conf.Database != nil && conf.Database.Managed {
- client, err := quickdb.NewClientFromConfig(combo.Global.Cloud)
- if err != nil {
- return nil, fmt.Errorf("client error: %w", err)
- }
+ client := dbmanager.NewClient(combo.Global.Servers)
c.client = client
}
@@ -43,12 +40,15 @@ func NewCompiler(conf config.SQL, combo config.CombinedSettings) (*Compiler, err
case config.EngineSQLite:
c.parser = sqlite.NewParser()
c.catalog = sqlite.NewCatalog()
+ c.selector = newSQLiteSelector()
case config.EngineMySQL:
c.parser = dolphin.NewParser()
c.catalog = dolphin.NewCatalog()
+ c.selector = newDefaultSelector()
case config.EnginePostgreSQL:
c.parser = postgresql.NewParser()
c.catalog = postgresql.NewCatalog()
+ c.selector = newDefaultSelector()
if conf.Database != nil {
if conf.Analyzer.Database == nil || *conf.Analyzer.Database {
c.analyzer = analyzer.Cached(
@@ -89,4 +89,7 @@ func (c *Compiler) Close(ctx context.Context) {
if c.analyzer != nil {
c.analyzer.Close(ctx)
}
+ if c.client != nil {
+ c.client.Close(ctx)
+ }
}
diff --git a/internal/compiler/expand.go b/internal/compiler/expand.go
index 60e654b696..c60b7618b2 100644
--- a/internal/compiler/expand.go
+++ b/internal/compiler/expand.go
@@ -149,6 +149,11 @@ func (c *Compiler) expandStmt(qc *QueryCatalog, raw *ast.RawStmt, node ast.Node)
if counts[cname] > 1 {
cname = tableName + "." + cname
}
+
+ // This is important for SQLite in particular which needs to
+ // wrap jsonb column values with `json(colname)` so they're in a
+ // publicly usable format (i.e. not jsonb).
+ cname = c.selector.ColumnExpr(cname, column)
cols = append(cols, cname)
}
}
diff --git a/internal/compiler/find_params.go b/internal/compiler/find_params.go
index ca38199b9d..8199addd33 100644
--- a/internal/compiler/find_params.go
+++ b/internal/compiler/find_params.go
@@ -195,7 +195,7 @@ func (p paramSearch) Visit(node ast.Node) astutils.Visitor {
if n.Sel == nil {
p.parent = node
} else {
- if sel, ok := n.Sel.(*ast.SelectStmt); ok && sel.FromClause != nil {
+ if sel, ok := n.Sel.(*ast.SelectStmt); ok && sel.FromClause != nil && len(sel.FromClause.Items) > 0 {
from := sel.FromClause
if schema, ok := from.Items[0].(*ast.RangeVar); ok && schema != nil {
p.rangeVar = &ast.RangeVar{
diff --git a/internal/compiler/output_columns.go b/internal/compiler/output_columns.go
index 5b96a08567..dbdbe252b3 100644
--- a/internal/compiler/output_columns.go
+++ b/internal/compiler/output_columns.go
@@ -57,7 +57,7 @@ func (c *Compiler) outputColumns(qc *QueryCatalog, node ast.Node) ([]*Column, er
return nil, err
}
- var targets *ast.List
+ targets := &ast.List{}
switch n := node.(type) {
case *ast.DeleteStmt:
targets = n.ReturningList
@@ -114,16 +114,8 @@ func (c *Compiler) outputColumns(qc *QueryCatalog, node ast.Node) ([]*Column, er
if isUnion {
return c.outputColumns(qc, n.Larg)
}
- case *ast.DoStmt:
- targets = &ast.List{}
- case *ast.CallStmt:
- targets = &ast.List{}
- case *ast.TruncateStmt, *ast.RefreshMatViewStmt, *ast.NotifyStmt, *ast.ListenStmt:
- targets = &ast.List{}
case *ast.UpdateStmt:
targets = n.ReturningList
- default:
- return nil, fmt.Errorf("outputColumns: unsupported node type: %T", n)
}
var cols []*Column
@@ -487,7 +479,7 @@ func (r *tableVisitor) Visit(n ast.Node) astutils.Visitor {
// Return an error if a table is referenced twice
// Return an error if an unknown column is referenced
func (c *Compiler) sourceTables(qc *QueryCatalog, node ast.Node) ([]*Table, error) {
- var list *ast.List
+ list := &ast.List{}
switch n := node.(type) {
case *ast.DeleteStmt:
list = n.Relations
@@ -514,14 +506,6 @@ func (c *Compiler) sourceTables(qc *QueryCatalog, node ast.Node) ([]*Table, erro
astutils.Walk(&tv, n.FromClause)
astutils.Walk(&tv, n.Relations)
list = &tv.list
- case *ast.DoStmt:
- list = &ast.List{}
- case *ast.CallStmt:
- list = &ast.List{}
- case *ast.NotifyStmt, *ast.ListenStmt:
- list = &ast.List{}
- default:
- return nil, fmt.Errorf("sourceTables: unsupported node type: %T", n)
}
var tables []*Table
diff --git a/internal/compiler/parse.go b/internal/compiler/parse.go
index b47a72beef..681d291122 100644
--- a/internal/compiler/parse.go
+++ b/internal/compiler/parse.go
@@ -15,8 +15,6 @@ import (
"github.com/sqlc-dev/sqlc/internal/sql/validate"
)
-var ErrUnsupportedStatementType = errors.New("parseQuery: unsupported statement type")
-
func (c *Compiler) parseQuery(stmt ast.Node, src string, o opts.Parser) (*Query, error) {
ctx := context.Background()
@@ -48,6 +46,10 @@ func (c *Compiler) parseQuery(stmt ast.Node, src string, o opts.Parser) (*Query,
return nil, err
}
+ if name == "" {
+ return nil, nil
+ }
+
if err := validate.Cmd(raw.Stmt, name, cmd); err != nil {
return nil, err
}
@@ -63,7 +65,7 @@ func (c *Compiler) parseQuery(stmt ast.Node, src string, o opts.Parser) (*Query,
return nil, err
}
- md.Params, md.Flags, err = metadata.ParseParamsAndFlags(cleanedComments)
+ md.Params, md.Flags, md.RuleSkiplist, err = metadata.ParseCommentFlags(cleanedComments)
if err != nil {
return nil, err
}
diff --git a/internal/compiler/resolve.go b/internal/compiler/resolve.go
index 1947558b25..b1fbb1990e 100644
--- a/internal/compiler/resolve.go
+++ b/internal/compiler/resolve.go
@@ -98,6 +98,20 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
}
var a []Parameter
+
+ addUnknownParam := func(ref paramRef) {
+ defaultP := named.NewInferredParam(ref.name, false)
+ p, isNamed := params.FetchMerge(ref.ref.Number, defaultP)
+ a = append(a, Parameter{
+ Number: ref.ref.Number,
+ Column: &Column{
+ Name: p.Name(),
+ DataType: "any",
+ IsNamedParam: isNamed,
+ },
+ })
+ }
+
for _, ref := range args {
switch n := ref.parent.(type) {
@@ -318,6 +332,8 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
ReturnType: &ast.TypeName{Name: "any"},
}
}
+
+ var added bool
for i, item := range n.Args.Items {
funcName := fun.Name
var argName string
@@ -357,6 +373,7 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
defaultP := named.NewInferredParam(defaultName, false)
p, isNamed := params.FetchMerge(ref.ref.Number, defaultP)
+ added = true
a = append(a, Parameter{
Number: ref.ref.Number,
Column: &Column{
@@ -398,6 +415,7 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
defaultP := named.NewInferredParam(paramName, true)
p, isNamed := params.FetchMerge(ref.ref.Number, defaultP)
+ added = true
a = append(a, Parameter{
Number: ref.ref.Number,
Column: &Column{
@@ -411,6 +429,9 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
}
if fun.ReturnType == nil {
+ if !added {
+ addUnknownParam(ref)
+ }
continue
}
@@ -420,7 +441,9 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
Name: fun.ReturnType.Name,
})
if err != nil {
- // The return type wasn't a table.
+ if !added {
+ addUnknownParam(ref)
+ }
continue
}
err = indexTable(table)
@@ -607,16 +630,7 @@ func (comp *Compiler) resolveCatalogRefs(qc *QueryCatalog, rvs []*ast.RangeVar,
default:
slog.Debug("unsupported reference type", "type", fmt.Sprintf("%T", n))
- defaultP := named.NewInferredParam(ref.name, false)
- p, isNamed := params.FetchMerge(ref.ref.Number, defaultP)
- a = append(a, Parameter{
- Number: ref.ref.Number,
- Column: &Column{
- Name: p.Name(),
- DataType: "any",
- IsNamedParam: isNamed,
- },
- })
+ addUnknownParam(ref)
}
}
return a, nil
diff --git a/internal/compiler/selector.go b/internal/compiler/selector.go
new file mode 100644
index 0000000000..04d118ff9c
--- /dev/null
+++ b/internal/compiler/selector.go
@@ -0,0 +1,46 @@
+package compiler
+
+// selector is an interface used by a compiler for generating expressions for
+// output columns in a `SELECT ...` or `RETURNING ...` statement.
+//
+// This interface is exclusively needed at the moment for SQLite, which must
+// wrap output `jsonb` columns with a `json(column_name)` invocation so that a
+// publicly consumable format (i.e. not jsonb) is returned.
+type selector interface {
+ // ColumnExpr generates output to be used in a `SELECT ...` or `RETURNING
+ // ...` statement based on input column name and metadata.
+ ColumnExpr(name string, column *Column) string
+}
+
+// defaultSelector is a selector implementation that does the simpliest possible
+// pass through when generating column expressions. Its use is suitable for all
+// database engines not requiring additional customization.
+type defaultSelector struct{}
+
+func newDefaultSelector() *defaultSelector {
+ return &defaultSelector{}
+}
+
+func (s *defaultSelector) ColumnExpr(name string, column *Column) string {
+ return name
+}
+
+type sqliteSelector struct{}
+
+func newSQLiteSelector() *sqliteSelector {
+ return &sqliteSelector{}
+}
+
+func (s *sqliteSelector) ColumnExpr(name string, column *Column) string {
+ // Under SQLite, neither json nor jsonb are real data types, and rather just
+ // of type blob, so database drivers just return whatever raw binary is
+ // stored as values. This is a problem for jsonb, which is considered an
+ // internal format to SQLite and no attempt should be made to parse it
+ // outside of the database itself. For jsonb columns in SQLite, wrap values
+ // in `json(col)` to coerce the internal binary format to JSON parsable by
+ // the user-space application.
+ if column.DataType == "jsonb" {
+ return "json(" + name + ")"
+ }
+ return name
+}
diff --git a/internal/compiler/selector_test.go b/internal/compiler/selector_test.go
new file mode 100644
index 0000000000..e460dd281c
--- /dev/null
+++ b/internal/compiler/selector_test.go
@@ -0,0 +1,35 @@
+package compiler
+
+import "testing"
+
+func TestSelector(t *testing.T) {
+ t.Parallel()
+
+ selectorExpectColumnExpr := func(t *testing.T, selector selector, expected, name string, column *Column) {
+ if actual := selector.ColumnExpr(name, column); expected != actual {
+ t.Errorf("Expected %v, got %v for data type %v", expected, actual, column.DataType)
+ }
+ }
+
+ t.Run("DefaultSelectorColumnExpr", func(t *testing.T) {
+ t.Parallel()
+
+ selector := newDefaultSelector()
+
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "integer"})
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "json"})
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "jsonb"})
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "text"})
+ })
+
+ t.Run("SQLiteSelectorColumnExpr", func(t *testing.T) {
+ t.Parallel()
+
+ selector := newSQLiteSelector()
+
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "integer"})
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "json"})
+ selectorExpectColumnExpr(t, selector, "json(my_column)", "my_column", &Column{DataType: "jsonb"})
+ selectorExpectColumnExpr(t, selector, "my_column", "my_column", &Column{DataType: "text"})
+ })
+}
diff --git a/internal/config/config.go b/internal/config/config.go
index 7decfe3698..0ff805fccd 100644
--- a/internal/config/config.go
+++ b/internal/config/config.go
@@ -59,6 +59,7 @@ const (
type Config struct {
Version string `json:"version" yaml:"version"`
Cloud Cloud `json:"cloud" yaml:"cloud"`
+ Servers []Server `json:"servers" yaml:"servers"`
SQL []SQL `json:"sql" yaml:"sql"`
Overrides Overrides `json:"overrides,omitempty" yaml:"overrides"`
Plugins []Plugin `json:"plugins" yaml:"plugins"`
@@ -66,6 +67,12 @@ type Config struct {
Options map[string]yaml.Node `json:"options" yaml:"options"`
}
+type Server struct {
+ Name string `json:"name,omitempty" yaml:"name"`
+ Engine Engine `json:"engine,omitempty" yaml:"engine"`
+ URI string `json:"uri" yaml:"uri"`
+}
+
type Database struct {
URI string `json:"uri" yaml:"uri"`
Managed bool `json:"managed" yaml:"managed"`
@@ -82,7 +89,8 @@ type Plugin struct {
Name string `json:"name" yaml:"name"`
Env []string `json:"env" yaml:"env"`
Process *struct {
- Cmd string `json:"cmd" yaml:"cmd"`
+ Cmd string `json:"cmd" yaml:"cmd"`
+ Format string `json:"format" yaml:"format"`
} `json:"process" yaml:"process"`
WASM *struct {
URL string `json:"url" yaml:"url"`
diff --git a/internal/config/v_one.go b/internal/config/v_one.go
index a675118697..8efa9f42fc 100644
--- a/internal/config/v_one.go
+++ b/internal/config/v_one.go
@@ -41,6 +41,7 @@ type v1PackageSettings struct {
EmitPointersForNullTypes bool `json:"emit_pointers_for_null_types" yaml:"emit_pointers_for_null_types"`
EmitEnumValidMethod bool `json:"emit_enum_valid_method,omitempty" yaml:"emit_enum_valid_method"`
EmitAllEnumValues bool `json:"emit_all_enum_values,omitempty" yaml:"emit_all_enum_values"`
+ EmitSqlAsComment bool `json:"emit_sql_as_comment,omitempty" yaml:"emit_sql_as_comment"`
JSONTagsCaseStyle string `json:"json_tags_case_style,omitempty" yaml:"json_tags_case_style"`
SQLPackage string `json:"sql_package" yaml:"sql_package"`
SQLDriver string `json:"sql_driver" yaml:"sql_driver"`
@@ -54,6 +55,7 @@ type v1PackageSettings struct {
StrictFunctionChecks bool `json:"strict_function_checks" yaml:"strict_function_checks"`
StrictOrderBy *bool `json:"strict_order_by" yaml:"strict_order_by"`
QueryParameterLimit *int32 `json:"query_parameter_limit,omitempty" yaml:"query_parameter_limit"`
+ OmitSqlcVersion bool `json:"omit_sqlc_version,omitempty" yaml:"omit_sqlc_version"`
OmitUnusedStructs bool `json:"omit_unused_structs,omitempty" yaml:"omit_unused_structs"`
Rules []string `json:"rules" yaml:"rules"`
BuildTags string `json:"build_tags,omitempty" yaml:"build_tags"`
@@ -149,6 +151,7 @@ func (c *V1GenerateSettings) Translate() Config {
EmitPointersForNullTypes: pkg.EmitPointersForNullTypes,
EmitEnumValidMethod: pkg.EmitEnumValidMethod,
EmitAllEnumValues: pkg.EmitAllEnumValues,
+ EmitSqlAsComment: pkg.EmitSqlAsComment,
Package: pkg.Name,
Out: pkg.Path,
SqlPackage: pkg.SQLPackage,
@@ -162,6 +165,7 @@ func (c *V1GenerateSettings) Translate() Config {
OutputCopyfromFileName: pkg.OutputCopyFromFileName,
OutputFilesSuffix: pkg.OutputFilesSuffix,
QueryParameterLimit: pkg.QueryParameterLimit,
+ OmitSqlcVersion: pkg.OmitSqlcVersion,
OmitUnusedStructs: pkg.OmitUnusedStructs,
BuildTags: pkg.BuildTags,
},
diff --git a/internal/config/v_one.json b/internal/config/v_one.json
index 166888ab93..a0667a7c9c 100644
--- a/internal/config/v_one.json
+++ b/internal/config/v_one.json
@@ -131,6 +131,9 @@
"emit_all_enum_values": {
"type": "boolean"
},
+ "emit_sql_as_comment": {
+ "type": "boolean"
+ },
"build_tags": {
"type": "string"
},
@@ -340,4 +343,4 @@
}
}
}
-}
\ No newline at end of file
+}
diff --git a/internal/config/v_two.go b/internal/config/v_two.go
index 1d3b224dd9..0fe22ffa2c 100644
--- a/internal/config/v_two.go
+++ b/internal/config/v_two.go
@@ -76,7 +76,7 @@ func v2ParseConfig(rd io.Reader) (Config, error) {
if cg.Out == "" {
return conf, ErrNoOutPath
}
- // TOOD: Allow the use of built-in codegen from here
+ // TODO: Allow the use of built-in codegen from here
if _, ok := plugins[cg.Plugin]; !ok {
return conf, ErrPluginNotFound
}
diff --git a/internal/config/v_two.json b/internal/config/v_two.json
index dd39fddc10..acf914997d 100644
--- a/internal/config/v_two.json
+++ b/internal/config/v_two.json
@@ -140,6 +140,9 @@
"emit_all_enum_values": {
"type": "boolean"
},
+ "emit_sql_as_comment": {
+ "type": "boolean"
+ },
"build_tags": {
"type": "string"
},
diff --git a/internal/constants/query.go b/internal/constants/query.go
new file mode 100644
index 0000000000..a572c56c6f
--- /dev/null
+++ b/internal/constants/query.go
@@ -0,0 +1,12 @@
+package constants
+
+// Flags
+const (
+ QueryFlagParam = "@param"
+ QueryFlagSqlcVetDisable = "@sqlc-vet-disable"
+)
+
+// Rules
+const (
+ QueryRuleDbPrepare = "sqlc/db-prepare"
+)
diff --git a/internal/dbmanager/client.go b/internal/dbmanager/client.go
new file mode 100644
index 0000000000..18aec947cb
--- /dev/null
+++ b/internal/dbmanager/client.go
@@ -0,0 +1,150 @@
+package dbmanager
+
+import (
+ "context"
+ "fmt"
+ "hash/fnv"
+ "io"
+ "net/url"
+ "strings"
+
+ "github.com/jackc/pgx/v5"
+ "golang.org/x/sync/singleflight"
+
+ "github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/pgx/poolcache"
+ "github.com/sqlc-dev/sqlc/internal/shfmt"
+)
+
+type CreateDatabaseRequest struct {
+ Engine string
+ Migrations []string
+ Prefix string
+}
+
+type CreateDatabaseResponse struct {
+ Uri string
+}
+
+type Client interface {
+ CreateDatabase(context.Context, *CreateDatabaseRequest) (*CreateDatabaseResponse, error)
+ Close(context.Context)
+}
+
+var flight singleflight.Group
+
+type ManagedClient struct {
+ cache *poolcache.Cache
+ replacer *shfmt.Replacer
+ servers []config.Server
+}
+
+func dbid(migrations []string) string {
+ h := fnv.New64()
+ for _, query := range migrations {
+ io.WriteString(h, query)
+ }
+ return fmt.Sprintf("%x", h.Sum(nil))
+}
+
+func (m *ManagedClient) CreateDatabase(ctx context.Context, req *CreateDatabaseRequest) (*CreateDatabaseResponse, error) {
+ hash := dbid(req.Migrations)
+ prefix := req.Prefix
+ if prefix == "" {
+ prefix = "sqlc_managed"
+ }
+ name := fmt.Sprintf("%s_%s", prefix, hash)
+
+ engine := config.Engine(req.Engine)
+ switch engine {
+ case config.EngineMySQL:
+ // pass
+ case config.EnginePostgreSQL:
+ // pass
+ default:
+ return nil, fmt.Errorf("unsupported engine: %s", engine)
+ }
+
+ var base string
+ for _, server := range m.servers {
+ if server.Engine == engine {
+ base = server.URI
+ break
+ }
+ }
+
+ if strings.TrimSpace(base) == "" {
+ return nil, fmt.Errorf("no PostgreSQL database server found")
+ }
+
+ serverUri := m.replacer.Replace(base)
+ pool, err := m.cache.Open(ctx, serverUri)
+ if err != nil {
+ return nil, err
+ }
+
+ uri, err := url.Parse(serverUri)
+ if err != nil {
+ return nil, err
+ }
+ uri.Path = "/" + name
+
+ key := uri.String()
+ _, err, _ = flight.Do(key, func() (interface{}, error) {
+ // TODO: Use a parameterized query
+ row := pool.QueryRow(ctx,
+ fmt.Sprintf(`SELECT datname FROM pg_database WHERE datname = '%s'`, name))
+
+ var datname string
+ if err := row.Scan(&datname); err == nil {
+ return nil, nil
+ }
+
+ if _, err := pool.Exec(ctx, fmt.Sprintf(`CREATE DATABASE "%s"`, name)); err != nil {
+ return nil, err
+ }
+
+ conn, err := pgx.Connect(ctx, uri.String())
+ if err != nil {
+ pool.Exec(ctx, fmt.Sprintf(`DROP DATABASE IF EXISTS "%s" WITH (FORCE)`, name))
+ return nil, fmt.Errorf("connect %s: %s", name, err)
+ }
+ defer conn.Close(ctx)
+
+ var migrationErr error
+ for _, q := range req.Migrations {
+ if len(strings.TrimSpace(q)) == 0 {
+ continue
+ }
+ if _, err := conn.Exec(ctx, q); err != nil {
+ migrationErr = fmt.Errorf("%s: %s", q, err)
+ break
+ }
+ }
+
+ if migrationErr != nil {
+ pool.Exec(ctx, fmt.Sprintf(`DROP DATABASE IF EXISTS "%s" WITH (FORCE)`, name))
+ return nil, migrationErr
+ }
+
+ return nil, nil
+ })
+
+ if err != nil {
+ return nil, err
+ }
+
+ return &CreateDatabaseResponse{Uri: key}, err
+}
+
+func (m *ManagedClient) Close(ctx context.Context) {
+ m.cache.Close()
+}
+
+func NewClient(servers []config.Server) *ManagedClient {
+ return &ManagedClient{
+ cache: poolcache.New(),
+ servers: servers,
+ replacer: shfmt.NewReplacer(nil),
+ }
+}
diff --git a/internal/endtoend/case_test.go b/internal/endtoend/case_test.go
index 367b9dd158..4389a4da28 100644
--- a/internal/endtoend/case_test.go
+++ b/internal/endtoend/case_test.go
@@ -5,6 +5,7 @@ import (
"fmt"
"os"
"path/filepath"
+ "runtime"
"strings"
"testing"
)
@@ -17,17 +18,24 @@ type Testcase struct {
Exec *Exec
}
+type ExecMeta struct {
+ InvalidSchema bool `json:"invalid_schema"`
+}
+
type Exec struct {
Command string `json:"command"`
Contexts []string `json:"contexts"`
Process string `json:"process"`
+ OS []string `json:"os"`
Env map[string]string `json:"env"`
+ Meta ExecMeta `json:"meta"`
}
func parseStderr(t *testing.T, dir, testctx string) []byte {
t.Helper()
paths := []string{
filepath.Join(dir, "stderr", fmt.Sprintf("%s.txt", testctx)),
+ filepath.Join(dir, fmt.Sprintf("stderr_%s.txt", runtime.GOOS)),
filepath.Join(dir, "stderr.txt"),
}
for _, path := range paths {
@@ -51,10 +59,10 @@ func parseExec(t *testing.T, dir string) *Exec {
var e Exec
blob, err := os.ReadFile(path)
if err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", path, err)
}
if err := json.Unmarshal(blob, &e); err != nil {
- t.Fatal(err)
+ t.Fatalf("%s: %s", path, err)
}
if e.Command == "" {
e.Command = "generate"
diff --git a/internal/endtoend/ddl_test.go b/internal/endtoend/ddl_test.go
index c77389207d..bed9333743 100644
--- a/internal/endtoend/ddl_test.go
+++ b/internal/endtoend/ddl_test.go
@@ -1,46 +1,21 @@
package main
import (
- "context"
"fmt"
"os"
"path/filepath"
- "slices"
- "strings"
"testing"
- "github.com/jackc/pgx/v5"
-
"github.com/sqlc-dev/sqlc/internal/config"
- "github.com/sqlc-dev/sqlc/internal/migrations"
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
- "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func TestValidSchema(t *testing.T) {
- ctx := context.Background()
-
- projectID := os.Getenv("CI_SQLC_PROJECT_ID")
- authToken := os.Getenv("CI_SQLC_AUTH_TOKEN")
- if projectID == "" || authToken == "" {
- t.Skip("missing project id or auth token")
- }
-
- client, err := quickdb.NewClient(projectID, authToken)
- if err != nil {
- t.Fatal(err)
- }
-
- for _, replay := range FindTests(t, "testdata", "managed-db") {
+ for _, replay := range FindTests(t, "testdata", "base") {
replay := replay // https://golang.org/doc/faq#closures_and_goroutines
- if len(replay.Stderr) > 0 {
- continue
- }
-
if replay.Exec != nil {
- if !slices.Contains(replay.Exec.Contexts, "managed-db") {
+ if replay.Exec.Meta.InvalidSchema {
continue
}
}
@@ -58,60 +33,28 @@ func TestValidSchema(t *testing.T) {
for j, pkg := range conf.SQL {
j, pkg := j, pkg
- if pkg.Engine != config.EnginePostgreSQL {
+ switch pkg.Engine {
+ case config.EnginePostgreSQL:
+ // pass
+ case config.EngineMySQL:
+ // pass
+ default:
continue
}
t.Run(fmt.Sprintf("endtoend-%s-%d", file, j), func(t *testing.T) {
t.Parallel()
- if strings.Contains(file, "pg_dump") {
- t.Skip("loading pg_dump not supported")
- }
-
var schema []string
for _, path := range pkg.Schema {
schema = append(schema, filepath.Join(filepath.Dir(file), path))
}
- files, err := sqlpath.Glob(schema)
- if err != nil {
- t.Fatal(err)
- }
-
- var sqls []string
- for _, f := range files {
- contents, err := os.ReadFile(f)
- if err != nil {
- t.Fatalf("%s: %s", f, err)
- }
- // Support loading pg_dump SQL files
- before := strings.ReplaceAll(string(contents), "CREATE SCHEMA public;", "CREATE SCHEMA IF NOT EXISTS public;")
- sqls = append(sqls, migrations.RemoveRollbackStatements(before))
- }
-
- resp, err := client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
- Engine: "postgresql",
- Region: quickdb.GetClosestRegion(),
- Migrations: sqls,
- })
- if err != nil {
- t.Fatalf("region %s: %s", quickdb.GetClosestRegion(), err)
- }
-
- t.Cleanup(func() {
- _, err = client.DropEphemeralDatabase(ctx, &pb.DropEphemeralDatabaseRequest{
- DatabaseId: resp.DatabaseId,
- })
- if err != nil {
- t.Fatal(err)
- }
- })
-
- conn, err := pgx.Connect(ctx, resp.Uri)
- if err != nil {
- t.Fatalf("connect %s: %s", resp.Uri, err)
+ switch pkg.Engine {
+ case config.EnginePostgreSQL:
+ local.PostgreSQL(t, schema)
+ case config.EngineMySQL:
+ local.MySQL(t, schema)
}
- defer conn.Close(ctx)
})
}
}
diff --git a/internal/endtoend/endtoend_test.go b/internal/endtoend/endtoend_test.go
index aea72c5dbf..da6d7a405a 100644
--- a/internal/endtoend/endtoend_test.go
+++ b/internal/endtoend/endtoend_test.go
@@ -6,6 +6,7 @@ import (
"os"
osexec "os/exec"
"path/filepath"
+ "runtime"
"slices"
"strings"
"testing"
@@ -16,8 +17,23 @@ import (
"github.com/sqlc-dev/sqlc/internal/cmd"
"github.com/sqlc-dev/sqlc/internal/config"
"github.com/sqlc-dev/sqlc/internal/opts"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
+func lineEndings() cmp.Option {
+ return cmp.Transformer("LineEndings", func(in string) string {
+ // Replace Windows new lines with Unix newlines
+ return strings.Replace(in, "\r\n", "\n", -1)
+ })
+}
+
+func stderrTransformer() cmp.Option {
+ return cmp.Transformer("Stderr", func(in string) string {
+ s := strings.Replace(in, "\r", "", -1)
+ return strings.Replace(s, "\\", "/", -1)
+ })
+}
+
func TestExamples(t *testing.T) {
t.Parallel()
ctx := context.Background()
@@ -84,7 +100,7 @@ func BenchmarkExamples(b *testing.B) {
}
type textContext struct {
- Mutate func(*config.Config)
+ Mutate func(*testing.T, string) func(*config.Config)
Enabled func() bool
}
@@ -98,20 +114,49 @@ func TestReplay(t *testing.T) {
contexts := map[string]textContext{
"base": {
- Mutate: func(c *config.Config) {},
+ Mutate: func(t *testing.T, path string) func(*config.Config) { return func(c *config.Config) {} },
Enabled: func() bool { return true },
},
"managed-db": {
- Mutate: func(c *config.Config) {
- c.Cloud.Project = "01HAQMMECEYQYKFJN8MP16QC41" // TODO: Read from environment
- for i := range c.SQL {
- c.SQL[i].Database = &config.Database{
- Managed: true,
+ Mutate: func(t *testing.T, path string) func(*config.Config) {
+ return func(c *config.Config) {
+ c.Servers = []config.Server{
+ {
+ Name: "postgres",
+ Engine: config.EnginePostgreSQL,
+ URI: local.PostgreSQLServer(),
+ },
+
+ {
+ Name: "mysql",
+ Engine: config.EngineMySQL,
+ URI: local.MySQLServer(),
+ },
+ }
+ for i := range c.SQL {
+ switch c.SQL[i].Engine {
+ case config.EnginePostgreSQL:
+ c.SQL[i].Database = &config.Database{
+ Managed: true,
+ }
+ case config.EngineMySQL:
+ c.SQL[i].Database = &config.Database{
+ Managed: true,
+ }
+ default:
+ // pass
+ }
}
}
},
Enabled: func() bool {
- return len(os.Getenv("SQLC_AUTH_TOKEN")) > 0
+ if len(os.Getenv("POSTGRESQL_SERVER_URI")) == 0 {
+ return false
+ }
+ if len(os.Getenv("MYSQL_SERVER_URI")) == 0 {
+ return false
+ }
+ return true
},
},
}
@@ -127,8 +172,6 @@ func TestReplay(t *testing.T) {
for _, replay := range FindTests(t, "testdata", name) {
tc := replay
t.Run(filepath.Join(name, tc.Name), func(t *testing.T) {
- t.Parallel()
-
var stderr bytes.Buffer
var output map[string]string
var err error
@@ -153,13 +196,19 @@ func TestReplay(t *testing.T) {
}
}
+ if len(args.OS) > 0 {
+ if !slices.Contains(args.OS, runtime.GOOS) {
+ t.Skipf("unsupported os: %s", runtime.GOOS)
+ }
+ }
+
opts := cmd.Options{
Env: cmd.Env{
Debug: opts.DebugFromString(args.Env["SQLCDEBUG"]),
NoRemote: true,
},
Stderr: &stderr,
- MutateConfig: testctx.Mutate,
+ MutateConfig: testctx.Mutate(t, path),
}
switch args.Command {
@@ -180,7 +229,11 @@ func TestReplay(t *testing.T) {
t.Fatalf("sqlc %s failed: %s", args.Command, stderr.String())
}
- diff := cmp.Diff(strings.TrimSpace(expected), strings.TrimSpace(stderr.String()))
+ diff := cmp.Diff(
+ strings.TrimSpace(expected),
+ strings.TrimSpace(stderr.String()),
+ stderrTransformer(),
+ )
if diff != "" {
t.Fatalf("stderr differed (-want +got):\n%s", diff)
}
@@ -233,7 +286,12 @@ func cmpDirectory(t *testing.T, dir string, actual map[string]string) {
t.Fatal(err)
}
- if !cmp.Equal(expected, actual, cmpopts.EquateEmpty()) {
+ opts := []cmp.Option{
+ cmpopts.EquateEmpty(),
+ lineEndings(),
+ }
+
+ if !cmp.Equal(expected, actual, opts...) {
t.Errorf("%s contents differ", dir)
for name, contents := range expected {
name := name
@@ -241,7 +299,7 @@ func cmpDirectory(t *testing.T, dir string, actual map[string]string) {
t.Errorf("%s is empty", name)
return
}
- if diff := cmp.Diff(contents, actual[name]); diff != "" {
+ if diff := cmp.Diff(contents, actual[name], opts...); diff != "" {
t.Errorf("%s differed (-want +got):\n%s", name, diff)
}
}
diff --git a/internal/endtoend/fmt_test.go b/internal/endtoend/fmt_test.go
index 22b5f1392d..04e753e5b7 100644
--- a/internal/endtoend/fmt_test.go
+++ b/internal/endtoend/fmt_test.go
@@ -8,7 +8,6 @@ import (
"strings"
"testing"
- pg_query "github.com/pganalyze/pg_query_go/v4"
"github.com/sqlc-dev/sqlc/internal/debug"
"github.com/sqlc-dev/sqlc/internal/engine/postgresql"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
@@ -40,7 +39,7 @@ func TestFormat(t *testing.T) {
}
query := query
t.Run(fmt.Sprintf("%d", i), func(t *testing.T) {
- expected, err := pg_query.Fingerprint(string(query))
+ expected, err := postgresql.Fingerprint(string(query))
if err != nil {
t.Fatal(err)
}
@@ -52,12 +51,12 @@ func TestFormat(t *testing.T) {
t.Fatal("expected one statement")
}
if false {
- r, err := pg_query.Parse(string(query))
+ r, err := postgresql.Parse(string(query))
debug.Dump(r, err)
}
out := ast.Format(stmts[0].Raw)
- actual, err := pg_query.Fingerprint(out)
+ actual, err := postgresql.Fingerprint(out)
if err != nil {
t.Error(err)
}
diff --git a/internal/endtoend/testdata/alias/mysql/go/db.go b/internal/endtoend/testdata/alias/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/alias/mysql/go/db.go
+++ b/internal/endtoend/testdata/alias/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/alias/mysql/go/models.go b/internal/endtoend/testdata/alias/mysql/go/models.go
index 1d7edec0b9..fc79eb7922 100644
--- a/internal/endtoend/testdata/alias/mysql/go/models.go
+++ b/internal/endtoend/testdata/alias/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/alias/mysql/go/query.sql.go b/internal/endtoend/testdata/alias/mysql/go/query.sql.go
index aedf900619..3492eca04b 100644
--- a/internal/endtoend/testdata/alias/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/alias/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/query.sql.go
index 57efba184d..568a1b8c02 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/query.sql.go
index 57efba184d..568a1b8c02 100644
--- a/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/alias/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/alias/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/alias/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/alias/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/alias/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/alias/postgresql/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/alias/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/alias/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/alias/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/alias/postgresql/stdlib/go/query.sql.go
index c910f3a434..94a50d4b50 100644
--- a/internal/endtoend/testdata/alias/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/alias/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/alias/sqlite/go/db.go b/internal/endtoend/testdata/alias/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/alias/sqlite/go/db.go
+++ b/internal/endtoend/testdata/alias/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/alias/sqlite/go/models.go b/internal/endtoend/testdata/alias/sqlite/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/alias/sqlite/go/models.go
+++ b/internal/endtoend/testdata/alias/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/alias/sqlite/go/query.sql.go b/internal/endtoend/testdata/alias/sqlite/go/query.sql.go
index 00ca38932d..a370f91daa 100644
--- a/internal/endtoend/testdata/alias/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/alias/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/any/pgx/v4/go/db.go b/internal/endtoend/testdata/any/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/any/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/any/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/any/pgx/v4/go/models.go b/internal/endtoend/testdata/any/pgx/v4/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/any/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/any/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/any/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/any/pgx/v4/go/query.sql.go
index 6c90b6a980..631370145e 100644
--- a/internal/endtoend/testdata/any/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/any/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/any/pgx/v5/go/db.go b/internal/endtoend/testdata/any/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/any/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/any/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/any/pgx/v5/go/models.go b/internal/endtoend/testdata/any/pgx/v5/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/any/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/any/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/any/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/any/pgx/v5/go/query.sql.go
index 6c90b6a980..631370145e 100644
--- a/internal/endtoend/testdata/any/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/any/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/any/stdlib/go/db.go b/internal/endtoend/testdata/any/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/any/stdlib/go/db.go
+++ b/internal/endtoend/testdata/any/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/any/stdlib/go/models.go b/internal/endtoend/testdata/any/stdlib/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/any/stdlib/go/models.go
+++ b/internal/endtoend/testdata/any/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/any/stdlib/go/query.sql.go b/internal/endtoend/testdata/any/stdlib/go/query.sql.go
index 5ecf9cfebb..b458d9043f 100644
--- a/internal/endtoend/testdata/any/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/any/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_in/pgx/v4/go/db.go b/internal/endtoend/testdata/array_in/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/array_in/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/array_in/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_in/pgx/v4/go/models.go b/internal/endtoend/testdata/array_in/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/array_in/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/array_in/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/array_in/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/array_in/pgx/v4/go/query.sql.go
index 2a088c3b86..130700923f 100644
--- a/internal/endtoend/testdata/array_in/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/array_in/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_in/pgx/v5/go/db.go b/internal/endtoend/testdata/array_in/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/array_in/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/array_in/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_in/pgx/v5/go/models.go b/internal/endtoend/testdata/array_in/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/array_in/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/array_in/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/array_in/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/array_in/pgx/v5/go/query.sql.go
index 2a088c3b86..130700923f 100644
--- a/internal/endtoend/testdata/array_in/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/array_in/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_in/stdlib/go/db.go b/internal/endtoend/testdata/array_in/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/array_in/stdlib/go/db.go
+++ b/internal/endtoend/testdata/array_in/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_in/stdlib/go/models.go b/internal/endtoend/testdata/array_in/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/array_in/stdlib/go/models.go
+++ b/internal/endtoend/testdata/array_in/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/array_in/stdlib/go/query.sql.go b/internal/endtoend/testdata/array_in/stdlib/go/query.sql.go
index 4b3bab11d9..7fb526935c 100644
--- a/internal/endtoend/testdata/array_in/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/array_in/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text/pgx/v4/go/db.go b/internal/endtoend/testdata/array_text/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/array_text/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/array_text/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text/pgx/v4/go/models.go b/internal/endtoend/testdata/array_text/pgx/v4/go/models.go
index 59e3921e6f..983f9feae1 100644
--- a/internal/endtoend/testdata/array_text/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/array_text/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags []string
}
diff --git a/internal/endtoend/testdata/array_text/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/array_text/pgx/v4/go/query.sql.go
index 3863216694..544a7fb868 100644
--- a/internal/endtoend/testdata/array_text/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text/pgx/v5/go/db.go b/internal/endtoend/testdata/array_text/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/array_text/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/array_text/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text/pgx/v5/go/models.go b/internal/endtoend/testdata/array_text/pgx/v5/go/models.go
index 59e3921e6f..983f9feae1 100644
--- a/internal/endtoend/testdata/array_text/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/array_text/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags []string
}
diff --git a/internal/endtoend/testdata/array_text/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/array_text/pgx/v5/go/query.sql.go
index 3863216694..544a7fb868 100644
--- a/internal/endtoend/testdata/array_text/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text/stdlib/go/db.go b/internal/endtoend/testdata/array_text/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/array_text/stdlib/go/db.go
+++ b/internal/endtoend/testdata/array_text/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text/stdlib/go/models.go b/internal/endtoend/testdata/array_text/stdlib/go/models.go
index 59e3921e6f..983f9feae1 100644
--- a/internal/endtoend/testdata/array_text/stdlib/go/models.go
+++ b/internal/endtoend/testdata/array_text/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags []string
}
diff --git a/internal/endtoend/testdata/array_text/stdlib/go/query.sql.go b/internal/endtoend/testdata/array_text/stdlib/go/query.sql.go
index 8298cfaa66..1d02ec58bc 100644
--- a/internal/endtoend/testdata/array_text/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v4/go/db.go b/internal/endtoend/testdata/array_text_join/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v4/go/models.go b/internal/endtoend/testdata/array_text_join/pgx/v4/go/models.go
index 6a2d09d4f1..c0071dad8b 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
Info []string
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/array_text_join/pgx/v4/go/query.sql.go
index 8a2861e3c3..c2441308e1 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v5/go/db.go b/internal/endtoend/testdata/array_text_join/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v5/go/models.go b/internal/endtoend/testdata/array_text_join/pgx/v5/go/models.go
index 6a2d09d4f1..c0071dad8b 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
Info []string
diff --git a/internal/endtoend/testdata/array_text_join/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/array_text_join/pgx/v5/go/query.sql.go
index 8a2861e3c3..c2441308e1 100644
--- a/internal/endtoend/testdata/array_text_join/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text_join/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/stdlib/go/db.go b/internal/endtoend/testdata/array_text_join/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/array_text_join/stdlib/go/db.go
+++ b/internal/endtoend/testdata/array_text_join/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/array_text_join/stdlib/go/models.go b/internal/endtoend/testdata/array_text_join/stdlib/go/models.go
index 6a2d09d4f1..c0071dad8b 100644
--- a/internal/endtoend/testdata/array_text_join/stdlib/go/models.go
+++ b/internal/endtoend/testdata/array_text_join/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
Info []string
diff --git a/internal/endtoend/testdata/array_text_join/stdlib/go/query.sql.go b/internal/endtoend/testdata/array_text_join/stdlib/go/query.sql.go
index 7a68a24d06..91c14c174a 100644
--- a/internal/endtoend/testdata/array_text_join/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/array_text_join/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/batch.go b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/batch.go
index c81b1dc72d..1f4a41ec15 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/batch.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/db.go
index b01fd0785f..400a67a359 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/models.go
index 7b8cecbc71..a16a663b8d 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/query.sql.go
index 618ddc3a18..d86ba36318 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v4/go/query.sql.go
@@ -1,8 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/batch.go b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/batch.go
index b098839691..06f3d60b81 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/batch.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/db.go
index 3410ec9d37..e7a9ed88fd 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/models.go
index 8f304d8212..c360caebaf 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/query.sql.go
index 618ddc3a18..d86ba36318 100644
--- a/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/batch/postgresql/pgx/v5/go/query.sql.go
@@ -1,8 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/batch.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/batch.go
index 93c3eb6c10..7563e79ffb 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/batch.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/db.go
index b01fd0785f..400a67a359 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/models.go
index 7b8cecbc71..a16a663b8d 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/query.sql.go
index 747827ec12..04f94d662d 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/batch.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/batch.go
index c554c8be54..774d2dcc51 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/batch.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/db.go
index 3410ec9d37..e7a9ed88fd 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/models.go
index 8f304d8212..c360caebaf 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/query.sql.go
index bdffde1126..dd8b954903 100644
--- a/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/batch_imports/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/batch_parameter_limit/issue.md b/internal/endtoend/testdata/batch_parameter_limit/issue.md
new file mode 100644
index 0000000000..e0d6146269
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/issue.md
@@ -0,0 +1 @@
+https://github.com/sqlc-dev/sqlc/issues/3185
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/batch.go b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/batch.go
new file mode 100644
index 0000000000..190a712821
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/batch.go
@@ -0,0 +1,71 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: batch.go
+
+package querytest
+
+import (
+ "context"
+ "errors"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgtype"
+)
+
+var (
+ ErrBatchAlreadyClosed = errors.New("batch already closed")
+)
+
+const createAuthors = `-- name: CreateAuthors :batchexec
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+`
+
+type CreateAuthorsBatchResults struct {
+ br pgx.BatchResults
+ tot int
+ closed bool
+}
+
+type CreateAuthorsParams struct {
+ Name string
+ Bio pgtype.Text
+}
+
+func (q *Queries) CreateAuthors(ctx context.Context, arg []CreateAuthorsParams) *CreateAuthorsBatchResults {
+ batch := &pgx.Batch{}
+ for _, a := range arg {
+ vals := []interface{}{
+ a.Name,
+ a.Bio,
+ }
+ batch.Queue(createAuthors, vals...)
+ }
+ br := q.db.SendBatch(ctx, batch)
+ return &CreateAuthorsBatchResults{br, len(arg), false}
+}
+
+func (b *CreateAuthorsBatchResults) Exec(f func(int, error)) {
+ defer b.br.Close()
+ for t := 0; t < b.tot; t++ {
+ if b.closed {
+ if f != nil {
+ f(t, ErrBatchAlreadyClosed)
+ }
+ continue
+ }
+ _, err := b.br.Exec()
+ if f != nil {
+ f(t, err)
+ }
+ }
+}
+
+func (b *CreateAuthorsBatchResults) Close() error {
+ b.closed = true
+ return b.br.Close()
+}
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/db.go b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/db.go
new file mode 100644
index 0000000000..e7a9ed88fd
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/db.go
@@ -0,0 +1,33 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgconn"
+)
+
+type DBTX interface {
+ Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
+ Query(context.Context, string, ...interface{}) (pgx.Rows, error)
+ QueryRow(context.Context, string, ...interface{}) pgx.Row
+ SendBatch(context.Context, *pgx.Batch) pgx.BatchResults
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx pgx.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/models.go b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/models.go
new file mode 100644
index 0000000000..53c974680f
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/models.go
@@ -0,0 +1,15 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "github.com/jackc/pgx/v5/pgtype"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio pgtype.Text
+}
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/query.sql.go
new file mode 100644
index 0000000000..d86ba36318
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/go/query.sql.go
@@ -0,0 +1,6 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/query.sql b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/query.sql
new file mode 100644
index 0000000000..3c25c9349e
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/query.sql
@@ -0,0 +1,6 @@
+-- name: CreateAuthors :batchexec
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+);
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/schema.sql b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/schema.sql
new file mode 100644
index 0000000000..69b607d902
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/sqlc.yaml b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/sqlc.yaml
new file mode 100644
index 0000000000..e5eb77fa4e
--- /dev/null
+++ b/internal/endtoend/testdata/batch_parameter_limit/postgresql/pgx/sqlc.yaml
@@ -0,0 +1,11 @@
+version: "2"
+sql:
+ - engine: "postgresql"
+ schema: "schema.sql"
+ queries: "query.sql"
+ gen:
+ go:
+ package: "querytest"
+ out: "go"
+ sql_package: "pgx/v5"
+ query_parameter_limit: 2
diff --git a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/batch.go b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/batch.go
index 7b4c5744f1..3eeec80448 100644
--- a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/batch.go
+++ b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/db.go b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/db.go
index 3410ec9d37..e7a9ed88fd 100644
--- a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/models.go b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/models.go
index 416eb3adff..1b99d4df60 100644
--- a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/query.sql.go
index 618ddc3a18..d86ba36318 100644
--- a/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/batch_parameter_type/postgresql/pgx/go/query.sql.go
@@ -1,8 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/between_args/mysql/go/db.go b/internal/endtoend/testdata/between_args/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/between_args/mysql/go/db.go
+++ b/internal/endtoend/testdata/between_args/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/between_args/mysql/go/models.go b/internal/endtoend/testdata/between_args/mysql/go/models.go
index f2bac52662..20b86cb24e 100644
--- a/internal/endtoend/testdata/between_args/mysql/go/models.go
+++ b/internal/endtoend/testdata/between_args/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Product struct {
ID int64
Name string
diff --git a/internal/endtoend/testdata/between_args/mysql/go/query.sql.go b/internal/endtoend/testdata/between_args/mysql/go/query.sql.go
index 583c77b894..64f6028ceb 100644
--- a/internal/endtoend/testdata/between_args/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/between_args/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/between_args/sqlite/go/db.go b/internal/endtoend/testdata/between_args/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/between_args/sqlite/go/db.go
+++ b/internal/endtoend/testdata/between_args/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/between_args/sqlite/go/models.go b/internal/endtoend/testdata/between_args/sqlite/go/models.go
index d197800d38..21e9c16efb 100644
--- a/internal/endtoend/testdata/between_args/sqlite/go/models.go
+++ b/internal/endtoend/testdata/between_args/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Product struct {
Name string
Price int64
diff --git a/internal/endtoend/testdata/between_args/sqlite/go/query.sql.go b/internal/endtoend/testdata/between_args/sqlite/go/query.sql.go
index 67badd2e28..036766aad0 100644
--- a/internal/endtoend/testdata/between_args/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/between_args/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v4/go/db.go b/internal/endtoend/testdata/bit_string/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v4/go/models.go b/internal/endtoend/testdata/bit_string/pgx/v4/go/models.go
index a5b0abacec..583cd7dbe4 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/bit_string/pgx/v4/go/query.sql.go
index 67adad1f72..03281c234b 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v5/go/db.go b/internal/endtoend/testdata/bit_string/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v5/go/models.go b/internal/endtoend/testdata/bit_string/pgx/v5/go/models.go
index 3e941c7a3b..851e114255 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/bit_string/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/bit_string/pgx/v5/go/query.sql.go
index 67adad1f72..03281c234b 100644
--- a/internal/endtoend/testdata/bit_string/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/bit_string/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/db.go
index 17f76fe6bb..103c0bafad 100644
--- a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/db.go
@@ -2,7 +2,7 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/models.go
index 6c7d90cbcb..df4b24c01e 100644
--- a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/models.go
@@ -2,7 +2,7 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/querier.go b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/querier.go
index bb5d3261c4..2c0d683bcc 100644
--- a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/querier.go
+++ b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/querier.go
@@ -2,7 +2,7 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/query.sql.go
index 46c690cecf..b46465478f 100644
--- a/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/build_tags/postgresql/stdlib/go/query.sql.go
@@ -2,7 +2,7 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/internal/endtoend/testdata/builtins/postgresql/exec.json b/internal/endtoend/testdata/builtins/postgresql/exec.json
new file mode 100644
index 0000000000..97f81fbc66
--- /dev/null
+++ b/internal/endtoend/testdata/builtins/postgresql/exec.json
@@ -0,0 +1,3 @@
+{
+ "contexts": ["base"]
+}
diff --git a/internal/endtoend/testdata/builtins/postgresql/go/db.go b/internal/endtoend/testdata/builtins/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/builtins/postgresql/go/db.go
+++ b/internal/endtoend/testdata/builtins/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/builtins/postgresql/go/models.go b/internal/endtoend/testdata/builtins/postgresql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/builtins/postgresql/go/models.go
+++ b/internal/endtoend/testdata/builtins/postgresql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/builtins/postgresql/go/query.sql.go b/internal/endtoend/testdata/builtins/postgresql/go/query.sql.go
new file mode 100644
index 0000000000..ff788f4482
--- /dev/null
+++ b/internal/endtoend/testdata/builtins/postgresql/go/query.sql.go
@@ -0,0 +1,274 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const abs = `-- name: Abs :one
+SELECT abs(-17.4)
+`
+
+func (q *Queries) Abs(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, abs)
+ var abs int64
+ err := row.Scan(&abs)
+ return abs, err
+}
+
+const cbrt = `-- name: Cbrt :one
+SELECT cbrt(27.0)
+`
+
+func (q *Queries) Cbrt(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, cbrt)
+ var cbrt float64
+ err := row.Scan(&cbrt)
+ return cbrt, err
+}
+
+const ceil = `-- name: Ceil :one
+SELECT ceil(-42.8)
+`
+
+func (q *Queries) Ceil(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, ceil)
+ var ceil float64
+ err := row.Scan(&ceil)
+ return ceil, err
+}
+
+const ceiling = `-- name: Ceiling :one
+SELECT ceiling(-95.3)
+`
+
+func (q *Queries) Ceiling(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, ceiling)
+ var ceiling float64
+ err := row.Scan(&ceiling)
+ return ceiling, err
+}
+
+const degrees = `-- name: Degrees :one
+SELECT degrees(0.5)
+`
+
+func (q *Queries) Degrees(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, degrees)
+ var degrees float64
+ err := row.Scan(°rees)
+ return degrees, err
+}
+
+const div = `-- name: Div :one
+SELECT div(9,4)
+`
+
+func (q *Queries) Div(ctx context.Context) (string, error) {
+ row := q.db.QueryRowContext(ctx, div)
+ var div string
+ err := row.Scan(&div)
+ return div, err
+}
+
+const exp = `-- name: Exp :one
+SELECT exp(1.0)
+`
+
+func (q *Queries) Exp(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, exp)
+ var exp float64
+ err := row.Scan(&exp)
+ return exp, err
+}
+
+const floor = `-- name: Floor :one
+SELECT floor(-42.8)
+`
+
+func (q *Queries) Floor(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, floor)
+ var floor float64
+ err := row.Scan(&floor)
+ return floor, err
+}
+
+const ln = `-- name: Ln :one
+SELECT ln(2.0)
+`
+
+func (q *Queries) Ln(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, ln)
+ var ln float64
+ err := row.Scan(&ln)
+ return ln, err
+}
+
+const log = `-- name: Log :one
+SELECT log(100.0)
+`
+
+func (q *Queries) Log(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, log)
+ var log float64
+ err := row.Scan(&log)
+ return log, err
+}
+
+const logs = `-- name: Logs :one
+SELECT log(2.0, 64.0)
+`
+
+func (q *Queries) Logs(ctx context.Context) (string, error) {
+ row := q.db.QueryRowContext(ctx, logs)
+ var log string
+ err := row.Scan(&log)
+ return log, err
+}
+
+const mod = `-- name: Mod :one
+SELECT mod(9,4)
+`
+
+func (q *Queries) Mod(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, mod)
+ var mod int64
+ err := row.Scan(&mod)
+ return mod, err
+}
+
+const pi = `-- name: Pi :one
+SELECT pi()
+`
+
+func (q *Queries) Pi(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, pi)
+ var pi float64
+ err := row.Scan(&pi)
+ return pi, err
+}
+
+const power = `-- name: Power :one
+SELECT power(9.0, 3.0)
+`
+
+func (q *Queries) Power(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, power)
+ var power float64
+ err := row.Scan(&power)
+ return power, err
+}
+
+const radians = `-- name: Radians :one
+SELECT radians(45.0)
+`
+
+func (q *Queries) Radians(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, radians)
+ var radians float64
+ err := row.Scan(&radians)
+ return radians, err
+}
+
+const round = `-- name: Round :one
+SELECT round(42.4)
+`
+
+func (q *Queries) Round(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, round)
+ var round float64
+ err := row.Scan(&round)
+ return round, err
+}
+
+const rounds = `-- name: Rounds :one
+SELECT round(42.4382, 2)
+`
+
+func (q *Queries) Rounds(ctx context.Context) (string, error) {
+ row := q.db.QueryRowContext(ctx, rounds)
+ var round string
+ err := row.Scan(&round)
+ return round, err
+}
+
+const scale = `-- name: Scale :one
+SELECT scale(8.41)
+`
+
+func (q *Queries) Scale(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, scale)
+ var scale int32
+ err := row.Scan(&scale)
+ return scale, err
+}
+
+const sign = `-- name: Sign :one
+SELECT sign(-8.4)
+`
+
+func (q *Queries) Sign(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, sign)
+ var sign float64
+ err := row.Scan(&sign)
+ return sign, err
+}
+
+const sqrt = `-- name: Sqrt :one
+SELECT sqrt(2.0)
+`
+
+func (q *Queries) Sqrt(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, sqrt)
+ var sqrt float64
+ err := row.Scan(&sqrt)
+ return sqrt, err
+}
+
+const trunc = `-- name: Trunc :one
+SELECT trunc(42.8)
+`
+
+func (q *Queries) Trunc(ctx context.Context) (float64, error) {
+ row := q.db.QueryRowContext(ctx, trunc)
+ var trunc float64
+ err := row.Scan(&trunc)
+ return trunc, err
+}
+
+const truncs = `-- name: Truncs :one
+SELECT trunc(42.4382, 2)
+`
+
+func (q *Queries) Truncs(ctx context.Context) (string, error) {
+ row := q.db.QueryRowContext(ctx, truncs)
+ var trunc string
+ err := row.Scan(&trunc)
+ return trunc, err
+}
+
+const widthBucketNumerics = `-- name: WidthBucketNumerics :one
+SELECT width_bucket(5.35, 0.024, 10.06, 5)
+`
+
+func (q *Queries) WidthBucketNumerics(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, widthBucketNumerics)
+ var width_bucket int32
+ err := row.Scan(&width_bucket)
+ return width_bucket, err
+}
+
+const widthBucketTimestamps = `-- name: WidthBucketTimestamps :one
+SELECT width_bucket(now(), array['yesterday', 'today', 'tomorrow']::timestamptz[])
+`
+
+func (q *Queries) WidthBucketTimestamps(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, widthBucketTimestamps)
+ var width_bucket int32
+ err := row.Scan(&width_bucket)
+ return width_bucket, err
+}
diff --git a/internal/endtoend/testdata/builtins/postgresql/query.sql b/internal/endtoend/testdata/builtins/postgresql/query.sql
index ee4723f8ed..2c62e5f772 100644
--- a/internal/endtoend/testdata/builtins/postgresql/query.sql
+++ b/internal/endtoend/testdata/builtins/postgresql/query.sql
@@ -1,25 +1,48 @@
+-- name: Abs :one
SELECT abs(-17.4);
+-- name: Cbrt :one
SELECT cbrt(27.0);
+-- name: Ceil :one
SELECT ceil(-42.8);
+-- name: Ceiling :one
SELECT ceiling(-95.3);
+-- name: Degrees :one
SELECT degrees(0.5);
+-- name: Div :one
SELECT div(9,4);
+-- name: Exp :one
SELECT exp(1.0);
+-- name: Floor :one
SELECT floor(-42.8);
+-- name: Ln :one
SELECT ln(2.0);
+-- name: Log :one
SELECT log(100.0);
+-- name: Logs :one
SELECT log(2.0, 64.0);
+-- name: Mod :one
SELECT mod(9,4);
+-- name: Pi :one
SELECT pi();
+-- name: Power :one
SELECT power(9.0, 3.0);
+-- name: Radians :one
SELECT radians(45.0);
+-- name: Round :one
SELECT round(42.4);
+-- name: Rounds :one
SELECT round(42.4382, 2);
+-- name: Scale :one
SELECT scale(8.41);
+-- name: Sign :one
SELECT sign(-8.4);
+-- name: Sqrt :one
SELECT sqrt(2.0);
+-- name: Trunc :one
SELECT trunc(42.8);
+-- name: Truncs :one
SELECT trunc(42.4382, 2);
+-- name: WidthBucketNumerics :one
SELECT width_bucket(5.35, 0.024, 10.06, 5);
+-- name: WidthBucketTimestamps :one
SELECT width_bucket(now(), array['yesterday', 'today', 'tomorrow']::timestamptz[]);
-create schema if not exists sqlc;
diff --git a/internal/endtoend/testdata/builtins/sqlite/go/aggfunc.sql.go b/internal/endtoend/testdata/builtins/sqlite/go/aggfunc.sql.go
index 0b8f5afe38..3b4c7e95e7 100644
--- a/internal/endtoend/testdata/builtins/sqlite/go/aggfunc.sql.go
+++ b/internal/endtoend/testdata/builtins/sqlite/go/aggfunc.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: aggfunc.sql
package querytest
diff --git a/internal/endtoend/testdata/builtins/sqlite/go/db.go b/internal/endtoend/testdata/builtins/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/builtins/sqlite/go/db.go
+++ b/internal/endtoend/testdata/builtins/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/builtins/sqlite/go/mathfunc.sql.go b/internal/endtoend/testdata/builtins/sqlite/go/mathfunc.sql.go
index 2c90cc7aac..a35745d9a2 100644
--- a/internal/endtoend/testdata/builtins/sqlite/go/mathfunc.sql.go
+++ b/internal/endtoend/testdata/builtins/sqlite/go/mathfunc.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: mathfunc.sql
package querytest
diff --git a/internal/endtoend/testdata/builtins/sqlite/go/models.go b/internal/endtoend/testdata/builtins/sqlite/go/models.go
index c23c3ac571..a570034cc8 100644
--- a/internal/endtoend/testdata/builtins/sqlite/go/models.go
+++ b/internal/endtoend/testdata/builtins/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Test struct {
ID int64
IntVal int64
diff --git a/internal/endtoend/testdata/builtins/sqlite/go/scalarfunc.sql.go b/internal/endtoend/testdata/builtins/sqlite/go/scalarfunc.sql.go
index 2b34fd68a3..eab6669118 100644
--- a/internal/endtoend/testdata/builtins/sqlite/go/scalarfunc.sql.go
+++ b/internal/endtoend/testdata/builtins/sqlite/go/scalarfunc.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: scalarfunc.sql
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/mysql/go/db.go b/internal/endtoend/testdata/case_named_params/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_named_params/mysql/go/db.go
+++ b/internal/endtoend/testdata/case_named_params/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/mysql/go/models.go b/internal/endtoend/testdata/case_named_params/mysql/go/models.go
index f45235d4c4..4821a3642e 100644
--- a/internal/endtoend/testdata/case_named_params/mysql/go/models.go
+++ b/internal/endtoend/testdata/case_named_params/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/mysql/go/query.sql.go b/internal/endtoend/testdata/case_named_params/mysql/go/query.sql.go
index cda6d667de..57657746a4 100644
--- a/internal/endtoend/testdata/case_named_params/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/case_named_params/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/mysql/schema.sql b/internal/endtoend/testdata/case_named_params/mysql/schema.sql
index 3053802224..5e2bcfacf0 100644
--- a/internal/endtoend/testdata/case_named_params/mysql/schema.sql
+++ b/internal/endtoend/testdata/case_named_params/mysql/schema.sql
@@ -2,8 +2,8 @@
CREATE TABLE authors (
id BIGINT PRIMARY KEY,
- username TEXT NULL,
- email TEXT NULL,
+ username VARCHAR(10) NULL,
+ email VARCHAR(10) NULL,
name TEXT NOT NULL,
bio TEXT,
UNIQUE KEY idx_username (username),
diff --git a/internal/endtoend/testdata/case_named_params/postgresql/go/db.go b/internal/endtoend/testdata/case_named_params/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_named_params/postgresql/go/db.go
+++ b/internal/endtoend/testdata/case_named_params/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/postgresql/go/models.go b/internal/endtoend/testdata/case_named_params/postgresql/go/models.go
index f45235d4c4..4821a3642e 100644
--- a/internal/endtoend/testdata/case_named_params/postgresql/go/models.go
+++ b/internal/endtoend/testdata/case_named_params/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/postgresql/go/query.sql.go b/internal/endtoend/testdata/case_named_params/postgresql/go/query.sql.go
index ae5169653c..2b676e7c18 100644
--- a/internal/endtoend/testdata/case_named_params/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/case_named_params/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/sqlite/go/db.go b/internal/endtoend/testdata/case_named_params/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_named_params/sqlite/go/db.go
+++ b/internal/endtoend/testdata/case_named_params/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/sqlite/go/models.go b/internal/endtoend/testdata/case_named_params/sqlite/go/models.go
index e98588c725..2955bef41a 100644
--- a/internal/endtoend/testdata/case_named_params/sqlite/go/models.go
+++ b/internal/endtoend/testdata/case_named_params/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_named_params/sqlite/go/query.sql.go b/internal/endtoend/testdata/case_named_params/sqlite/go/query.sql.go
index bd48f183f9..0a5ae3bf05 100644
--- a/internal/endtoend/testdata/case_named_params/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/case_named_params/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_sensitive/sqlite/go/db.go b/internal/endtoend/testdata/case_sensitive/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_sensitive/sqlite/go/db.go
+++ b/internal/endtoend/testdata/case_sensitive/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_sensitive/sqlite/go/models.go b/internal/endtoend/testdata/case_sensitive/sqlite/go/models.go
index 4db1376af4..47bb6419a8 100644
--- a/internal/endtoend/testdata/case_sensitive/sqlite/go/models.go
+++ b/internal/endtoend/testdata/case_sensitive/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_sensitive/sqlite/go/query.sql.go b/internal/endtoend/testdata/case_sensitive/sqlite/go/query.sql.go
index c886639054..58663423c3 100644
--- a/internal/endtoend/testdata/case_sensitive/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/case_sensitive/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/db.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/models.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/query.sql.go
index fbad5b40c1..c6130ca198 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/db.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/models.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/query.sql.go
index fbad5b40c1..c6130ca198 100644
--- a/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/case_stmt_bool/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/db.go b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/db.go
+++ b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/models.go b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/models.go
+++ b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/query.sql.go b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/query.sql.go
index 5c8eaa174d..07cf71f87f 100644
--- a/internal/endtoend/testdata/case_stmt_bool/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/case_stmt_bool/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_text/pgx/v4/go/db.go b/internal/endtoend/testdata/case_text/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/case_text/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/case_text/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_text/pgx/v4/go/models.go b/internal/endtoend/testdata/case_text/pgx/v4/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_text/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/case_text/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_text/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/case_text/pgx/v4/go/query.sql.go
index 05bca723e5..c748ca9777 100644
--- a/internal/endtoend/testdata/case_text/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/case_text/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_text/pgx/v5/go/db.go b/internal/endtoend/testdata/case_text/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/case_text/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/case_text/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_text/pgx/v5/go/models.go b/internal/endtoend/testdata/case_text/pgx/v5/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_text/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/case_text/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_text/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/case_text/pgx/v5/go/query.sql.go
index 05bca723e5..c748ca9777 100644
--- a/internal/endtoend/testdata/case_text/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/case_text/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_text/stdlib/go/db.go b/internal/endtoend/testdata/case_text/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_text/stdlib/go/db.go
+++ b/internal/endtoend/testdata/case_text/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_text/stdlib/go/models.go b/internal/endtoend/testdata/case_text/stdlib/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/case_text/stdlib/go/models.go
+++ b/internal/endtoend/testdata/case_text/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/case_text/stdlib/go/query.sql.go b/internal/endtoend/testdata/case_text/stdlib/go/query.sql.go
index 811c8c6b4d..06473d70cd 100644
--- a/internal/endtoend/testdata/case_text/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/case_text/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/mysql/go/db.go b/internal/endtoend/testdata/case_value_param/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/case_value_param/mysql/go/db.go
+++ b/internal/endtoend/testdata/case_value_param/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/mysql/go/models.go b/internal/endtoend/testdata/case_value_param/mysql/go/models.go
index e34b61df0a..b259c439a6 100644
--- a/internal/endtoend/testdata/case_value_param/mysql/go/models.go
+++ b/internal/endtoend/testdata/case_value_param/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/mysql/go/query.sql.go b/internal/endtoend/testdata/case_value_param/mysql/go/query.sql.go
index f98625d1ab..0d8fd285d2 100644
--- a/internal/endtoend/testdata/case_value_param/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/case_value_param/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/postgresql/go/db.go b/internal/endtoend/testdata/case_value_param/postgresql/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/case_value_param/postgresql/go/db.go
+++ b/internal/endtoend/testdata/case_value_param/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/postgresql/go/models.go b/internal/endtoend/testdata/case_value_param/postgresql/go/models.go
index 40353a570f..9325161696 100644
--- a/internal/endtoend/testdata/case_value_param/postgresql/go/models.go
+++ b/internal/endtoend/testdata/case_value_param/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/case_value_param/postgresql/go/query.sql.go b/internal/endtoend/testdata/case_value_param/postgresql/go/query.sql.go
index 319833bcb7..ea96e95d65 100644
--- a/internal/endtoend/testdata/case_value_param/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/case_value_param/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/db.go b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/models.go b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/query.sql.go
index 0811517664..52a219578a 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/db.go b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/models.go b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/models.go
index 349f818223..444ea4ad0b 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/query.sql.go
index 0811517664..52a219578a 100644
--- a/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_coalesce/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/stdlib/go/db.go b/internal/endtoend/testdata/cast_coalesce/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cast_coalesce/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cast_coalesce/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/stdlib/go/models.go b/internal/endtoend/testdata/cast_coalesce/stdlib/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/cast_coalesce/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cast_coalesce/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_coalesce/stdlib/go/query.sql.go b/internal/endtoend/testdata/cast_coalesce/stdlib/go/query.sql.go
index 0220274d58..caaccc9c4a 100644
--- a/internal/endtoend/testdata/cast_coalesce/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_coalesce/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v4/go/db.go b/internal/endtoend/testdata/cast_null/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v4/go/models.go b/internal/endtoend/testdata/cast_null/pgx/v4/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cast_null/pgx/v4/go/query.sql.go
index e63bff38f9..3890dabb4f 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v5/go/db.go b/internal/endtoend/testdata/cast_null/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v5/go/models.go b/internal/endtoend/testdata/cast_null/pgx/v5/go/models.go
index 349f818223..444ea4ad0b 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cast_null/pgx/v5/go/query.sql.go
index 5e20a91714..4431e19009 100644
--- a/internal/endtoend/testdata/cast_null/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_null/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_null/stdlib/go/db.go b/internal/endtoend/testdata/cast_null/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cast_null/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cast_null/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/stdlib/go/models.go b/internal/endtoend/testdata/cast_null/stdlib/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/cast_null/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cast_null/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_null/stdlib/go/query.sql.go b/internal/endtoend/testdata/cast_null/stdlib/go/query.sql.go
index 49cbb2de8c..0e3f67559b 100644
--- a/internal/endtoend/testdata/cast_null/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_null/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cast_param/sqlite/go/db.go b/internal/endtoend/testdata/cast_param/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cast_param/sqlite/go/db.go
+++ b/internal/endtoend/testdata/cast_param/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_param/sqlite/go/models.go b/internal/endtoend/testdata/cast_param/sqlite/go/models.go
index f1a7407077..9bca50416f 100644
--- a/internal/endtoend/testdata/cast_param/sqlite/go/models.go
+++ b/internal/endtoend/testdata/cast_param/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cast_param/sqlite/go/query.sql.go b/internal/endtoend/testdata/cast_param/sqlite/go/query.sql.go
index 57d7aac215..6fa2fa3ff8 100644
--- a/internal/endtoend/testdata/cast_param/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/cast_param/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/db.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/models.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/models.go
index a6625503f4..c3d64c66de 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/query.sql.go
index 6080f7868e..c34d6ef804 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/db.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/models.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/models.go
index de1433bdb5..05f772b63a 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/query.sql.go
index 6080f7868e..c34d6ef804 100644
--- a/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cid_oid_tid_xid/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/citext/pgx/go/db.go b/internal/endtoend/testdata/citext/pgx/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/citext/pgx/go/db.go
+++ b/internal/endtoend/testdata/citext/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/citext/pgx/go/models.go b/internal/endtoend/testdata/citext/pgx/go/models.go
index bf3a05d6ed..ec31ca0a4f 100644
--- a/internal/endtoend/testdata/citext/pgx/go/models.go
+++ b/internal/endtoend/testdata/citext/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/citext/pgx/go/query.sql.go b/internal/endtoend/testdata/citext/pgx/go/query.sql.go
index 9abdb5b824..a156ca9fe9 100644
--- a/internal/endtoend/testdata/citext/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/citext/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/citext/stdlib/go/db.go b/internal/endtoend/testdata/citext/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/citext/stdlib/go/db.go
+++ b/internal/endtoend/testdata/citext/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/citext/stdlib/go/models.go b/internal/endtoend/testdata/citext/stdlib/go/models.go
index bf3a05d6ed..ec31ca0a4f 100644
--- a/internal/endtoend/testdata/citext/stdlib/go/models.go
+++ b/internal/endtoend/testdata/citext/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/citext/stdlib/go/query.sql.go b/internal/endtoend/testdata/citext/stdlib/go/query.sql.go
index 7c3081a461..51c2b5408a 100644
--- a/internal/endtoend/testdata/citext/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/citext/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce/mysql/go/db.go b/internal/endtoend/testdata/coalesce/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce/mysql/go/db.go
+++ b/internal/endtoend/testdata/coalesce/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/mysql/go/models.go b/internal/endtoend/testdata/coalesce/mysql/go/models.go
index bf3a05d6ed..ec31ca0a4f 100644
--- a/internal/endtoend/testdata/coalesce/mysql/go/models.go
+++ b/internal/endtoend/testdata/coalesce/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/mysql/go/query.sql.go b/internal/endtoend/testdata/coalesce/mysql/go/query.sql.go
index 055a16393f..6e1c2af12d 100644
--- a/internal/endtoend/testdata/coalesce/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/models.go
index 8014faa142..0ae1f6357a 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/query.sql.go
index e8e8204fde..99c8e613a7 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/models.go
index d68a14e33c..ee40d12938 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/query.sql.go
index adff09d11d..fcd89fa53b 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/models.go
index 8014faa142..0ae1f6357a 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/query.sql.go
index e920d1b163..c469363b27 100644
--- a/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce/sqlite/go/db.go b/internal/endtoend/testdata/coalesce/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce/sqlite/go/db.go
+++ b/internal/endtoend/testdata/coalesce/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/sqlite/go/models.go b/internal/endtoend/testdata/coalesce/sqlite/go/models.go
index bf3a05d6ed..ec31ca0a4f 100644
--- a/internal/endtoend/testdata/coalesce/sqlite/go/models.go
+++ b/internal/endtoend/testdata/coalesce/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce/sqlite/go/query.sql.go b/internal/endtoend/testdata/coalesce/sqlite/go/query.sql.go
index 055a16393f..6e1c2af12d 100644
--- a/internal/endtoend/testdata/coalesce/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/mysql/go/db.go b/internal/endtoend/testdata/coalesce_as/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce_as/mysql/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/mysql/go/models.go b/internal/endtoend/testdata/coalesce_as/mysql/go/models.go
index 95c0d7aa48..456c99daf0 100644
--- a/internal/endtoend/testdata/coalesce_as/mysql/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/mysql/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/mysql/go/query.sql.go
index 1d9d3670b9..61ae82922f 100644
--- a/internal/endtoend/testdata/coalesce_as/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/db.go b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/models.go b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/models.go
index 15c66bbbd9..fc0dae5f42 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/query.sql.go
index 6102ecb642..15d047e104 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pganalyze/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/models.go
index a7a07e9011..ca329e6ec1 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/query.sql.go
index 22f0403bc1..95c0f426a9 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/models.go
index 15c66bbbd9..fc0dae5f42 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/query.sql.go
index 4b0f223759..f6f770e5ae 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/models.go
index a7a07e9011..ca329e6ec1 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/query.sql.go
index 1d9d3670b9..61ae82922f 100644
--- a/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/sqlite/go/db.go b/internal/endtoend/testdata/coalesce_as/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce_as/sqlite/go/db.go
+++ b/internal/endtoend/testdata/coalesce_as/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/sqlite/go/models.go b/internal/endtoend/testdata/coalesce_as/sqlite/go/models.go
index a7a07e9011..ca329e6ec1 100644
--- a/internal/endtoend/testdata/coalesce_as/sqlite/go/models.go
+++ b/internal/endtoend/testdata/coalesce_as/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_as/sqlite/go/query.sql.go b/internal/endtoend/testdata/coalesce_as/sqlite/go/query.sql.go
index 1d9d3670b9..61ae82922f 100644
--- a/internal/endtoend/testdata/coalesce_as/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_as/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_join/postgresql/go/db.go b/internal/endtoend/testdata/coalesce_join/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce_join/postgresql/go/db.go
+++ b/internal/endtoend/testdata/coalesce_join/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_join/postgresql/go/models.go b/internal/endtoend/testdata/coalesce_join/postgresql/go/models.go
index e90d48b263..b0d0fd586b 100644
--- a/internal/endtoend/testdata/coalesce_join/postgresql/go/models.go
+++ b/internal/endtoend/testdata/coalesce_join/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/coalesce_join/postgresql/go/query.sql.go b/internal/endtoend/testdata/coalesce_join/postgresql/go/query.sql.go
index 33422a1324..fa07a9c9ac 100644
--- a/internal/endtoend/testdata/coalesce_join/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_join/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_params/mysql/exec.json b/internal/endtoend/testdata/coalesce_params/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/coalesce_params/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/coalesce_params/mysql/go/db.go b/internal/endtoend/testdata/coalesce_params/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/coalesce_params/mysql/go/db.go
+++ b/internal/endtoend/testdata/coalesce_params/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_params/mysql/go/models.go b/internal/endtoend/testdata/coalesce_params/mysql/go/models.go
index 226e425892..6e0fdc2476 100644
--- a/internal/endtoend/testdata/coalesce_params/mysql/go/models.go
+++ b/internal/endtoend/testdata/coalesce_params/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/coalesce_params/mysql/go/query.sql.go b/internal/endtoend/testdata/coalesce_params/mysql/go/query.sql.go
index 5ff5b2fe23..d4af90c356 100644
--- a/internal/endtoend/testdata/coalesce_params/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/coalesce_params/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/coalesce_params/mysql/schema.sql b/internal/endtoend/testdata/coalesce_params/mysql/schema.sql
index a0d41cbe74..0b1b34685c 100644
--- a/internal/endtoend/testdata/coalesce_params/mysql/schema.sql
+++ b/internal/endtoend/testdata/coalesce_params/mysql/schema.sql
@@ -14,7 +14,7 @@ CREATE TABLE `Calendar` (
KEY `Relation` (`Relation`),
KEY `UniqueKey` (`UniqueKey`),
KEY `IdKey` (`IdKey`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `Event` (
@@ -32,7 +32,7 @@ CREATE TABLE `Event` (
KEY `CalendarReference` (`CalendarReference`),
KEY `UniqueKey` (`UniqueKey`),
KEY `IdKey` (`IdKey`)
-) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE authors (
diff --git a/internal/endtoend/testdata/codegen_json/gen/codegen.json b/internal/endtoend/testdata/codegen_json/gen/codegen.json
index 3f6b19b57c..3f5041a35d 100644
--- a/internal/endtoend/testdata/codegen_json/gen/codegen.json
+++ b/internal/endtoend/testdata/codegen_json/gen/codegen.json
@@ -65363,7 +65363,7 @@
"insert_into_table": null
}
],
- "sqlc_version": "v1.24.0",
+ "sqlc_version": "v1.29.0",
"plugin_options": "eyJvdXQiOiJnZW4iLCJpbmRlbnQiOiIgICIsImZpbGVuYW1lIjoiY29kZWdlbi5qc29uIn0=",
"global_options": ""
}
diff --git a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/db.go b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/db.go
+++ b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/models.go b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/models.go
index e550b41395..00bc1c86f8 100644
--- a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/models.go
+++ b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/query.sql.go b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/query.sql.go
index 630c0556d7..70484dd859 100644
--- a/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/codegen_struct_field_names/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_alias/stdlib/go/db.go b/internal/endtoend/testdata/column_alias/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/column_alias/stdlib/go/db.go
+++ b/internal/endtoend/testdata/column_alias/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_alias/stdlib/go/models.go b/internal/endtoend/testdata/column_alias/stdlib/go/models.go
index 963aca26ad..0e8459d755 100644
--- a/internal/endtoend/testdata/column_alias/stdlib/go/models.go
+++ b/internal/endtoend/testdata/column_alias/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_alias/stdlib/go/query.sql.go b/internal/endtoend/testdata/column_alias/stdlib/go/query.sql.go
index eb4160ca2f..d8f7c85274 100644
--- a/internal/endtoend/testdata/column_alias/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/column_alias/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_as/mysql/go/db.go b/internal/endtoend/testdata/column_as/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/column_as/mysql/go/db.go
+++ b/internal/endtoend/testdata/column_as/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_as/mysql/go/models.go b/internal/endtoend/testdata/column_as/mysql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/column_as/mysql/go/models.go
+++ b/internal/endtoend/testdata/column_as/mysql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/column_as/mysql/go/query.sql.go b/internal/endtoend/testdata/column_as/mysql/go/query.sql.go
index 591879474e..0f522edd1e 100644
--- a/internal/endtoend/testdata/column_as/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/column_as/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/query.sql.go
index 38de1b9343..96874b715b 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/query.sql.go
index 38de1b9343..96874b715b 100644
--- a/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/column_as/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/query.sql.go
index 591879474e..0f522edd1e 100644
--- a/internal/endtoend/testdata/column_as/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/column_as/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/column_as/sqlite/go/db.go b/internal/endtoend/testdata/column_as/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/column_as/sqlite/go/db.go
+++ b/internal/endtoend/testdata/column_as/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/column_as/sqlite/go/models.go b/internal/endtoend/testdata/column_as/sqlite/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/column_as/sqlite/go/models.go
+++ b/internal/endtoend/testdata/column_as/sqlite/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/column_as/sqlite/go/query.sql.go b/internal/endtoend/testdata/column_as/sqlite/go/query.sql.go
index ef0a562351..10cb4e4fb2 100644
--- a/internal/endtoend/testdata/column_as/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/column_as/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/query.sql.go
index 2a8d61efc1..a758ce3912 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/models.go
index 349f818223..444ea4ad0b 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/query.sql.go
index 1f100012a1..058336cc6d 100644
--- a/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_godoc/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/db.go
index e237c08a26..397edca7ae 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/query.sql.go
index 7f5b0fc38c..528b6b0eac 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/db.go
index 13d63f9f3f..ba7419ccd2 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/models.go
index 349f818223..444ea4ad0b 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/query.sql.go
index 44fcb544c2..76b6277525 100644
--- a/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_godoc_db_argument/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/models.go
index cc23df234c..c00a1d1ed2 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/query.sql.go
index 55c889a6df..f8c5342217 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/models.go
index cc23df234c..c00a1d1ed2 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/query.sql.go
index 55c889a6df..f8c5342217 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/models.go
index cc23df234c..c00a1d1ed2 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/query.sql.go
index 626f1ae07d..50187f6aaf 100644
--- a/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_on/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/mysql/go/db.go b/internal/endtoend/testdata/comment_syntax/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comment_syntax/mysql/go/db.go
+++ b/internal/endtoend/testdata/comment_syntax/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/mysql/go/models.go b/internal/endtoend/testdata/comment_syntax/mysql/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_syntax/mysql/go/models.go
+++ b/internal/endtoend/testdata/comment_syntax/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/mysql/go/query.sql.go b/internal/endtoend/testdata/comment_syntax/mysql/go/query.sql.go
index 0d07a5555d..261ffbb3e6 100644
--- a/internal/endtoend/testdata/comment_syntax/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_syntax/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/query.sql.go
index 3322896230..bda90e2254 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/models.go
index 349f818223..444ea4ad0b 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/query.sql.go
index a6bf4054d8..1c3b66489a 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/query.sql.go
index 799ba4be49..a6687798dc 100644
--- a/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_syntax/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/sqlite/go/db.go b/internal/endtoend/testdata/comment_syntax/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comment_syntax/sqlite/go/db.go
+++ b/internal/endtoend/testdata/comment_syntax/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/sqlite/go/models.go b/internal/endtoend/testdata/comment_syntax/sqlite/go/models.go
index e715c2a209..2a73c4d633 100644
--- a/internal/endtoend/testdata/comment_syntax/sqlite/go/models.go
+++ b/internal/endtoend/testdata/comment_syntax/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comment_syntax/sqlite/go/query.sql.go b/internal/endtoend/testdata/comment_syntax/sqlite/go/query.sql.go
index 799ba4be49..a6687798dc 100644
--- a/internal/endtoend/testdata/comment_syntax/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/comment_syntax/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comparisons/mysql/go/db.go b/internal/endtoend/testdata/comparisons/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comparisons/mysql/go/db.go
+++ b/internal/endtoend/testdata/comparisons/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comparisons/mysql/go/models.go b/internal/endtoend/testdata/comparisons/mysql/go/models.go
index 1d7edec0b9..fc79eb7922 100644
--- a/internal/endtoend/testdata/comparisons/mysql/go/models.go
+++ b/internal/endtoend/testdata/comparisons/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/comparisons/mysql/go/query.sql.go b/internal/endtoend/testdata/comparisons/mysql/go/query.sql.go
index 4a135e82f8..918d0ac501 100644
--- a/internal/endtoend/testdata/comparisons/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/comparisons/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/query.sql.go
index 498ade556a..76ac7576f4 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/query.sql.go
index 498ade556a..76ac7576f4 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/query.sql.go
index c6a24a6197..7a29b82a7e 100644
--- a/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/comparisons/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/comparisons/sqlite/go/db.go b/internal/endtoend/testdata/comparisons/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/comparisons/sqlite/go/db.go
+++ b/internal/endtoend/testdata/comparisons/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/comparisons/sqlite/go/models.go b/internal/endtoend/testdata/comparisons/sqlite/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/comparisons/sqlite/go/models.go
+++ b/internal/endtoend/testdata/comparisons/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/comparisons/sqlite/go/query.sql.go b/internal/endtoend/testdata/comparisons/sqlite/go/query.sql.go
index c6a24a6197..7a29b82a7e 100644
--- a/internal/endtoend/testdata/comparisons/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/comparisons/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v4/go/db.go b/internal/endtoend/testdata/composite_type/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v4/go/models.go b/internal/endtoend/testdata/composite_type/pgx/v4/go/models.go
index a042d8ee0c..070d007c97 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/composite_type/pgx/v4/go/query.sql.go
index b436a8ec8a..4ec76b2d99 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v5/go/db.go b/internal/endtoend/testdata/composite_type/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v5/go/models.go b/internal/endtoend/testdata/composite_type/pgx/v5/go/models.go
index a042d8ee0c..070d007c97 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/composite_type/pgx/v5/go/query.sql.go
index b436a8ec8a..4ec76b2d99 100644
--- a/internal/endtoend/testdata/composite_type/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/composite_type/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/composite_type/stdlib/go/db.go b/internal/endtoend/testdata/composite_type/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/composite_type/stdlib/go/db.go
+++ b/internal/endtoend/testdata/composite_type/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/stdlib/go/models.go b/internal/endtoend/testdata/composite_type/stdlib/go/models.go
index a042d8ee0c..070d007c97 100644
--- a/internal/endtoend/testdata/composite_type/stdlib/go/models.go
+++ b/internal/endtoend/testdata/composite_type/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/composite_type/stdlib/go/query.sql.go b/internal/endtoend/testdata/composite_type/stdlib/go/query.sql.go
index 6c81192d23..726f657adf 100644
--- a/internal/endtoend/testdata/composite_type/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/composite_type/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/db.go b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/db.go
+++ b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/models.go b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/models.go
index 9c6bcff9b7..1615dc7113 100644
--- a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/models.go
+++ b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/query.sql.go b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/query.sql.go
index ce7c234fd9..a63148bf27 100644
--- a/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/query.sql.go
+++ b/internal/endtoend/testdata/conflicted_arg_name/postgresql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/copyfrom/mysql/go/copyfrom.go b/internal/endtoend/testdata/copyfrom/mysql/go/copyfrom.go
index 5c75989261..a9740e4f57 100644
--- a/internal/endtoend/testdata/copyfrom/mysql/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom/mysql/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/mysql/go/db.go b/internal/endtoend/testdata/copyfrom/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/copyfrom/mysql/go/db.go
+++ b/internal/endtoend/testdata/copyfrom/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/mysql/go/models.go b/internal/endtoend/testdata/copyfrom/mysql/go/models.go
index 4fe9c21dee..4a304a0e34 100644
--- a/internal/endtoend/testdata/copyfrom/mysql/go/models.go
+++ b/internal/endtoend/testdata/copyfrom/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/mysql/go/query.sql.go b/internal/endtoend/testdata/copyfrom/mysql/go/query.sql.go
index a4c305c8e4..3e653d2601 100644
--- a/internal/endtoend/testdata/copyfrom/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/copyfrom.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/copyfrom.go
index 96a48e762d..ac86e21374 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/db.go
index b46816d2e2..74a5aab7c4 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/models.go
index 7b8cecbc71..a16a663b8d 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/querier.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/querier.go
index 902e1bb7f0..d598540ae5 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/query.sql.go
index 3145f4a405..ee9488277b 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/copyfrom.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/copyfrom.go
index 04176cd64a..547f6f9aee 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/db.go
index 34a07e757b..867387a8ec 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/models.go
index 8f304d8212..c360caebaf 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/querier.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/querier.go
index 80917d685a..67a4174d3c 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/query.sql.go
index e914553fb9..f0e60ef0d0 100644
--- a/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/copyfrom.go
index ce2cf12f46..bb14e74539 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/db.go
index b46816d2e2..74a5aab7c4 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/models.go
index 7b8cecbc71..a16a663b8d 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/query.sql.go
index ada775ffc7..f040340ce5 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/copyfrom.go
index ce2cf12f46..bb14e74539 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/db.go
index 34a07e757b..867387a8ec 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/models.go
index 8f304d8212..c360caebaf 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/query.sql.go
index f0eedb77ba..acf744a76d 100644
--- a/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom_imports/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/copyfrom.go
new file mode 100644
index 0000000000..158eb49726
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/copyfrom.go
@@ -0,0 +1,51 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: copyfrom.go
+
+package querytest
+
+import (
+ "context"
+ "fmt"
+ "io"
+ "sync/atomic"
+
+ "github.com/go-sql-driver/mysql"
+ "github.com/hexon/mysqltsv"
+)
+
+var readerHandlerSequenceForInsertMultipleValues uint32 = 1
+
+func convertRowsForInsertMultipleValues(w *io.PipeWriter, arg []InsertMultipleValuesParams) {
+ e := mysqltsv.NewEncoder(w, 2, nil)
+ for _, row := range arg {
+ e.AppendValue(row.A)
+ e.AppendValue(row.B)
+ }
+ w.CloseWithError(e.Close())
+}
+
+// InsertMultipleValues uses MySQL's LOAD DATA LOCAL INFILE and is not atomic.
+//
+// Errors and duplicate keys are treated as warnings and insertion will
+// continue, even without an error for some cases. Use this in a transaction
+// and use SHOW WARNINGS to check for any problems and roll back if you want to.
+//
+// Check the documentation for more information:
+// https://dev.mysql.com/doc/refman/8.0/en/load-data.html#load-data-error-handling
+func (q *Queries) InsertMultipleValues(ctx context.Context, arg []InsertMultipleValuesParams) (int64, error) {
+ pr, pw := io.Pipe()
+ defer pr.Close()
+ rh := fmt.Sprintf("InsertMultipleValues_%d", atomic.AddUint32(&readerHandlerSequenceForInsertMultipleValues, 1))
+ mysql.RegisterReaderHandler(rh, func() io.Reader { return pr })
+ defer mysql.DeregisterReaderHandler(rh)
+ go convertRowsForInsertMultipleValues(pw, arg)
+ // The string interpolation is necessary because LOAD DATA INFILE requires
+ // the file name to be given as a literal string.
+ result, err := q.db.ExecContext(ctx, fmt.Sprintf("LOAD DATA LOCAL INFILE '%s' INTO TABLE `foo` %s (a, b)", "Reader::"+rh, mysqltsv.Escaping))
+ if err != nil {
+ return 0, err
+ }
+ return result.RowsAffected()
+}
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/db.go b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/models.go b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/models.go
new file mode 100644
index 0000000000..825fc25a19
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/models.go
@@ -0,0 +1,14 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ A sql.NullString
+ B sql.NullString
+}
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/query.sql.go b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/query.sql.go
new file mode 100644
index 0000000000..711c7fbdd0
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/go/query.sql.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+const insertMultipleValues = `-- name: InsertMultipleValues :copyfrom
+INSERT INTO foo (a, b) VALUES (?, ?)
+`
+
+type InsertMultipleValuesParams struct {
+ A sql.NullString
+ B sql.NullString
+}
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/query.sql b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/query.sql
new file mode 100644
index 0000000000..18a13f88e6
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/query.sql
@@ -0,0 +1,2 @@
+-- name: InsertMultipleValues :copyfrom
+INSERT INTO foo (a, b) VALUES (?, ?);
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/schema.sql b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/schema.sql
new file mode 100644
index 0000000000..dd2f6b6b50
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/schema.sql
@@ -0,0 +1 @@
+CREATE TABLE foo (a text, b text);
diff --git a/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/sqlc.json b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/sqlc.json
new file mode 100644
index 0000000000..0990bc2fef
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_multicolumn_parameter_limit/mysql/sqlc.json
@@ -0,0 +1,15 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "sql_package": "database/sql",
+ "sql_driver": "github.com/go-sql-driver/mysql",
+ "engine": "mysql",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "query_parameter_limit": 4
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/copyfrom.go
index 6588742689..21fbafcccb 100644
--- a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/db.go b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/db.go
index 34a07e757b..867387a8ec 100644
--- a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/models.go b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/models.go
index 58a505b25e..1c78a15842 100644
--- a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type UserDatum struct {
ID string
User string
diff --git a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/query.sql.go
index f5578d9cd8..656d5e90db 100644
--- a/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom_named_params/postgresql/pgx/go/query.sql.go
@@ -1,12 +1,10 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-import ()
-
type StageUserDataParams struct {
IDParam string
UserParam string
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/copyfrom.go
index 3bd2689509..ecaf5d959e 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/db.go
index b46816d2e2..74a5aab7c4 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/models.go
index f0b69f63c6..510ddefc23 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
AuthorID int32
}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/querier.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/querier.go
index f5f6608f81..cd193590d1 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/query.sql.go
index 618ddc3a18..d86ba36318 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v4/go/query.sql.go
@@ -1,8 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/copyfrom.go
index 3bd2689509..ecaf5d959e 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/copyfrom.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/copyfrom.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom.go
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/db.go
index 34a07e757b..867387a8ec 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/models.go
index f0b69f63c6..510ddefc23 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
AuthorID int32
}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/querier.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/querier.go
index f5f6608f81..cd193590d1 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/query.sql.go
index 618ddc3a18..d86ba36318 100644
--- a/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn/postgresql/pgx/v5/go/query.sql.go
@@ -1,8 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/issue.md b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/issue.md
new file mode 100644
index 0000000000..4838ed77c2
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/issue.md
@@ -0,0 +1 @@
+https://github.com/sqlc-dev/sqlc/issues/3443
\ No newline at end of file
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/copyfrom.go b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/copyfrom.go
new file mode 100644
index 0000000000..e4cd08f962
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/copyfrom.go
@@ -0,0 +1,50 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: copyfrom.go
+
+package querytest
+
+import (
+ "context"
+ "fmt"
+ "io"
+ "sync/atomic"
+
+ "github.com/go-sql-driver/mysql"
+ "github.com/hexon/mysqltsv"
+)
+
+var readerHandlerSequenceForInsertSingleValue uint32 = 1
+
+func convertRowsForInsertSingleValue(w *io.PipeWriter, arg []InsertSingleValueParams) {
+ e := mysqltsv.NewEncoder(w, 1, nil)
+ for _, row := range arg {
+ e.AppendValue(row.A)
+ }
+ w.CloseWithError(e.Close())
+}
+
+// InsertSingleValue uses MySQL's LOAD DATA LOCAL INFILE and is not atomic.
+//
+// Errors and duplicate keys are treated as warnings and insertion will
+// continue, even without an error for some cases. Use this in a transaction
+// and use SHOW WARNINGS to check for any problems and roll back if you want to.
+//
+// Check the documentation for more information:
+// https://dev.mysql.com/doc/refman/8.0/en/load-data.html#load-data-error-handling
+func (q *Queries) InsertSingleValue(ctx context.Context, arg []InsertSingleValueParams) (int64, error) {
+ pr, pw := io.Pipe()
+ defer pr.Close()
+ rh := fmt.Sprintf("InsertSingleValue_%d", atomic.AddUint32(&readerHandlerSequenceForInsertSingleValue, 1))
+ mysql.RegisterReaderHandler(rh, func() io.Reader { return pr })
+ defer mysql.DeregisterReaderHandler(rh)
+ go convertRowsForInsertSingleValue(pw, arg)
+ // The string interpolation is necessary because LOAD DATA INFILE requires
+ // the file name to be given as a literal string.
+ result, err := q.db.ExecContext(ctx, fmt.Sprintf("LOAD DATA LOCAL INFILE '%s' INTO TABLE `foo` %s (a)", "Reader::"+rh, mysqltsv.Escaping))
+ if err != nil {
+ return 0, err
+ }
+ return result.RowsAffected()
+}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/db.go b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/models.go b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/models.go
new file mode 100644
index 0000000000..69dbf9ba40
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ A sql.NullString
+}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/query.sql.go b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/query.sql.go
new file mode 100644
index 0000000000..a71be53c0b
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/go/query.sql.go
@@ -0,0 +1,18 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+const insertSingleValue = `-- name: InsertSingleValue :copyfrom
+INSERT INTO foo (a) VALUES (?)
+`
+
+type InsertSingleValueParams struct {
+ A sql.NullString
+}
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/query.sql b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/query.sql
new file mode 100644
index 0000000000..091c90316b
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/query.sql
@@ -0,0 +1,2 @@
+-- name: InsertSingleValue :copyfrom
+INSERT INTO foo (a) VALUES (?);
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/schema.sql b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/schema.sql
new file mode 100644
index 0000000000..022bbd6f91
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/schema.sql
@@ -0,0 +1 @@
+CREATE TABLE foo (a text);
diff --git a/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/sqlc.json b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/sqlc.json
new file mode 100644
index 0000000000..4a4d43c146
--- /dev/null
+++ b/internal/endtoend/testdata/copyfrom_singlecolumn_struct_only/mysql/sqlc.json
@@ -0,0 +1,15 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "sql_package": "database/sql",
+ "sql_driver": "github.com/go-sql-driver/mysql",
+ "engine": "mysql",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "query_parameter_limit": 0
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/count_star/mysql/go/db.go b/internal/endtoend/testdata/count_star/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/count_star/mysql/go/db.go
+++ b/internal/endtoend/testdata/count_star/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/count_star/mysql/go/models.go b/internal/endtoend/testdata/count_star/mysql/go/models.go
index 1d7edec0b9..fc79eb7922 100644
--- a/internal/endtoend/testdata/count_star/mysql/go/models.go
+++ b/internal/endtoend/testdata/count_star/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/count_star/mysql/go/query.sql.go b/internal/endtoend/testdata/count_star/mysql/go/query.sql.go
index 3743af446f..03caf1aa89 100644
--- a/internal/endtoend/testdata/count_star/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/count_star/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/query.sql.go
index 236d5826a5..0f87629324 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/query.sql.go
index 236d5826a5..0f87629324 100644
--- a/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/count_star/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/query.sql.go
index 3743af446f..03caf1aa89 100644
--- a/internal/endtoend/testdata/count_star/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/count_star/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/count_star/sqlite/go/db.go b/internal/endtoend/testdata/count_star/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/count_star/sqlite/go/db.go
+++ b/internal/endtoend/testdata/count_star/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/count_star/sqlite/go/models.go b/internal/endtoend/testdata/count_star/sqlite/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/count_star/sqlite/go/models.go
+++ b/internal/endtoend/testdata/count_star/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/count_star/sqlite/go/query.sql.go b/internal/endtoend/testdata/count_star/sqlite/go/query.sql.go
index 3743af446f..03caf1aa89 100644
--- a/internal/endtoend/testdata/count_star/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/count_star/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_materialized_view/postgresql/go/db.go b/internal/endtoend/testdata/create_materialized_view/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_materialized_view/postgresql/go/db.go
+++ b/internal/endtoend/testdata/create_materialized_view/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_materialized_view/postgresql/go/models.go b/internal/endtoend/testdata/create_materialized_view/postgresql/go/models.go
index ff6335b8ec..0a7e41d539 100644
--- a/internal/endtoend/testdata/create_materialized_view/postgresql/go/models.go
+++ b/internal/endtoend/testdata/create_materialized_view/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Val string
}
diff --git a/internal/endtoend/testdata/create_materialized_view/postgresql/go/query.sql.go b/internal/endtoend/testdata/create_materialized_view/postgresql/go/query.sql.go
index 2a41e0dca8..fce6b28372 100644
--- a/internal/endtoend/testdata/create_materialized_view/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_materialized_view/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_table_as/postgresql/go/db.go b/internal/endtoend/testdata/create_table_as/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_table_as/postgresql/go/db.go
+++ b/internal/endtoend/testdata/create_table_as/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_table_as/postgresql/go/models.go b/internal/endtoend/testdata/create_table_as/postgresql/go/models.go
index b065f36942..7df3c725b1 100644
--- a/internal/endtoend/testdata/create_table_as/postgresql/go/models.go
+++ b/internal/endtoend/testdata/create_table_as/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Val string
}
diff --git a/internal/endtoend/testdata/create_table_as/postgresql/go/query.sql.go b/internal/endtoend/testdata/create_table_as/postgresql/go/query.sql.go
index 8f6cc76bdb..2f6c7ece42 100644
--- a/internal/endtoend/testdata/create_table_as/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_table_as/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/mysql/go/db.go b/internal/endtoend/testdata/create_table_like/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_table_like/mysql/go/db.go
+++ b/internal/endtoend/testdata/create_table_like/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/mysql/go/models.go b/internal/endtoend/testdata/create_table_like/mysql/go/models.go
index 312c2bd778..eef739f30f 100644
--- a/internal/endtoend/testdata/create_table_like/mysql/go/models.go
+++ b/internal/endtoend/testdata/create_table_like/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/mysql/go/query.sql.go b/internal/endtoend/testdata/create_table_like/mysql/go/query.sql.go
index 77ea36c512..7a06fb8aa6 100644
--- a/internal/endtoend/testdata/create_table_like/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_table_like/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/postgresql/go/db.go b/internal/endtoend/testdata/create_table_like/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_table_like/postgresql/go/db.go
+++ b/internal/endtoend/testdata/create_table_like/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/postgresql/go/models.go b/internal/endtoend/testdata/create_table_like/postgresql/go/models.go
index 312c2bd778..eef739f30f 100644
--- a/internal/endtoend/testdata/create_table_like/postgresql/go/models.go
+++ b/internal/endtoend/testdata/create_table_like/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_table_like/postgresql/go/query.sql.go b/internal/endtoend/testdata/create_table_like/postgresql/go/query.sql.go
index 77ea36c512..7a06fb8aa6 100644
--- a/internal/endtoend/testdata/create_table_like/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_table_like/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_view/mysql/go/db.go b/internal/endtoend/testdata/create_view/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_view/mysql/go/db.go
+++ b/internal/endtoend/testdata/create_view/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/mysql/go/models.go b/internal/endtoend/testdata/create_view/mysql/go/models.go
index f2c554e748..568db73ea9 100644
--- a/internal/endtoend/testdata/create_view/mysql/go/models.go
+++ b/internal/endtoend/testdata/create_view/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/mysql/go/query.sql.go b/internal/endtoend/testdata/create_view/mysql/go/query.sql.go
index 240128699f..476b34c387 100644
--- a/internal/endtoend/testdata/create_view/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_view/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_view/postgresql/go/db.go b/internal/endtoend/testdata/create_view/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_view/postgresql/go/db.go
+++ b/internal/endtoend/testdata/create_view/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/postgresql/go/models.go b/internal/endtoend/testdata/create_view/postgresql/go/models.go
index f2c554e748..568db73ea9 100644
--- a/internal/endtoend/testdata/create_view/postgresql/go/models.go
+++ b/internal/endtoend/testdata/create_view/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/postgresql/go/query.sql.go b/internal/endtoend/testdata/create_view/postgresql/go/query.sql.go
index 36efa36456..a9c3eaba06 100644
--- a/internal/endtoend/testdata/create_view/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/create_view/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/create_view/sqlite/go/db.go b/internal/endtoend/testdata/create_view/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/create_view/sqlite/go/db.go
+++ b/internal/endtoend/testdata/create_view/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/sqlite/go/models.go b/internal/endtoend/testdata/create_view/sqlite/go/models.go
index 6a8a2d1d05..546a62b209 100644
--- a/internal/endtoend/testdata/create_view/sqlite/go/models.go
+++ b/internal/endtoend/testdata/create_view/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/create_view/sqlite/go/query.sql.go b/internal/endtoend/testdata/create_view/sqlite/go/query.sql.go
index 1ecd707c56..b338c4a231 100644
--- a/internal/endtoend/testdata/create_view/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/create_view/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_count/mysql/go/db.go b/internal/endtoend/testdata/cte_count/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_count/mysql/go/db.go
+++ b/internal/endtoend/testdata/cte_count/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_count/mysql/go/models.go b/internal/endtoend/testdata/cte_count/mysql/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_count/mysql/go/models.go
+++ b/internal/endtoend/testdata/cte_count/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_count/mysql/go/query.sql.go b/internal/endtoend/testdata/cte_count/mysql/go/query.sql.go
index 0df0a98c58..387a9dc53e 100644
--- a/internal/endtoend/testdata/cte_count/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_count/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_count/pgx/v4/go/db.go b/internal/endtoend/testdata/cte_count/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_count/pgx/v4/go/models.go b/internal/endtoend/testdata/cte_count/pgx/v4/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_count/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cte_count/pgx/v4/go/query.sql.go
index d96c2c917c..dc38294ce4 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_count/pgx/v5/go/db.go b/internal/endtoend/testdata/cte_count/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_count/pgx/v5/go/models.go b/internal/endtoend/testdata/cte_count/pgx/v5/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_count/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cte_count/pgx/v5/go/query.sql.go
index d96c2c917c..dc38294ce4 100644
--- a/internal/endtoend/testdata/cte_count/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_count/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_count/stdlib/go/db.go b/internal/endtoend/testdata/cte_count/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_count/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cte_count/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_count/stdlib/go/models.go b/internal/endtoend/testdata/cte_count/stdlib/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_count/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cte_count/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_count/stdlib/go/query.sql.go b/internal/endtoend/testdata/cte_count/stdlib/go/query.sql.go
index 0df0a98c58..387a9dc53e 100644
--- a/internal/endtoend/testdata/cte_count/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_count/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/mysql/go/db.go b/internal/endtoend/testdata/cte_filter/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_filter/mysql/go/db.go
+++ b/internal/endtoend/testdata/cte_filter/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/mysql/go/models.go b/internal/endtoend/testdata/cte_filter/mysql/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_filter/mysql/go/models.go
+++ b/internal/endtoend/testdata/cte_filter/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_filter/mysql/go/query.sql.go b/internal/endtoend/testdata/cte_filter/mysql/go/query.sql.go
index 08f7c098ab..a527e060bd 100644
--- a/internal/endtoend/testdata/cte_filter/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_filter/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v4/go/db.go b/internal/endtoend/testdata/cte_filter/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v4/go/models.go b/internal/endtoend/testdata/cte_filter/pgx/v4/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cte_filter/pgx/v4/go/query.sql.go
index dce4f3729e..2860f595fe 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v5/go/db.go b/internal/endtoend/testdata/cte_filter/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v5/go/models.go b/internal/endtoend/testdata/cte_filter/pgx/v5/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_filter/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cte_filter/pgx/v5/go/query.sql.go
index dce4f3729e..2860f595fe 100644
--- a/internal/endtoend/testdata/cte_filter/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_filter/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/stdlib/go/db.go b/internal/endtoend/testdata/cte_filter/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_filter/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cte_filter/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_filter/stdlib/go/models.go b/internal/endtoend/testdata/cte_filter/stdlib/go/models.go
index c58f1fd733..61376081d6 100644
--- a/internal/endtoend/testdata/cte_filter/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cte_filter/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Ready bool
}
diff --git a/internal/endtoend/testdata/cte_filter/stdlib/go/query.sql.go b/internal/endtoend/testdata/cte_filter/stdlib/go/query.sql.go
index 2d86af7873..e15cee8070 100644
--- a/internal/endtoend/testdata/cte_filter/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_filter/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/mysql/go/db.go b/internal/endtoend/testdata/cte_in_delete/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_in_delete/mysql/go/db.go
+++ b/internal/endtoend/testdata/cte_in_delete/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/mysql/go/models.go b/internal/endtoend/testdata/cte_in_delete/mysql/go/models.go
index 72d1efbadd..61e553691d 100644
--- a/internal/endtoend/testdata/cte_in_delete/mysql/go/models.go
+++ b/internal/endtoend/testdata/cte_in_delete/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Ready bool
diff --git a/internal/endtoend/testdata/cte_in_delete/mysql/go/query.sql.go b/internal/endtoend/testdata/cte_in_delete/mysql/go/query.sql.go
index bb24a1f476..53517e7ee3 100644
--- a/internal/endtoend/testdata/cte_in_delete/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_in_delete/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/db.go b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/models.go b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/models.go
index 72d1efbadd..61e553691d 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Ready bool
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/query.sql.go
index c41fc787d1..6f91295ba4 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/db.go b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/models.go b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/models.go
index 72d1efbadd..61e553691d 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Ready bool
diff --git a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/query.sql.go
index c41fc787d1..6f91295ba4 100644
--- a/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_in_delete/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/stdlib/go/db.go b/internal/endtoend/testdata/cte_in_delete/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_in_delete/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cte_in_delete/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_in_delete/stdlib/go/models.go b/internal/endtoend/testdata/cte_in_delete/stdlib/go/models.go
index 72d1efbadd..61e553691d 100644
--- a/internal/endtoend/testdata/cte_in_delete/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cte_in_delete/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Ready bool
diff --git a/internal/endtoend/testdata/cte_in_delete/stdlib/go/query.sql.go b/internal/endtoend/testdata/cte_in_delete/stdlib/go/query.sql.go
index e40b35d589..41a95c71b2 100644
--- a/internal/endtoend/testdata/cte_in_delete/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_in_delete/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/query.sql.go
index 9169e1273c..a3bfe68382 100644
--- a/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_join_self/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/models.go
index a27095e178..40722f5543 100644
--- a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/query.sql.go
index bf7ef0850d..b2e3f02cd5 100644
--- a/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_left_join/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/models.go
index a27095e178..40722f5543 100644
--- a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/query.sql.go
index a58a97ebf8..91d0dcfb2f 100644
--- a/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_multiple_alias/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/models.go
index c3333ce131..53c974680f 100644
--- a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/query.sql.go
index 8a76afd1ba..3286ebd6c7 100644
--- a/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_nested_with/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/mysql/go/db.go b/internal/endtoend/testdata/cte_recursive/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_recursive/mysql/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/mysql/go/models.go b/internal/endtoend/testdata/cte_recursive/mysql/go/models.go
index 4fc6ff0805..f8b99f998a 100644
--- a/internal/endtoend/testdata/cte_recursive/mysql/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/mysql/go/query.sql.go b/internal/endtoend/testdata/cte_recursive/mysql/go/query.sql.go
index 2153c21fc3..b3426406d1 100644
--- a/internal/endtoend/testdata/cte_recursive/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/db.go b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/models.go b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/models.go
index 4fc6ff0805..f8b99f998a 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/query.sql.go
index 808ab20b64..3ac4755409 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/db.go b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/models.go b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/models.go
index 59266ff573..df1df27819 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/query.sql.go
index 64a57c9bba..c1f3bcc971 100644
--- a/internal/endtoend/testdata/cte_recursive/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/stdlib/go/db.go b/internal/endtoend/testdata/cte_recursive/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/cte_recursive/stdlib/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/stdlib/go/models.go b/internal/endtoend/testdata/cte_recursive/stdlib/go/models.go
index 4fc6ff0805..f8b99f998a 100644
--- a/internal/endtoend/testdata/cte_recursive/stdlib/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive/stdlib/go/query.sql.go b/internal/endtoend/testdata/cte_recursive/stdlib/go/query.sql.go
index 3949c2fc9f..faa6eb8131 100644
--- a/internal/endtoend/testdata/cte_recursive/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/models.go
index d12383555d..7f00553ea9 100644
--- a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/query.sql.go
index 29bbdeecc8..d0564e60bf 100644
--- a/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive_employees/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/models.go
index 76f4090cce..8c0c59ac1f 100644
--- a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/query.sql.go
index 303fdf371d..c244a0c3f4 100644
--- a/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive_star/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/models.go
index 72ad457c90..be64c0c729 100644
--- a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/query.sql.go
index 952c475f48..a238b10bc5 100644
--- a/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive_subquery/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/models.go
index 5ff037c4f3..fb4e963c89 100644
--- a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/query.sql.go
index 73d3515c19..8e381578a8 100644
--- a/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_recursive_union/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/query.sql.go
index 52a08959a3..31d148b699 100644
--- a/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_select_one/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/models.go
index cad02a0731..0c11af3b9e 100644
--- a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Attribute struct {
ID int64
Name string
diff --git a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/query.sql.go
index dd23eb27f4..0312bc70c7 100644
--- a/internal/endtoend/testdata/cte_update/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_update/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/db.go b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/models.go b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/models.go
index b3730053b5..5eb265f649 100644
--- a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/query.sql.go
index a5bd51625e..670093b4f2 100644
--- a/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_update_multiple/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/db.go b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/db.go
+++ b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/models.go b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/models.go
index 9d55a68112..4678711c2b 100644
--- a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/models.go
+++ b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/query.sql.go b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/query.sql.go
index cbc15c401e..657cd8e3c3 100644
--- a/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/query.sql.go
+++ b/internal/endtoend/testdata/cte_with_in/postgresql/pganalyze/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/mysql/db/db.go b/internal/endtoend/testdata/data_type_boolean/mysql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/data_type_boolean/mysql/db/db.go
+++ b/internal/endtoend/testdata/data_type_boolean/mysql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/data_type_boolean/mysql/db/models.go b/internal/endtoend/testdata/data_type_boolean/mysql/db/models.go
index 1268c98f3d..7fff3f7385 100644
--- a/internal/endtoend/testdata/data_type_boolean/mysql/db/models.go
+++ b/internal/endtoend/testdata/data_type_boolean/mysql/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/data_type_boolean/mysql/db/query.sql.go b/internal/endtoend/testdata/data_type_boolean/mysql/db/query.sql.go
index 6196e3b4c2..9ea1731e33 100644
--- a/internal/endtoend/testdata/data_type_boolean/mysql/db/query.sql.go
+++ b/internal/endtoend/testdata/data_type_boolean/mysql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/models.go
index 263d48be10..3349ee8857 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/query.sql.go
index d1eb43923c..21bd811aee 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/models.go
index 688b928fce..2452d64b8b 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/query.sql.go
index d1eb43923c..21bd811aee 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/models.go
index 263d48be10..3349ee8857 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/query.sql.go
index 5cdc4d5679..04507a525b 100644
--- a/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/data_type_boolean/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/data_type_boolean/sqlite/db/db.go b/internal/endtoend/testdata/data_type_boolean/sqlite/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/data_type_boolean/sqlite/db/db.go
+++ b/internal/endtoend/testdata/data_type_boolean/sqlite/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/data_type_boolean/sqlite/db/models.go b/internal/endtoend/testdata/data_type_boolean/sqlite/db/models.go
index 7d217b38d5..224640ab87 100644
--- a/internal/endtoend/testdata/data_type_boolean/sqlite/db/models.go
+++ b/internal/endtoend/testdata/data_type_boolean/sqlite/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/data_type_boolean/sqlite/db/query.sql.go b/internal/endtoend/testdata/data_type_boolean/sqlite/db/query.sql.go
index b04165d80b..c7ddbd46b9 100644
--- a/internal/endtoend/testdata/data_type_boolean/sqlite/db/query.sql.go
+++ b/internal/endtoend/testdata/data_type_boolean/sqlite/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/datatype/mysql/go/db.go b/internal/endtoend/testdata/datatype/mysql/go/db.go
index b2523a3c90..dfc3d5029a 100644
--- a/internal/endtoend/testdata/datatype/mysql/go/db.go
+++ b/internal/endtoend/testdata/datatype/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/mysql/go/models.go b/internal/endtoend/testdata/datatype/mysql/go/models.go
index 38e6974a11..e600252c18 100644
--- a/internal/endtoend/testdata/datatype/mysql/go/models.go
+++ b/internal/endtoend/testdata/datatype/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
@@ -54,8 +54,8 @@ type DtDatetimeNotNull struct {
type DtNumeric struct {
A sql.NullInt32
B sql.NullInt32
- C sql.NullInt32
- D sql.NullInt32
+ C sql.NullInt16
+ D sql.NullInt16
E sql.NullInt32
F sql.NullInt64
G interface{}
@@ -69,8 +69,8 @@ type DtNumeric struct {
type DtNumericNotNull struct {
A int32
B int32
- C int32
- D int32
+ C int8
+ D int16
E int32
F int64
G interface{}
@@ -84,8 +84,8 @@ type DtNumericNotNull struct {
type DtNumericUnsigned struct {
A sql.NullInt32
B sql.NullInt32
- C sql.NullInt32
- D sql.NullInt32
+ C sql.NullInt16
+ D sql.NullInt16
E sql.NullInt32
F sql.NullInt64
}
diff --git a/internal/endtoend/testdata/datatype/mysql/go/query.sql.go b/internal/endtoend/testdata/datatype/mysql/go/query.sql.go
new file mode 100644
index 0000000000..7420549bd6
--- /dev/null
+++ b/internal/endtoend/testdata/datatype/mysql/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/datatype/mysql/sql/query.sql b/internal/endtoend/testdata/datatype/mysql/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/datatype/mysql/sql/query.sql
+++ b/internal/endtoend/testdata/datatype/mysql/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/datatype/pgx/v4/go/db.go b/internal/endtoend/testdata/datatype/pgx/v4/go/db.go
index c7f490972c..998accfb8f 100644
--- a/internal/endtoend/testdata/datatype/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/datatype/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/pgx/v4/go/models.go b/internal/endtoend/testdata/datatype/pgx/v4/go/models.go
index 8652775505..b7295e1492 100644
--- a/internal/endtoend/testdata/datatype/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/datatype/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/datatype/pgx/v4/go/query.sql.go
new file mode 100644
index 0000000000..99edb91f8b
--- /dev/null
+++ b/internal/endtoend/testdata/datatype/pgx/v4/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/datatype/pgx/v4/sql/query.sql b/internal/endtoend/testdata/datatype/pgx/v4/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/datatype/pgx/v4/sql/query.sql
+++ b/internal/endtoend/testdata/datatype/pgx/v4/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/datatype/pgx/v5/go/db.go b/internal/endtoend/testdata/datatype/pgx/v5/go/db.go
index c5a8f914d5..814523221a 100644
--- a/internal/endtoend/testdata/datatype/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/datatype/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/pgx/v5/go/models.go b/internal/endtoend/testdata/datatype/pgx/v5/go/models.go
index 38c00bc828..059adc1c6b 100644
--- a/internal/endtoend/testdata/datatype/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/datatype/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/datatype/pgx/v5/go/query.sql.go
new file mode 100644
index 0000000000..99edb91f8b
--- /dev/null
+++ b/internal/endtoend/testdata/datatype/pgx/v5/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/datatype/pgx/v5/sql/query.sql b/internal/endtoend/testdata/datatype/pgx/v5/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/datatype/pgx/v5/sql/query.sql
+++ b/internal/endtoend/testdata/datatype/pgx/v5/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/datatype/sqlite/go/db.go b/internal/endtoend/testdata/datatype/sqlite/go/db.go
index b2523a3c90..dfc3d5029a 100644
--- a/internal/endtoend/testdata/datatype/sqlite/go/db.go
+++ b/internal/endtoend/testdata/datatype/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/sqlite/go/models.go b/internal/endtoend/testdata/datatype/sqlite/go/models.go
index e6e024121e..135196f1bf 100644
--- a/internal/endtoend/testdata/datatype/sqlite/go/models.go
+++ b/internal/endtoend/testdata/datatype/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/sqlite/go/query.sql.go b/internal/endtoend/testdata/datatype/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..c9bc454608
--- /dev/null
+++ b/internal/endtoend/testdata/datatype/sqlite/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int64
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/datatype/sqlite/sql/query.sql b/internal/endtoend/testdata/datatype/sqlite/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/datatype/sqlite/sql/query.sql
+++ b/internal/endtoend/testdata/datatype/sqlite/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/datatype/stdlib/go/db.go b/internal/endtoend/testdata/datatype/stdlib/go/db.go
index b2523a3c90..dfc3d5029a 100644
--- a/internal/endtoend/testdata/datatype/stdlib/go/db.go
+++ b/internal/endtoend/testdata/datatype/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/stdlib/go/models.go b/internal/endtoend/testdata/datatype/stdlib/go/models.go
index f1bcddae26..dcc12da4e7 100644
--- a/internal/endtoend/testdata/datatype/stdlib/go/models.go
+++ b/internal/endtoend/testdata/datatype/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/datatype/stdlib/go/query.sql.go b/internal/endtoend/testdata/datatype/stdlib/go/query.sql.go
new file mode 100644
index 0000000000..7420549bd6
--- /dev/null
+++ b/internal/endtoend/testdata/datatype/stdlib/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/datatype/stdlib/sql/query.sql b/internal/endtoend/testdata/datatype/stdlib/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/datatype/stdlib/sql/query.sql
+++ b/internal/endtoend/testdata/datatype/stdlib/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/db.go b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/models.go b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/models.go
index f69b06197c..85247f8d81 100644
--- a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/query.sql.go
index c24cc412a7..41de77d4a2 100644
--- a/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_materialized_views_set_schema/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/models.go
index 97da81f9e7..17749bd1b3 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/models.go
index ff825893ac..f50f1307b4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/models.go
index 8939789433..35a9bfa10b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/models.go
index ff825893ac..f50f1307b4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/models.go
index 64f3d94ad4..5343489f2e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/query.sql.go
index 18536c1d4b..91d985c366 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/models.go
index a7c0093b08..45cc480747 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Baz string
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/models.go
index a7c0093b08..45cc480747 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Baz string
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/models.go
index a7c0093b08..45cc480747 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Baz string
diff --git a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_add_column_if_not_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/models.go
index 288db36221..3be5c5781e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/models.go
index 50fb13bc6f..5c2ed7e9dc 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar []string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/models.go
index 50fb13bc6f..5c2ed7e9dc 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar []string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/models.go
index 50fb13bc6f..5c2ed7e9dc 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar []string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_alter_type/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/models.go
index 5b5caac74d..98263fc24e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Baz string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/models.go
index 5b5caac74d..98263fc24e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Baz string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/models.go
index 5b5caac74d..98263fc24e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Baz string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_change_column/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/models.go
index 5e694e18c6..c55e67c9b2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/models.go
index 5e694e18c6..c55e67c9b2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/models.go
index cc5c3b7e73..4f6351ec45 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/models.go
index 5e694e18c6..c55e67c9b2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_column_drop_not_null/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/models.go
index 19f643b52c..fa3527440f 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/query.sql.go
index e2c99e29e4..06a522cb68 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/exec.json b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/models.go
index e502ae9ac9..f4413eb12e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/models.go
@@ -1,10 +1,8 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/models.go
index e502ae9ac9..f4413eb12e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,10 +1,8 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/models.go
index e502ae9ac9..f4413eb12e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,10 +1,8 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/models.go
index e502ae9ac9..f4413eb12e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/models.go
@@ -1,10 +1,8 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_column_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/exec.json b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/models.go
index 802df3d3c8..8da37d326e 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Venue struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/models.go
index 3a3e60c0b8..f5747f5ec2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Venue struct {
ID int32
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/models.go
index 3a3e60c0b8..f5747f5ec2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Venue struct {
ID int32
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/models.go
index 3a3e60c0b8..f5747f5ec2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Venue struct {
ID int32
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_drop_constraint/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/models.go
index ebad35961b..8b5b1f8cb0 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/models.go
index 70ffd71b27..ac1374a391 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/models.go
index ebad35961b..8b5b1f8cb0 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_index/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/models.go
index 9aff8b5a3d..aa9b290c32 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/models.go
index a8fee2c11e..5c1153c787 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/models.go
index bcd5c41a98..d3f9ebe669 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/models.go
index a8fee2c11e..5c1153c787 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/models.go
index a8fee2c11e..5c1153c787 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/query.sql.go
index a2f215f3b9..6d21d214d4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/models.go
index 19f643b52c..fa3527440f 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/models.go
index 8008b5d52c..b31ad89375 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/db.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/models.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/models.go
index cd8d759662..0cf9b819bd 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/query.sql.go
index 4dffb2aefe..70a74c3c78 100644
--- a/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_rename_column/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/models.go
index 76f3f0df40..9965194af2 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/models.go
index 1a5056b698..60f0040f7a 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/models.go
index fcbc528181..382226b809 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/models.go
index 1a5056b698..60f0040f7a 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_data_type/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/models.go
index 6f9dbcd7cb..2e4ab15ca4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/models.go
index 6f9dbcd7cb..2e4ab15ca4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/models.go
index 6f9dbcd7cb..2e4ab15ca4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/models.go
index 6f9dbcd7cb..2e4ab15ca4 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
}
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_not_null/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/models.go
index 5e7514ecb7..4ce3e35c13 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/query.sql.go
index 768a223a1e..5590c90afb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/models.go
index 3bf865d01d..898d5cb747 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/query.sql.go
index 831aed0b80..325e20a336 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/models.go
index 5e7514ecb7..4ce3e35c13 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/query.sql.go
index 5ea3a9c1d2..b4e1f945ef 100644
--- a/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_table_set_schema/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/models.go
index 6e5c0a853d..7db2704ec6 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/models.go
index 6e5c0a853d..7db2704ec6 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/models.go
index 6e5c0a853d..7db2704ec6 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_add_value/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/query.sql.go
index a49fa64fdc..86c789bd05 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/query.sql.go
index a49fa64fdc..86c789bd05 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/query.sql.go
index c6a5cba336..a998b8b5cc 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/query.sql.go
index a49fa64fdc..86c789bd05 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/query.sql.go
index a49fa64fdc..86c789bd05 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/models.go
index fd4998118a..b8ed7d4bab 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/query.sql.go
index c6a5cba336..a998b8b5cc 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_and_update_columns/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/models.go
index 2d68de94b5..169be5ef9c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/models.go
index 2d68de94b5..169be5ef9c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/models.go
index 2d68de94b5..169be5ef9c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_rename_value/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/models.go
index 035acaebb1..afa3bd2fcb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/query.sql.go
index ea39725954..616439eef2 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/models.go
index 035acaebb1..afa3bd2fcb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/query.sql.go
index ea39725954..616439eef2 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/models.go
index 035acaebb1..afa3bd2fcb 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/query.sql.go
index e504aecc2b..1b954fd37d 100644
--- a/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_alter_type_set_schema/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/mysql/go/db.go b/internal/endtoend/testdata/ddl_comment/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_comment/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_comment/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/mysql/go/models.go b/internal/endtoend/testdata/ddl_comment/mysql/go/models.go
index fbc06b1342..dc0c1abc3c 100644
--- a/internal/endtoend/testdata/ddl_comment/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_comment/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_comment/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_comment/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_comment/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/models.go
index 84f069324a..7a9477825b 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/models.go
index 20b552bfe7..eefe7f9f20 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/models.go
index 84f069324a..7a9477825b 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_comment/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/mysql/go/db.go b/internal/endtoend/testdata/ddl_create_enum/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_enum/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_enum/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/mysql/go/models.go b/internal/endtoend/testdata/ddl_create_enum/mysql/go/models.go
index 7e95af1528..9b6f6f1956 100644
--- a/internal/endtoend/testdata/ddl_create_enum/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_enum/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_create_enum/mysql/go/query.sql.go
index 8881a1f4e2..6b194c12cd 100644
--- a/internal/endtoend/testdata/ddl_create_enum/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_enum/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/models.go
index 7f54babe7d..22a3e89f5f 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/query.sql.go
index adefa7bd41..43332b4941 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/models.go
index 7f54babe7d..22a3e89f5f 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/query.sql.go
index adefa7bd41..43332b4941 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/models.go
index 7f54babe7d..22a3e89f5f 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/query.sql.go
index 1e09c600f0..6a52cff620 100644
--- a/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_enum/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_func_exists/exec.json b/internal/endtoend/testdata/ddl_create_func_exists/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_create_func_exists/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_args/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_return/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_function_types/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/db.go b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/models.go b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/models.go
index be1656c13b..9cb2016e9a 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/query.sql.go
index e9b9879417..592a81c529 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/models.go
index be1656c13b..9cb2016e9a 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/query.sql.go
index 71371746f5..a36d2a2272 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/models.go
index 79409f80a6..a019c9ea5b 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/query.sql.go
index 71371746f5..a36d2a2272 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/models.go
index be1656c13b..9cb2016e9a 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/query.sql.go
index 9e7e43b356..c33943f9f9 100644
--- a/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_procedure/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/mysql/go/db.go b/internal/endtoend/testdata/ddl_create_table/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/mysql/go/models.go b/internal/endtoend/testdata/ddl_create_table/mysql/go/models.go
index 2c78aa3aa9..532e8364ac 100644
--- a/internal/endtoend/testdata/ddl_create_table/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/models.go
index 2c78aa3aa9..532e8364ac 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/models.go
index d24ef2cc52..f5ab8b72d7 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/models.go
index 2c78aa3aa9..532e8364ac 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/sqlite/go/db.go b/internal/endtoend/testdata/ddl_create_table/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/sqlite/go/models.go b/internal/endtoend/testdata/ddl_create_table/sqlite/go/models.go
index 2c78aa3aa9..532e8364ac 100644
--- a/internal/endtoend/testdata/ddl_create_table/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/models.go
index b8dc87c314..e4c52c7871 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/models.go
index 1731e806af..6f5e1d2f5a 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/models.go
index b8dc87c314..e4c52c7871 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_include/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/models.go
index 881be3bce7..6c580ffd7a 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/query.sql.go
index 2dc254ff5f..215ee8c4b2 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/models.go
index ee3d11143e..43249fd461 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/query.sql.go
index 2dc254ff5f..215ee8c4b2 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/models.go
index 881be3bce7..6c580ffd7a 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/query.sql.go
index 01443d078e..f0df3d6157 100644
--- a/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_invalid_inherits/postgresql/stdlib/exec.json b/internal/endtoend/testdata/ddl_create_table_invalid_inherits/postgresql/stdlib/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_create_table_invalid_inherits/postgresql/stdlib/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/db.go b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/models.go b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/models.go
index 702ef8b736..84286acfdb 100644
--- a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Change struct {
Ranked int32
}
diff --git a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/query.sql.go
index f4414d8345..f8fea429b8 100644
--- a/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_like/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/models.go
index 2b7a9b388c..a5847be49a 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/models.go
index f652c8c6ef..61d119b3fc 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/models.go
index 2b7a9b388c..a5847be49a 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_partition/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/db.go b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/models.go b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/models.go
index 0e02f22261..0208144f1e 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/models.go
index 0e02f22261..0208144f1e 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/models.go
index e0abd597ac..7fbb04dae7 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/models.go
index 0e02f22261..0208144f1e 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_reserved/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/db.go b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/models.go b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/models.go
index 2c78aa3aa9..532e8364ac 100644
--- a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_strict/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_unknown_type/postgresql/pgx/exec.json b/internal/endtoend/testdata/ddl_create_table_unknown_type/postgresql/pgx/exec.json
index ee1b7ecd9e..abd3ab549c 100644
--- a/internal/endtoend/testdata/ddl_create_table_unknown_type/postgresql/pgx/exec.json
+++ b/internal/endtoend/testdata/ddl_create_table_unknown_type/postgresql/pgx/exec.json
@@ -1,3 +1,6 @@
{
- "contexts": ["managed-db"]
+ "contexts": ["unknown"],
+ "meta": {
+ "invalid_schema": true
+ }
}
diff --git a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/db.go b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/models.go b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/models.go
index 793b5ed5a2..52d4f06f74 100644
--- a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_table_without_rowid/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/models.go
index 37a64f14cb..0358ffbfd0 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/models.go
index 5f9cefae2b..64193da248 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/models.go
index 37a64f14cb..0358ffbfd0 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/db.go b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/models.go b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/models.go
index eca4e28c67..c22041ba29 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_create_trigger/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_args/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_function_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/mysql/exec.json b/internal/endtoend/testdata/ddl_drop_schema/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_drop_schema/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/db.go b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/models.go b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_schema_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/db.go b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/models.go b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_table/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/db.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/models.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_if_exists/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_table_in_schema/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_if_exists/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_drop_type_in_schema/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/models.go
index 91285d51de..7de432316d 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/models.go
index 83919139c0..5e8c1ae352 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/models.go
index 91285d51de..7de432316d 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_generated_columns/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/models.go
index 3c79c4bf94..a6b33bbd88 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/models.go
index 775efc888e..892325d145 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/query.sql.go
index c9c128f217..cdf14677d9 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/models.go
index 3c79c4bf94..a6b33bbd88 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/query.sql.go
index b7c0898b9a..079840519b 100644
--- a/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/ddl_pg_temp/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/issue.md b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/issue.md
new file mode 100644
index 0000000000..6b8f89e934
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/issue.md
@@ -0,0 +1 @@
+https://github.com/sqlc-dev/sqlc/issues/3371
\ No newline at end of file
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/exec.json b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/exec.json
new file mode 100644
index 0000000000..ee1b7ecd9e
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/exec.json
@@ -0,0 +1,3 @@
+{
+ "contexts": ["managed-db"]
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/db.go
new file mode 100644
index 0000000000..635cce3c5d
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/db.go
@@ -0,0 +1,32 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+
+ "github.com/jackc/pgconn"
+ "github.com/jackc/pgx/v4"
+)
+
+type DBTX interface {
+ Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
+ Query(context.Context, string, ...interface{}) (pgx.Rows, error)
+ QueryRow(context.Context, string, ...interface{}) pgx.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx pgx.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/models.go
new file mode 100644
index 0000000000..e644702127
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/models.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
+
+type AuthorsMv struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/query.sql.go
new file mode 100644
index 0000000000..14fb04e7b6
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/go/query.sql.go
@@ -0,0 +1,22 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const getAuthorMv = `-- name: GetAuthorMv :one
+SELECT id, name, bio FROM authors_mv
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthorMv(ctx context.Context, id int64) (AuthorsMv, error) {
+ row := q.db.QueryRow(ctx, getAuthorMv, id)
+ var i AuthorsMv
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ return i, err
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/query.sql b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/query.sql
new file mode 100644
index 0000000000..752a6f4d47
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/query.sql
@@ -0,0 +1,3 @@
+-- name: GetAuthorMv :one
+SELECT * FROM authors_mv
+WHERE id = $1 LIMIT 1;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/schema.sql b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/schema.sql
new file mode 100644
index 0000000000..3f88871f93
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/schema.sql
@@ -0,0 +1,18 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
+
+CREATE MATERIALIZED VIEW authors_mv AS (
+ SELECT * FROM authors
+);
+
+CREATE MATERIALIZED VIEW authors_mv_new AS (
+ SELECT * FROM authors
+);
+
+ALTER MATERIALIZED VIEW authors_mv RENAME TO authors_mv_old;
+ALTER MATERIALIZED VIEW authors_mv_new RENAME TO authors_mv;
+
+DROP MATERIALIZED VIEW authors_mv_old;
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/sqlc.yaml b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/sqlc.yaml
new file mode 100644
index 0000000000..3440c3f119
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v4/sqlc.yaml
@@ -0,0 +1,10 @@
+version: "2"
+sql:
+ - engine: "postgresql"
+ schema: "schema.sql"
+ queries: "query.sql"
+ gen:
+ go:
+ package: "querytest"
+ out: "go"
+ sql_package: "pgx/v4"
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/exec.json b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/exec.json
new file mode 100644
index 0000000000..ee1b7ecd9e
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/exec.json
@@ -0,0 +1,3 @@
+{
+ "contexts": ["managed-db"]
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/db.go
new file mode 100644
index 0000000000..e83d6a948c
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/db.go
@@ -0,0 +1,32 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgconn"
+)
+
+type DBTX interface {
+ Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
+ Query(context.Context, string, ...interface{}) (pgx.Rows, error)
+ QueryRow(context.Context, string, ...interface{}) pgx.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx pgx.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/models.go
new file mode 100644
index 0000000000..9692a94f58
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/models.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "github.com/jackc/pgx/v5/pgtype"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio pgtype.Text
+}
+
+type AuthorsMv struct {
+ ID int64
+ Name string
+ Bio pgtype.Text
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/query.sql.go
new file mode 100644
index 0000000000..14fb04e7b6
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/go/query.sql.go
@@ -0,0 +1,22 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const getAuthorMv = `-- name: GetAuthorMv :one
+SELECT id, name, bio FROM authors_mv
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthorMv(ctx context.Context, id int64) (AuthorsMv, error) {
+ row := q.db.QueryRow(ctx, getAuthorMv, id)
+ var i AuthorsMv
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ return i, err
+}
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/query.sql b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/query.sql
new file mode 100644
index 0000000000..752a6f4d47
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/query.sql
@@ -0,0 +1,3 @@
+-- name: GetAuthorMv :one
+SELECT * FROM authors_mv
+WHERE id = $1 LIMIT 1;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/schema.sql b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/schema.sql
new file mode 100644
index 0000000000..3f88871f93
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/schema.sql
@@ -0,0 +1,18 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
+
+CREATE MATERIALIZED VIEW authors_mv AS (
+ SELECT * FROM authors
+);
+
+CREATE MATERIALIZED VIEW authors_mv_new AS (
+ SELECT * FROM authors
+);
+
+ALTER MATERIALIZED VIEW authors_mv RENAME TO authors_mv_old;
+ALTER MATERIALIZED VIEW authors_mv_new RENAME TO authors_mv;
+
+DROP MATERIALIZED VIEW authors_mv_old;
diff --git a/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/sqlc.yaml b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/sqlc.yaml
new file mode 100644
index 0000000000..5dc63e3f91
--- /dev/null
+++ b/internal/endtoend/testdata/ddl_rename_drop_materialized_views/postgresql/pgx/v5/sqlc.yaml
@@ -0,0 +1,10 @@
+version: "2"
+sql:
+ - engine: "postgresql"
+ schema: "schema.sql"
+ queries: "query.sql"
+ gen:
+ go:
+ package: "querytest"
+ out: "go"
+ sql_package: "pgx/v5"
diff --git a/internal/endtoend/testdata/delete_from/mysql/go/db.go b/internal/endtoend/testdata/delete_from/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/delete_from/mysql/go/db.go
+++ b/internal/endtoend/testdata/delete_from/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_from/mysql/go/models.go b/internal/endtoend/testdata/delete_from/mysql/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/delete_from/mysql/go/models.go
+++ b/internal/endtoend/testdata/delete_from/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/delete_from/mysql/go/query.sql.go b/internal/endtoend/testdata/delete_from/mysql/go/query.sql.go
index c3f914a142..e6e7dd42fa 100644
--- a/internal/endtoend/testdata/delete_from/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_from/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/query.sql.go
index fe23639d46..e074a89177 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/query.sql.go
index fe23639d46..e074a89177 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/query.sql.go
index 4b1dea16a6..d0d5339d75 100644
--- a/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_from/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_from/sqlite/go/db.go b/internal/endtoend/testdata/delete_from/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/delete_from/sqlite/go/db.go
+++ b/internal/endtoend/testdata/delete_from/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_from/sqlite/go/models.go b/internal/endtoend/testdata/delete_from/sqlite/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/delete_from/sqlite/go/models.go
+++ b/internal/endtoend/testdata/delete_from/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/delete_from/sqlite/go/query.sql.go b/internal/endtoend/testdata/delete_from/sqlite/go/query.sql.go
index c3f914a142..e6e7dd42fa 100644
--- a/internal/endtoend/testdata/delete_from/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_from/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_inner_join/mysql/go/db.go b/internal/endtoend/testdata/delete_inner_join/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/delete_inner_join/mysql/go/db.go
+++ b/internal/endtoend/testdata/delete_inner_join/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_inner_join/mysql/go/models.go b/internal/endtoend/testdata/delete_inner_join/mysql/go/models.go
index b6069dd2e6..7609fc8f4c 100644
--- a/internal/endtoend/testdata/delete_inner_join/mysql/go/models.go
+++ b/internal/endtoend/testdata/delete_inner_join/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
ID uint32
Name string
diff --git a/internal/endtoend/testdata/delete_inner_join/mysql/go/query.sql.go b/internal/endtoend/testdata/delete_inner_join/mysql/go/query.sql.go
index b83752926a..68b1206923 100644
--- a/internal/endtoend/testdata/delete_inner_join/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_inner_join/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/delete_join/mysql/db/db.go b/internal/endtoend/testdata/delete_join/mysql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/delete_join/mysql/db/db.go
+++ b/internal/endtoend/testdata/delete_join/mysql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/delete_join/mysql/db/models.go b/internal/endtoend/testdata/delete_join/mysql/db/models.go
index 943c24575d..64fda3c52f 100644
--- a/internal/endtoend/testdata/delete_join/mysql/db/models.go
+++ b/internal/endtoend/testdata/delete_join/mysql/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type JoinTable struct {
ID uint64
PrimaryTableID uint64
diff --git a/internal/endtoend/testdata/delete_join/mysql/db/query.sql.go b/internal/endtoend/testdata/delete_join/mysql/db/query.sql.go
index 190602749d..b333a344e1 100644
--- a/internal/endtoend/testdata/delete_join/mysql/db/query.sql.go
+++ b/internal/endtoend/testdata/delete_join/mysql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/db.go b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/models.go b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/models.go
index 0e2379461a..95fdefbfb8 100644
--- a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/query.sql.go
index fb3ba37393..1ab8a44baa 100644
--- a/internal/endtoend/testdata/delete_using/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/delete_using/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/diff_no_output/go/db.go b/internal/endtoend/testdata/diff_no_output/go/db.go
index 8f594a8b21..e2b0a86b13 100644
--- a/internal/endtoend/testdata/diff_no_output/go/db.go
+++ b/internal/endtoend/testdata/diff_no_output/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/diff_no_output/go/models.go b/internal/endtoend/testdata/diff_no_output/go/models.go
index 0923e77aa6..fc0a058af4 100644
--- a/internal/endtoend/testdata/diff_no_output/go/models.go
+++ b/internal/endtoend/testdata/diff_no_output/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/diff_no_output/go/query.sql.go b/internal/endtoend/testdata/diff_no_output/go/query.sql.go
index 557c515034..2111941fc0 100644
--- a/internal/endtoend/testdata/diff_no_output/go/query.sql.go
+++ b/internal/endtoend/testdata/diff_no_output/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/internal/endtoend/testdata/diff_output/go/db.go b/internal/endtoend/testdata/diff_output/go/db.go
index 8f594a8b21..e2b0a86b13 100644
--- a/internal/endtoend/testdata/diff_output/go/db.go
+++ b/internal/endtoend/testdata/diff_output/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/diff_output/go/models.go b/internal/endtoend/testdata/diff_output/go/models.go
index 2913c34951..c665426db7 100644
--- a/internal/endtoend/testdata/diff_output/go/models.go
+++ b/internal/endtoend/testdata/diff_output/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package authors
diff --git a/internal/endtoend/testdata/diff_output/go/query.sql.go b/internal/endtoend/testdata/diff_output/go/query.sql.go
index 62ffafef23..18fbd87b65 100644
--- a/internal/endtoend/testdata/diff_output/go/query.sql.go
+++ b/internal/endtoend/testdata/diff_output/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package authors
diff --git a/internal/endtoend/testdata/do/postgresql/pgx/db/db.go b/internal/endtoend/testdata/do/postgresql/pgx/db/db.go
index 931141a6ff..0e4c3f4a0b 100644
--- a/internal/endtoend/testdata/do/postgresql/pgx/db/db.go
+++ b/internal/endtoend/testdata/do/postgresql/pgx/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/do/postgresql/pgx/db/models.go b/internal/endtoend/testdata/do/postgresql/pgx/db/models.go
index b55eb271bf..f111047f1c 100644
--- a/internal/endtoend/testdata/do/postgresql/pgx/db/models.go
+++ b/internal/endtoend/testdata/do/postgresql/pgx/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/do/postgresql/pgx/db/query.sql.go b/internal/endtoend/testdata/do/postgresql/pgx/db/query.sql.go
index 297e389676..794b2b4304 100644
--- a/internal/endtoend/testdata/do/postgresql/pgx/db/query.sql.go
+++ b/internal/endtoend/testdata/do/postgresql/pgx/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/do/postgresql/pq/db/db.go b/internal/endtoend/testdata/do/postgresql/pq/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/do/postgresql/pq/db/db.go
+++ b/internal/endtoend/testdata/do/postgresql/pq/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/do/postgresql/pq/db/models.go b/internal/endtoend/testdata/do/postgresql/pq/db/models.go
index 95168df5de..601f8ed004 100644
--- a/internal/endtoend/testdata/do/postgresql/pq/db/models.go
+++ b/internal/endtoend/testdata/do/postgresql/pq/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/do/postgresql/pq/db/query.sql.go b/internal/endtoend/testdata/do/postgresql/pq/db/query.sql.go
index c600548ec5..b8eae039f7 100644
--- a/internal/endtoend/testdata/do/postgresql/pq/db/query.sql.go
+++ b/internal/endtoend/testdata/do/postgresql/pq/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/db.go b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/db.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/models.go b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/models.go
index 602cca9fb2..af96ab9c8b 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/models.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/query.sql.go b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/models.go
index 602cca9fb2..af96ab9c8b 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/query.sql.go
index 98d8799fe8..70b6676e67 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/models.go
index 200861f169..ab7790be81 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/query.sql.go
index 98d8799fe8..70b6676e67 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/models.go
index 602cca9fb2..af96ab9c8b 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/db.go b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/db.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/models.go b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/models.go
index 3ec7e7fb28..3508464217 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/models.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/query.sql.go b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_and_json_tags/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/mysql/go/db.go b/internal/endtoend/testdata/emit_db_tags/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_tags/mysql/go/db.go
+++ b/internal/endtoend/testdata/emit_db_tags/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/mysql/go/models.go b/internal/endtoend/testdata/emit_db_tags/mysql/go/models.go
index a479884430..e2d7e919c9 100644
--- a/internal/endtoend/testdata/emit_db_tags/mysql/go/models.go
+++ b/internal/endtoend/testdata/emit_db_tags/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/mysql/go/query.sql.go b/internal/endtoend/testdata/emit_db_tags/mysql/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_tags/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_tags/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/models.go
index a479884430..e2d7e919c9 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/query.sql.go
index 98d8799fe8..70b6676e67 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/models.go
index f41504cf03..a3ad626c37 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/query.sql.go
index 98d8799fe8..70b6676e67 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/models.go
index a479884430..e2d7e919c9 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_tags/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/sqlite/go/db.go b/internal/endtoend/testdata/emit_db_tags/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_db_tags/sqlite/go/db.go
+++ b/internal/endtoend/testdata/emit_db_tags/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/sqlite/go/models.go b/internal/endtoend/testdata/emit_db_tags/sqlite/go/models.go
index 5adafe753b..ce92965644 100644
--- a/internal/endtoend/testdata/emit_db_tags/sqlite/go/models.go
+++ b/internal/endtoend/testdata/emit_db_tags/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_db_tags/sqlite/go/query.sql.go b/internal/endtoend/testdata/emit_db_tags/sqlite/go/query.sql.go
index 72dfd2d2c0..eb98a2bb58 100644
--- a/internal/endtoend/testdata/emit_db_tags/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_db_tags/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/query.sql.go
index dbc1a5339f..84da13feea 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/query.sql.go
index dbc1a5339f..84da13feea 100644
--- a/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_empty_slices/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/db.go b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/models.go b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/query.sql.go
index 176e217893..e969df4c58 100644
--- a/internal/endtoend/testdata/emit_empty_slices/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_empty_slices/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_enum_valid_and_values/go/db.go b/internal/endtoend/testdata/emit_enum_valid_and_values/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/emit_enum_valid_and_values/go/db.go
+++ b/internal/endtoend/testdata/emit_enum_valid_and_values/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_enum_valid_and_values/go/models.go b/internal/endtoend/testdata/emit_enum_valid_and_values/go/models.go
index d70b9adf7e..1ee56beb47 100644
--- a/internal/endtoend/testdata/emit_enum_valid_and_values/go/models.go
+++ b/internal/endtoend/testdata/emit_enum_valid_and_values/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_enum_valid_and_values/go/query.sql.go b/internal/endtoend/testdata/emit_enum_valid_and_values/go/query.sql.go
index 625a837399..2ebdf5dc20 100644
--- a/internal/endtoend/testdata/emit_enum_valid_and_values/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_enum_valid_and_values/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/query.sql.go
index e30fb35889..8cd1063e71 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/query.sql.go
index e30fb35889..8cd1063e71 100644
--- a/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_exported_queries/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/db.go b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/models.go b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/query.sql.go
index 426f09e44c..98a7fde0d3 100644
--- a/internal/endtoend/testdata/emit_exported_queries/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_exported_queries/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/db.go b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/db.go
index a5788806af..de7302452d 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/db.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/models.go b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/models.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/query.sql.go b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/query.sql.go
index 9e57c2e38e..332a25fc83 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/db.go
index e237c08a26..397edca7ae 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/query.sql.go
index d0aca722f1..9fee02a310 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/db.go
index 13d63f9f3f..ba7419ccd2 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/models.go
index 64c7220ac0..d41e7ef9af 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/query.sql.go
index d0aca722f1..9fee02a310 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/db.go
index a5788806af..de7302452d 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/query.sql.go
index 9e57c2e38e..332a25fc83 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/db.go b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/db.go
index a5788806af..de7302452d 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/db.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/models.go b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/models.go
index 7e8e0b5b34..dc6b7b6676 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/models.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/query.sql.go b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/query.sql.go
index 9e57c2e38e..332a25fc83 100644
--- a/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_methods_with_db_argument/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/db.go
index c7f490972c..998accfb8f 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/models.go
index 4dccbe37eb..cb85a42e28 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/query.sql.go
new file mode 100644
index 0000000000..99edb91f8b
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/sql/query.sql b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/sql/query.sql
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v4/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/db.go
index c5a8f914d5..814523221a 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/models.go
index beb169dbe9..272e5ea183 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/query.sql.go
new file mode 100644
index 0000000000..99edb91f8b
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/sql/query.sql b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/sql/query.sql
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/pgx/v5/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/db.go b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/db.go
new file mode 100644
index 0000000000..dfc3d5029a
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package datatype
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/models.go b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/models.go
new file mode 100644
index 0000000000..3cf54692e1
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/models.go
@@ -0,0 +1,27 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package datatype
+
+import (
+ "time"
+)
+
+type DtType struct {
+ A *int64
+ B *float64
+ C *bool
+ D *time.Time
+ E *string
+ F *float64
+}
+
+type DtTypesNotNull struct {
+ A int64
+ B float64
+ C bool
+ D time.Time
+ E string
+ F float64
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/query.sql.go b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..f532acbedc
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const noop = `-- name: Noop :one
+SELECT 1
+`
+
+func (q *Queries) Noop(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, noop)
+ var column_1 int64
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/query.sql b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/query.sql
new file mode 100644
index 0000000000..d32220c3d5
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/query.sql
@@ -0,0 +1,2 @@
+-- name: Noop :one
+SELECT 1;
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/types.sql b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/types.sql
new file mode 100644
index 0000000000..eb55c80eda
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sql/types.sql
@@ -0,0 +1,18 @@
+
+CREATE TABLE dt_types (
+ a int,
+ b real,
+ c bool,
+ d date,
+ e text,
+ f numeric
+);
+
+CREATE TABLE dt_types_not_null (
+ a int NOT NULL,
+ b real NOT NULL,
+ c bool NOT NULL,
+ d date NOT NULL,
+ e text NOT NULL,
+ f numeric NOT NULL
+);
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sqlc.json b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sqlc.json
new file mode 100644
index 0000000000..9b8d7693bc
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/sqlite/sqlc.json
@@ -0,0 +1,13 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "engine": "sqlite",
+ "name": "datatype",
+ "schema": "sql/types.sql",
+ "queries": "sql/query.sql",
+ "emit_pointers_for_null_types": true
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/db.go b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/db.go
index b2523a3c90..dfc3d5029a 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/db.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/models.go b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/models.go
index f1bcddae26..dcc12da4e7 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/models.go
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/query.sql.go
new file mode 100644
index 0000000000..7420549bd6
--- /dev/null
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package datatype
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/sql/query.sql b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/sql/query.sql
+++ b/internal/endtoend/testdata/emit_pointers_for_null_types/stdlib/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/db.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/db.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/models.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/models.go
index c7a34c872f..b16389094c 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/models.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/querier.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/querier.go
index db55083e18..eb6e21f80a 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/querier.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/query.sql.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/query.sql.go
index 6da7abc17f..a4bc6fc8c6 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/batch.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/batch.go
index 44d51a6fe1..592a2c868a 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/batch.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/db.go
index b01fd0785f..400a67a359 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/models.go
index c7a34c872f..b16389094c 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/query.sql.go
index 6698db2437..6cb4788a2d 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/batch.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/batch.go
index b3d52ea96b..46725b2657 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/batch.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/batch.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch.go
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/db.go
index 3410ec9d37..e7a9ed88fd 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/models.go
index f418626819..70d50483cb 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/query.sql.go
index e7f074f304..ae682c3831 100644
--- a/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/emit_result_and_params_struct_pointers/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/exec.json b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/exec.json
new file mode 100644
index 0000000000..9f208fb2df
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/exec.json
@@ -0,0 +1,3 @@
+{
+ "os": ["darwin", "linux"]
+}
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/db.go b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/models.go b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/models.go
new file mode 100644
index 0000000000..bfa4198e3f
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/models.go
@@ -0,0 +1,9 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type Bar struct {
+ ID int32
+}
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/query.sql.go b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/query.sql.go
new file mode 100644
index 0000000000..a3ce5253aa
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/go/query.sql.go
@@ -0,0 +1,56 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const listBar = `-- name: ListBar :many
+SELECT id FROM (
+ SELECT id FROM bar
+) bar
+`
+
+// Lists all bars
+//
+// SELECT id FROM (
+// SELECT id FROM bar
+// ) bar
+func (q *Queries) ListBar(ctx context.Context) ([]int32, error) {
+ rows, err := q.db.QueryContext(ctx, listBar)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []int32
+ for rows.Next() {
+ var id int32
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
+const removeBar = `-- name: RemoveBar :exec
+DELETE FROM bar WHERE id = $1
+`
+
+// RemoveBar
+//
+// DELETE FROM bar WHERE id = $1
+func (q *Queries) RemoveBar(ctx context.Context, id int32) error {
+ _, err := q.db.ExecContext(ctx, removeBar, id)
+ return err
+}
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/query.sql b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/query.sql
new file mode 100644
index 0000000000..e3551898fb
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/query.sql
@@ -0,0 +1,8 @@
+-- name: ListBar :many
+-- Lists all bars
+SELECT id FROM (
+ SELECT * FROM bar
+) bar;
+
+-- name: RemoveBar :exec
+DELETE FROM bar WHERE id = $1;
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/schema.sql b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/schema.sql
new file mode 100644
index 0000000000..682614c578
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/schema.sql
@@ -0,0 +1 @@
+CREATE TABLE bar (id serial not null);
diff --git a/internal/endtoend/testdata/emit_sql_as_comment/stdlib/sqlc.json b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/sqlc.json
new file mode 100644
index 0000000000..9464b72b2e
--- /dev/null
+++ b/internal/endtoend/testdata/emit_sql_as_comment/stdlib/sqlc.json
@@ -0,0 +1,12 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "emit_sql_as_comment": true
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/enum/mysql/go/db.go b/internal/endtoend/testdata/enum/mysql/go/db.go
index a5788806af..de7302452d 100644
--- a/internal/endtoend/testdata/enum/mysql/go/db.go
+++ b/internal/endtoend/testdata/enum/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/mysql/go/models.go b/internal/endtoend/testdata/enum/mysql/go/models.go
index 8d6a544a5f..241ce68770 100644
--- a/internal/endtoend/testdata/enum/mysql/go/models.go
+++ b/internal/endtoend/testdata/enum/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/mysql/go/query.sql.go b/internal/endtoend/testdata/enum/mysql/go/query.sql.go
index 66621a8ebf..bdec28e0cf 100644
--- a/internal/endtoend/testdata/enum/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/enum/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/db.go
index e237c08a26..397edca7ae 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/models.go
index 6ea844e84f..6fa82ed2de 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/query.sql.go
index 11718b3ae9..6c733a283d 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/db.go
index 13d63f9f3f..ba7419ccd2 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/models.go
index c64d8c6285..3ce70888ec 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/query.sql.go
index dfbe33acf0..d9c59cea9c 100644
--- a/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/enum/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/enum/postgresql/stdlib/go/db.go
index a5788806af..de7302452d 100644
--- a/internal/endtoend/testdata/enum/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/enum/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/enum/postgresql/stdlib/go/models.go
index 6ea844e84f..6fa82ed2de 100644
--- a/internal/endtoend/testdata/enum/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/enum/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/enum/postgresql/stdlib/go/query.sql.go
index ba64941855..8f65d12da0 100644
--- a/internal/endtoend/testdata/enum/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/enum/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/enum_column/mysql/go/db.go b/internal/endtoend/testdata/enum_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/enum_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/enum_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum_column/mysql/go/models.go b/internal/endtoend/testdata/enum_column/mysql/go/models.go
index 336a7cbbfd..bb989d9179 100644
--- a/internal/endtoend/testdata/enum_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/enum_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/enum_column/mysql/go/query.sql.go b/internal/endtoend/testdata/enum_column/mysql/go/query.sql.go
index 0875c0f999..1a3386f1d7 100644
--- a/internal/endtoend/testdata/enum_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/enum_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/models.go
index 55029fcf41..eb2320bb75 100644
--- a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/querier.go b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/querier.go
index 8bc8494c7a..c70b3f438a 100644
--- a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/querier.go
+++ b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/query.sql.go
index e9b0fc0989..4ba8e01a93 100644
--- a/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/enum_ordering/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/db/db.go b/internal/endtoend/testdata/exec_create_table/mysql/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/mysql/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/db/models.go b/internal/endtoend/testdata/exec_create_table/mysql/db/models.go
new file mode 100644
index 0000000000..a0871d3f1b
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/mysql/db/models.go
@@ -0,0 +1,5 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/db/mysql.query.sql.go b/internal/endtoend/testdata/exec_create_table/mysql/db/mysql.query.sql.go
new file mode 100644
index 0000000000..9eba173a19
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/mysql/db/mysql.query.sql.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: mysql.query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const createTable = `-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL)
+`
+
+func (q *Queries) CreateTable(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, createTable)
+ return err
+}
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/mysql.query.sql b/internal/endtoend/testdata/exec_create_table/mysql/mysql.query.sql
new file mode 100644
index 0000000000..0a92ebb9cb
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/mysql/mysql.query.sql
@@ -0,0 +1,2 @@
+-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL);
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/mysql.schema.sql b/internal/endtoend/testdata/exec_create_table/mysql/mysql.schema.sql
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/internal/endtoend/testdata/exec_create_table/mysql/sqlc.yaml b/internal/endtoend/testdata/exec_create_table/mysql/sqlc.yaml
new file mode 100644
index 0000000000..bd888aabfc
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/mysql/sqlc.yaml
@@ -0,0 +1,8 @@
+version: 2
+sql:
+- queries: mysql.query.sql
+ schema: mysql.schema.sql
+ engine: mysql
+ gen:
+ go:
+ out: db
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/db/db.go b/internal/endtoend/testdata/exec_create_table/postgresql/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/postgresql/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/db/models.go b/internal/endtoend/testdata/exec_create_table/postgresql/db/models.go
new file mode 100644
index 0000000000..a0871d3f1b
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/postgresql/db/models.go
@@ -0,0 +1,5 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/db/postgresql.query.sql.go b/internal/endtoend/testdata/exec_create_table/postgresql/db/postgresql.query.sql.go
new file mode 100644
index 0000000000..7c6f474744
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/postgresql/db/postgresql.query.sql.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: postgresql.query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const createTable = `-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL)
+`
+
+func (q *Queries) CreateTable(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, createTable)
+ return err
+}
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/postgresql.query.sql b/internal/endtoend/testdata/exec_create_table/postgresql/postgresql.query.sql
new file mode 100644
index 0000000000..0a92ebb9cb
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/postgresql/postgresql.query.sql
@@ -0,0 +1,2 @@
+-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL);
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/postgresql.schema.sql b/internal/endtoend/testdata/exec_create_table/postgresql/postgresql.schema.sql
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/internal/endtoend/testdata/exec_create_table/postgresql/sqlc.yaml b/internal/endtoend/testdata/exec_create_table/postgresql/sqlc.yaml
new file mode 100644
index 0000000000..6a89eb2179
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/postgresql/sqlc.yaml
@@ -0,0 +1,9 @@
+version: 2
+sql:
+- queries: postgresql.query.sql
+ schema: postgresql.schema.sql
+ engine: postgresql
+ gen:
+ go:
+ out: db
+
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/db/db.go b/internal/endtoend/testdata/exec_create_table/sqlite/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/sqlite/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/db/models.go b/internal/endtoend/testdata/exec_create_table/sqlite/db/models.go
new file mode 100644
index 0000000000..a0871d3f1b
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/sqlite/db/models.go
@@ -0,0 +1,5 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/db/sqlite.query.sql.go b/internal/endtoend/testdata/exec_create_table/sqlite/db/sqlite.query.sql.go
new file mode 100644
index 0000000000..ba5947b978
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/sqlite/db/sqlite.query.sql.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: sqlite.query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const createTable = `-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL)
+`
+
+func (q *Queries) CreateTable(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, createTable)
+ return err
+}
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/sqlc.yaml b/internal/endtoend/testdata/exec_create_table/sqlite/sqlc.yaml
new file mode 100644
index 0000000000..bf2e6024b6
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/sqlite/sqlc.yaml
@@ -0,0 +1,8 @@
+version: 2
+sql:
+- queries: sqlite.query.sql
+ schema: sqlite.schema.sql
+ engine: sqlite
+ gen:
+ go:
+ out: db
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/sqlite.query.sql b/internal/endtoend/testdata/exec_create_table/sqlite/sqlite.query.sql
new file mode 100644
index 0000000000..0a92ebb9cb
--- /dev/null
+++ b/internal/endtoend/testdata/exec_create_table/sqlite/sqlite.query.sql
@@ -0,0 +1,2 @@
+-- name: CreateTable :exec
+CREATE TABLE test (id INTEGER NOT NULL);
diff --git a/internal/endtoend/testdata/exec_create_table/sqlite/sqlite.schema.sql b/internal/endtoend/testdata/exec_create_table/sqlite/sqlite.schema.sql
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v4/go/db.go b/internal/endtoend/testdata/exec_imports/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v4/go/models.go b/internal/endtoend/testdata/exec_imports/pgx/v4/go/models.go
index 2a89ea15cb..c7f1bb0ec2 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v4/go/querier.go b/internal/endtoend/testdata/exec_imports/pgx/v4/go/querier.go
index 124e25dc49..7d55d00577 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/exec_imports/pgx/v4/go/query.sql.go
index e792dfbbf6..b2881b2f3d 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v5/go/db.go b/internal/endtoend/testdata/exec_imports/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v5/go/models.go b/internal/endtoend/testdata/exec_imports/pgx/v5/go/models.go
index b6c37757a9..da9cc8a300 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v5/go/querier.go b/internal/endtoend/testdata/exec_imports/pgx/v5/go/querier.go
index 124e25dc49..7d55d00577 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/exec_imports/pgx/v5/go/query.sql.go
index e792dfbbf6..b2881b2f3d 100644
--- a/internal/endtoend/testdata/exec_imports/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_imports/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/stdlib/go/db.go b/internal/endtoend/testdata/exec_imports/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/exec_imports/stdlib/go/db.go
+++ b/internal/endtoend/testdata/exec_imports/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/stdlib/go/models.go b/internal/endtoend/testdata/exec_imports/stdlib/go/models.go
index 2a89ea15cb..c7f1bb0ec2 100644
--- a/internal/endtoend/testdata/exec_imports/stdlib/go/models.go
+++ b/internal/endtoend/testdata/exec_imports/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/stdlib/go/querier.go b/internal/endtoend/testdata/exec_imports/stdlib/go/querier.go
index 124e25dc49..7d55d00577 100644
--- a/internal/endtoend/testdata/exec_imports/stdlib/go/querier.go
+++ b/internal/endtoend/testdata/exec_imports/stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_imports/stdlib/go/query.sql.go b/internal/endtoend/testdata/exec_imports/stdlib/go/query.sql.go
index dd4847531d..c2ab3ee57f 100644
--- a/internal/endtoend/testdata/exec_imports/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_imports/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/db.go b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/db.go
+++ b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/models.go b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/models.go
+++ b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/querier.go b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/querier.go
index 672d22ead6..c4de9f7424 100644
--- a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/querier.go
+++ b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/query.sql.go b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/query.sql.go
index 19c6d6335c..6f1328682f 100644
--- a/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_lastid/go_postgresql_stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/db.go b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/models.go b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/models.go
index 992cb7a7ba..938af8e836 100644
--- a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/query.sql.go
index 77de27c76d..2fbe4fc260 100644
--- a/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_no_return_struct/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/db.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/models.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/querier.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/querier.go
index 69417fa7ca..370fb9a4b7 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/query.sql.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/query.sql.go
index b502bebde7..285bd4708a 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/db.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/models.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/querier.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/querier.go
index 184a418314..8be6ced3e9 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/query.sql.go b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/query.sql.go
index ef630b3a82..e68b860226 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/db.go b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/db.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/models.go b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/models.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/querier.go b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/querier.go
index 064fe47f79..e7125d5c2e 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/querier.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/query.sql.go b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/query.sql.go
index 110a952965..4603c25b76 100644
--- a/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_result/go_postgresql_stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/db.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/models.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/querier.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/querier.go
index 8f267c7f87..9089ed8ae0 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/query.sql.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/query.sql.go
index 0f3f722cec..1359ec9af7 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/db.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/models.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/querier.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/querier.go
index 8f267c7f87..9089ed8ae0 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/query.sql.go b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/query.sql.go
index 0f3f722cec..1359ec9af7 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/db.go b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/db.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/models.go b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/models.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/querier.go b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/querier.go
index 8f267c7f87..9089ed8ae0 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/querier.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/query.sql.go b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/query.sql.go
index 03432ae5df..736cfbc8ab 100644
--- a/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/exec_rows/go_postgresql_stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/full_outer_join/sqlite/go/db.go b/internal/endtoend/testdata/full_outer_join/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/full_outer_join/sqlite/go/db.go
+++ b/internal/endtoend/testdata/full_outer_join/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/full_outer_join/sqlite/go/models.go b/internal/endtoend/testdata/full_outer_join/sqlite/go/models.go
index fbb152fb12..940652ea94 100644
--- a/internal/endtoend/testdata/full_outer_join/sqlite/go/models.go
+++ b/internal/endtoend/testdata/full_outer_join/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
ID int64
Name string
diff --git a/internal/endtoend/testdata/full_outer_join/sqlite/go/query.sql.go b/internal/endtoend/testdata/full_outer_join/sqlite/go/query.sql.go
index e6f4fa2e8c..a6ee1acbf1 100644
--- a/internal/endtoend/testdata/full_outer_join/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/full_outer_join/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/pganalyze/go/db.go b/internal/endtoend/testdata/func_aggregate/pganalyze/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_aggregate/pganalyze/go/db.go
+++ b/internal/endtoend/testdata/func_aggregate/pganalyze/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/pganalyze/go/models.go b/internal/endtoend/testdata/func_aggregate/pganalyze/go/models.go
index 96d094465f..d3b600c584 100644
--- a/internal/endtoend/testdata/func_aggregate/pganalyze/go/models.go
+++ b/internal/endtoend/testdata/func_aggregate/pganalyze/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/pganalyze/go/query.sql.go b/internal/endtoend/testdata/func_aggregate/pganalyze/go/query.sql.go
index 82cf59d4d5..68b52e8c9e 100644
--- a/internal/endtoend/testdata/func_aggregate/pganalyze/go/query.sql.go
+++ b/internal/endtoend/testdata/func_aggregate/pganalyze/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/postgresql/go/db.go b/internal/endtoend/testdata/func_aggregate/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_aggregate/postgresql/go/db.go
+++ b/internal/endtoend/testdata/func_aggregate/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/postgresql/go/models.go b/internal/endtoend/testdata/func_aggregate/postgresql/go/models.go
index 96d094465f..d3b600c584 100644
--- a/internal/endtoend/testdata/func_aggregate/postgresql/go/models.go
+++ b/internal/endtoend/testdata/func_aggregate/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_aggregate/postgresql/go/query.sql.go b/internal/endtoend/testdata/func_aggregate/postgresql/go/query.sql.go
index 6e819d01b5..4462889219 100644
--- a/internal/endtoend/testdata/func_aggregate/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/func_aggregate/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args/pgx/v4/go/db.go b/internal/endtoend/testdata/func_args/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/func_args/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/func_args/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args/pgx/v4/go/models.go b/internal/endtoend/testdata/func_args/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/func_args/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/func_args/pgx/v4/go/query.sql.go
index 5e0be17371..9a938d917e 100644
--- a/internal/endtoend/testdata/func_args/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args/pgx/v5/go/db.go b/internal/endtoend/testdata/func_args/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_args/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/func_args/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args/pgx/v5/go/models.go b/internal/endtoend/testdata/func_args/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/func_args/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/func_args/pgx/v5/go/query.sql.go
index 34af114d5d..ca781e5d53 100644
--- a/internal/endtoend/testdata/func_args/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args/stdlib/go/db.go b/internal/endtoend/testdata/func_args/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_args/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_args/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args/stdlib/go/models.go b/internal/endtoend/testdata/func_args/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_args/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_args/stdlib/go/query.sql.go
index b5b20a605d..75b5f0c414 100644
--- a/internal/endtoend/testdata/func_args/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/db.go b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/models.go b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/query.sql.go
index 317d73b2c3..d290bf5873 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/db.go b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/models.go b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/query.sql.go
index 317d73b2c3..d290bf5873 100644
--- a/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args_typecast/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/stdlib/go/db.go b/internal/endtoend/testdata/func_args_typecast/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_args_typecast/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_args_typecast/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_args_typecast/stdlib/go/models.go b/internal/endtoend/testdata/func_args_typecast/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_args_typecast/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_args_typecast/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_args_typecast/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_args_typecast/stdlib/go/query.sql.go
index f5f675bdfd..33f44d1be5 100644
--- a/internal/endtoend/testdata/func_args_typecast/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_args_typecast/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/mysql/go/db.go b/internal/endtoend/testdata/func_call_cast/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_call_cast/mysql/go/db.go
+++ b/internal/endtoend/testdata/func_call_cast/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/mysql/go/models.go b/internal/endtoend/testdata/func_call_cast/mysql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_call_cast/mysql/go/models.go
+++ b/internal/endtoend/testdata/func_call_cast/mysql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_call_cast/mysql/go/query.sql.go b/internal/endtoend/testdata/func_call_cast/mysql/go/query.sql.go
index dcc28d0eb3..8e588bd58f 100644
--- a/internal/endtoend/testdata/func_call_cast/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/func_call_cast/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/query.sql.go
index fe1673a9ef..ea2800330e 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/query.sql.go
index 6ad5fc8c52..f64b3f0fc0 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/query.sql.go
index 8d0961ffbb..90df3e10b3 100644
--- a/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_call_cast/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/sqlite/go/db.go b/internal/endtoend/testdata/func_call_cast/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_call_cast/sqlite/go/db.go
+++ b/internal/endtoend/testdata/func_call_cast/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_call_cast/sqlite/go/models.go b/internal/endtoend/testdata/func_call_cast/sqlite/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_call_cast/sqlite/go/models.go
+++ b/internal/endtoend/testdata/func_call_cast/sqlite/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_call_cast/sqlite/go/query.sql.go b/internal/endtoend/testdata/func_call_cast/sqlite/go/query.sql.go
index b4580b6567..16c361d26f 100644
--- a/internal/endtoend/testdata/func_call_cast/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/func_call_cast/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/mysql/go/db.go b/internal/endtoend/testdata/func_match_types/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_match_types/mysql/go/db.go
+++ b/internal/endtoend/testdata/func_match_types/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/mysql/go/models.go b/internal/endtoend/testdata/func_match_types/mysql/go/models.go
index d5f5c7abbb..50749a47b8 100644
--- a/internal/endtoend/testdata/func_match_types/mysql/go/models.go
+++ b/internal/endtoend/testdata/func_match_types/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Book struct {
ID int32
Title string
diff --git a/internal/endtoend/testdata/func_match_types/mysql/go/query.sql.go b/internal/endtoend/testdata/func_match_types/mysql/go/query.sql.go
index eab127958c..56fd4ea78a 100644
--- a/internal/endtoend/testdata/func_match_types/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/func_match_types/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/postgresql/go/db.go b/internal/endtoend/testdata/func_match_types/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_match_types/postgresql/go/db.go
+++ b/internal/endtoend/testdata/func_match_types/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/postgresql/go/models.go b/internal/endtoend/testdata/func_match_types/postgresql/go/models.go
index d5f5c7abbb..50749a47b8 100644
--- a/internal/endtoend/testdata/func_match_types/postgresql/go/models.go
+++ b/internal/endtoend/testdata/func_match_types/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Book struct {
ID int32
Title string
diff --git a/internal/endtoend/testdata/func_match_types/postgresql/go/query.sql.go b/internal/endtoend/testdata/func_match_types/postgresql/go/query.sql.go
index 07600c80d7..f2dcfcd12c 100644
--- a/internal/endtoend/testdata/func_match_types/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/func_match_types/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/sqlite/go/db.go b/internal/endtoend/testdata/func_match_types/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_match_types/sqlite/go/db.go
+++ b/internal/endtoend/testdata/func_match_types/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_match_types/sqlite/go/models.go b/internal/endtoend/testdata/func_match_types/sqlite/go/models.go
index a308ea6a6f..819cc8867a 100644
--- a/internal/endtoend/testdata/func_match_types/sqlite/go/models.go
+++ b/internal/endtoend/testdata/func_match_types/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Book struct {
ID int64
Title string
diff --git a/internal/endtoend/testdata/func_match_types/sqlite/go/query.sql.go b/internal/endtoend/testdata/func_match_types/sqlite/go/query.sql.go
index 6206b7bb96..059d14e185 100644
--- a/internal/endtoend/testdata/func_match_types/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/func_match_types/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_out_param/pgx/go/db.go b/internal/endtoend/testdata/func_out_param/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_out_param/pgx/go/db.go
+++ b/internal/endtoend/testdata/func_out_param/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_out_param/pgx/go/models.go b/internal/endtoend/testdata/func_out_param/pgx/go/models.go
index c3333ce131..53c974680f 100644
--- a/internal/endtoend/testdata/func_out_param/pgx/go/models.go
+++ b/internal/endtoend/testdata/func_out_param/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_out_param/pgx/go/query.sql.go b/internal/endtoend/testdata/func_out_param/pgx/go/query.sql.go
index eb58155b73..fe59a01bc5 100644
--- a/internal/endtoend/testdata/func_out_param/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/func_out_param/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/db.go b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/db.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/models.go b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/models.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/query.sql.go b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/query.sql.go
index c6a4be36c9..7a8c17732d 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pganalyze/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/query.sql.go
index 9d96d2f75b..1456549f64 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/query.sql.go
index a998027464..5214fdea55 100644
--- a/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_date/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/db.go b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/models.go b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/models.go
index 96f6f1232c..944393fee2 100644
--- a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type MyTable struct {
Data []byte
}
diff --git a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/query.sql.go
index f4b37f9e15..7f9ef2cd72 100644
--- a/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_record/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/query.sql.go
index ed02aa0649..6cef736304 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/query.sql.go
index ed02aa0649..6cef736304 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/query.sql.go
index ea758e7650..9375704aa4 100644
--- a/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_series/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/db.go b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/models.go b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/models.go
index cd81724841..25d672fc05 100644
--- a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Account struct {
ID int32
Username string
diff --git a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/query.sql.go
index 1673250cab..274708171f 100644
--- a/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_table/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/db.go b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/models.go b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/models.go
index d4272b4a9f..78ec53a436 100644
--- a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Blog struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/query.sql.go
index 11c8cf5b70..2520850e32 100644
--- a/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/func_return_table_columns/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/db.go b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/models.go b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/query.sql.go
index 1f31c2997f..1d994f53b8 100644
--- a/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/func_star_expansion/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/models.go
index 72feaeecc6..59d95234b0 100644
--- a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/query.sql.go
index 90760e6811..150345d099 100644
--- a/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/func_variadic/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v4/go/db.go b/internal/endtoend/testdata/geometric/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/geometric/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/geometric/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v4/go/models.go b/internal/endtoend/testdata/geometric/pgx/v4/go/models.go
index 37a251641f..711a9f3776 100644
--- a/internal/endtoend/testdata/geometric/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/geometric/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/geometric/pgx/v4/go/query.sql.go
index 52c52ba60a..8ea3843444 100644
--- a/internal/endtoend/testdata/geometric/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/geometric/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v5/go/db.go b/internal/endtoend/testdata/geometric/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/geometric/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/geometric/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v5/go/models.go b/internal/endtoend/testdata/geometric/pgx/v5/go/models.go
index b6bd38d32d..748b2fdeee 100644
--- a/internal/endtoend/testdata/geometric/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/geometric/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/geometric/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/geometric/pgx/v5/go/query.sql.go
index 52c52ba60a..8ea3843444 100644
--- a/internal/endtoend/testdata/geometric/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/geometric/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/db/db.go b/internal/endtoend/testdata/golang_initialisms_empty/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/db/models.go b/internal/endtoend/testdata/golang_initialisms_empty/db/models.go
new file mode 100644
index 0000000000..da1c9e708f
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/db/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ BarId sql.NullString
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/db/query.sql.go b/internal/endtoend/testdata/golang_initialisms_empty/db/query.sql.go
new file mode 100644
index 0000000000..10822e5e07
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/db/query.sql.go
@@ -0,0 +1,38 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const selectFoo = `-- name: SelectFoo :many
+SELECT bar_id FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) ([]sql.NullString, error) {
+ rows, err := q.db.QueryContext(ctx, selectFoo)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []sql.NullString
+ for rows.Next() {
+ var bar_id sql.NullString
+ if err := rows.Scan(&bar_id); err != nil {
+ return nil, err
+ }
+ items = append(items, bar_id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/query.sql b/internal/endtoend/testdata/golang_initialisms_empty/query.sql
new file mode 100644
index 0000000000..e32e926b32
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/query.sql
@@ -0,0 +1,2 @@
+-- name: SelectFoo :many
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/schema.sql b/internal/endtoend/testdata/golang_initialisms_empty/schema.sql
new file mode 100644
index 0000000000..fe692b6af6
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/schema.sql
@@ -0,0 +1,3 @@
+CREATE TABLE foo(
+ bar_id text
+);
diff --git a/internal/endtoend/testdata/golang_initialisms_empty/sqlc.json b/internal/endtoend/testdata/golang_initialisms_empty/sqlc.json
new file mode 100644
index 0000000000..02ab2e395c
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_empty/sqlc.json
@@ -0,0 +1,16 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "gen": {
+ "go": {
+ "out": "db",
+ "initialisms": []
+ }
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_url/db/db.go b/internal/endtoend/testdata/golang_initialisms_url/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_url/db/models.go b/internal/endtoend/testdata/golang_initialisms_url/db/models.go
new file mode 100644
index 0000000000..e8eec05ffa
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/db/models.go
@@ -0,0 +1,14 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ BarID sql.NullString
+ SiteURL sql.NullString
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_url/db/query.sql.go b/internal/endtoend/testdata/golang_initialisms_url/db/query.sql.go
new file mode 100644
index 0000000000..d67a70bb14
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/db/query.sql.go
@@ -0,0 +1,37 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const selectFoo = `-- name: SelectFoo :many
+SELECT bar_id, site_url FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) ([]Foo, error) {
+ rows, err := q.db.QueryContext(ctx, selectFoo)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Foo
+ for rows.Next() {
+ var i Foo
+ if err := rows.Scan(&i.BarID, &i.SiteURL); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/golang_initialisms_url/query.sql b/internal/endtoend/testdata/golang_initialisms_url/query.sql
new file mode 100644
index 0000000000..e32e926b32
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/query.sql
@@ -0,0 +1,2 @@
+-- name: SelectFoo :many
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/golang_initialisms_url/schema.sql b/internal/endtoend/testdata/golang_initialisms_url/schema.sql
new file mode 100644
index 0000000000..d0b2506904
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/schema.sql
@@ -0,0 +1,4 @@
+CREATE TABLE foo (
+ bar_id text,
+ site_url text
+);
diff --git a/internal/endtoend/testdata/golang_initialisms_url/sqlc.json b/internal/endtoend/testdata/golang_initialisms_url/sqlc.json
new file mode 100644
index 0000000000..2b135eec3e
--- /dev/null
+++ b/internal/endtoend/testdata/golang_initialisms_url/sqlc.json
@@ -0,0 +1,16 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "gen": {
+ "go": {
+ "out": "db",
+ "initialisms": ["id", "url"]
+ }
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/db/db.go b/internal/endtoend/testdata/golang_invalid_sql_driver/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/db/models.go b/internal/endtoend/testdata/golang_invalid_sql_driver/db/models.go
new file mode 100644
index 0000000000..89e37f98bb
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/db/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ Bar sql.NullString
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/db/query.sql.go b/internal/endtoend/testdata/golang_invalid_sql_driver/db/query.sql.go
new file mode 100644
index 0000000000..50f15bb7ac
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/db/query.sql.go
@@ -0,0 +1,38 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const selectFoo = `-- name: SelectFoo :many
+SELECT bar FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) ([]sql.NullString, error) {
+ rows, err := q.db.QueryContext(ctx, selectFoo)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []sql.NullString
+ for rows.Next() {
+ var bar sql.NullString
+ if err := rows.Scan(&bar); err != nil {
+ return nil, err
+ }
+ items = append(items, bar)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/query.sql b/internal/endtoend/testdata/golang_invalid_sql_driver/query.sql
new file mode 100644
index 0000000000..e32e926b32
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/query.sql
@@ -0,0 +1,2 @@
+-- name: SelectFoo :many
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/schema.sql b/internal/endtoend/testdata/golang_invalid_sql_driver/schema.sql
new file mode 100644
index 0000000000..1bd72529f8
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/schema.sql
@@ -0,0 +1,3 @@
+CREATE TABLE foo(
+ bar text
+);
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/sqlc.json b/internal/endtoend/testdata/golang_invalid_sql_driver/sqlc.json
new file mode 100644
index 0000000000..6124f178d1
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/sqlc.json
@@ -0,0 +1,16 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "gen": {
+ "go": {
+ "out": "db",
+ "sql_driver": "github.com/unknown/driver"
+ }
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_driver/stderr.txt b/internal/endtoend/testdata/golang_invalid_sql_driver/stderr.txt
new file mode 100644
index 0000000000..b71f130a2f
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_driver/stderr.txt
@@ -0,0 +1,2 @@
+# package
+error generating code: invalid options: unknown SQL driver: github.com/unknown/driver
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/db/db.go b/internal/endtoend/testdata/golang_invalid_sql_package/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/db/models.go b/internal/endtoend/testdata/golang_invalid_sql_package/db/models.go
new file mode 100644
index 0000000000..89e37f98bb
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/db/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ Bar sql.NullString
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/db/query.sql.go b/internal/endtoend/testdata/golang_invalid_sql_package/db/query.sql.go
new file mode 100644
index 0000000000..50f15bb7ac
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/db/query.sql.go
@@ -0,0 +1,38 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const selectFoo = `-- name: SelectFoo :many
+SELECT bar FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) ([]sql.NullString, error) {
+ rows, err := q.db.QueryContext(ctx, selectFoo)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []sql.NullString
+ for rows.Next() {
+ var bar sql.NullString
+ if err := rows.Scan(&bar); err != nil {
+ return nil, err
+ }
+ items = append(items, bar)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/query.sql b/internal/endtoend/testdata/golang_invalid_sql_package/query.sql
new file mode 100644
index 0000000000..e32e926b32
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/query.sql
@@ -0,0 +1,2 @@
+-- name: SelectFoo :many
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/schema.sql b/internal/endtoend/testdata/golang_invalid_sql_package/schema.sql
new file mode 100644
index 0000000000..e29621be57
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/schema.sql
@@ -0,0 +1,3 @@
+CREATE TABLE foo (
+ bar text
+);
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/sqlc.json b/internal/endtoend/testdata/golang_invalid_sql_package/sqlc.json
new file mode 100644
index 0000000000..a6c726061c
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/sqlc.json
@@ -0,0 +1,16 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "gen": {
+ "go": {
+ "out": "db",
+ "sql_package": "pgx/5"
+ }
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/golang_invalid_sql_package/stderr.txt b/internal/endtoend/testdata/golang_invalid_sql_package/stderr.txt
new file mode 100644
index 0000000000..249ae167b7
--- /dev/null
+++ b/internal/endtoend/testdata/golang_invalid_sql_package/stderr.txt
@@ -0,0 +1,2 @@
+# package
+error generating code: invalid options: unknown SQL package: pgx/5
diff --git a/internal/endtoend/testdata/having/mysql/go/db.go b/internal/endtoend/testdata/having/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/having/mysql/go/db.go
+++ b/internal/endtoend/testdata/having/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/having/mysql/go/models.go b/internal/endtoend/testdata/having/mysql/go/models.go
index 330c6e45c9..700add88d1 100644
--- a/internal/endtoend/testdata/having/mysql/go/models.go
+++ b/internal/endtoend/testdata/having/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Weather struct {
City string
TempLo int32
diff --git a/internal/endtoend/testdata/having/mysql/go/query.sql.go b/internal/endtoend/testdata/having/mysql/go/query.sql.go
index d9e654515f..c05ffaf141 100644
--- a/internal/endtoend/testdata/having/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/having/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/having/postgresql/go/db.go b/internal/endtoend/testdata/having/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/having/postgresql/go/db.go
+++ b/internal/endtoend/testdata/having/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/having/postgresql/go/models.go b/internal/endtoend/testdata/having/postgresql/go/models.go
index 330c6e45c9..700add88d1 100644
--- a/internal/endtoend/testdata/having/postgresql/go/models.go
+++ b/internal/endtoend/testdata/having/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Weather struct {
City string
TempLo int32
diff --git a/internal/endtoend/testdata/having/postgresql/go/query.sql.go b/internal/endtoend/testdata/having/postgresql/go/query.sql.go
index 1e5c1e2410..910552337e 100644
--- a/internal/endtoend/testdata/having/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/having/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/hstore/pgx/v4/go/db.go b/internal/endtoend/testdata/hstore/pgx/v4/go/db.go
index c944d6b641..41c581ae57 100644
--- a/internal/endtoend/testdata/hstore/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/hstore/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
diff --git a/internal/endtoend/testdata/hstore/pgx/v4/go/hstore.sql.go b/internal/endtoend/testdata/hstore/pgx/v4/go/hstore.sql.go
index 463d19fc85..b7104a9334 100644
--- a/internal/endtoend/testdata/hstore/pgx/v4/go/hstore.sql.go
+++ b/internal/endtoend/testdata/hstore/pgx/v4/go/hstore.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: hstore.sql
package hstore
diff --git a/internal/endtoend/testdata/hstore/pgx/v4/go/models.go b/internal/endtoend/testdata/hstore/pgx/v4/go/models.go
index 2e46928965..3988448528 100644
--- a/internal/endtoend/testdata/hstore/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/hstore/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
diff --git a/internal/endtoend/testdata/hstore/pgx/v5/go/db.go b/internal/endtoend/testdata/hstore/pgx/v5/go/db.go
index 9678314905..60aba78f98 100644
--- a/internal/endtoend/testdata/hstore/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/hstore/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
diff --git a/internal/endtoend/testdata/hstore/pgx/v5/go/hstore.sql.go b/internal/endtoend/testdata/hstore/pgx/v5/go/hstore.sql.go
index f0d7429bc5..3708dcb47d 100644
--- a/internal/endtoend/testdata/hstore/pgx/v5/go/hstore.sql.go
+++ b/internal/endtoend/testdata/hstore/pgx/v5/go/hstore.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: hstore.sql
package hstore
diff --git a/internal/endtoend/testdata/hstore/pgx/v5/go/models.go b/internal/endtoend/testdata/hstore/pgx/v5/go/models.go
index 9b0bd82dcb..2dba72beea 100644
--- a/internal/endtoend/testdata/hstore/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/hstore/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
diff --git a/internal/endtoend/testdata/hstore/stdlib/go/db.go b/internal/endtoend/testdata/hstore/stdlib/go/db.go
index 1125f05fe8..34ce29b03e 100644
--- a/internal/endtoend/testdata/hstore/stdlib/go/db.go
+++ b/internal/endtoend/testdata/hstore/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
diff --git a/internal/endtoend/testdata/hstore/stdlib/go/hstore.sql.go b/internal/endtoend/testdata/hstore/stdlib/go/hstore.sql.go
index c130bc00b3..2446547cd4 100644
--- a/internal/endtoend/testdata/hstore/stdlib/go/hstore.sql.go
+++ b/internal/endtoend/testdata/hstore/stdlib/go/hstore.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: hstore.sql
package hstore
diff --git a/internal/endtoend/testdata/hstore/stdlib/go/models.go b/internal/endtoend/testdata/hstore/stdlib/go/models.go
index 3f03cabc4c..e18e4db10f 100644
--- a/internal/endtoend/testdata/hstore/stdlib/go/models.go
+++ b/internal/endtoend/testdata/hstore/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package hstore
-import ()
-
type Foo struct {
Bar interface{}
Baz interface{}
diff --git a/internal/endtoend/testdata/identical_tables/mysql/go/db.go b/internal/endtoend/testdata/identical_tables/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/identical_tables/mysql/go/db.go
+++ b/internal/endtoend/testdata/identical_tables/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/mysql/go/models.go b/internal/endtoend/testdata/identical_tables/mysql/go/models.go
index 6f84c9245f..d23b7bdaaa 100644
--- a/internal/endtoend/testdata/identical_tables/mysql/go/models.go
+++ b/internal/endtoend/testdata/identical_tables/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
}
diff --git a/internal/endtoend/testdata/identical_tables/mysql/go/query.sql.go b/internal/endtoend/testdata/identical_tables/mysql/go/query.sql.go
index abb55e3460..eddda81803 100644
--- a/internal/endtoend/testdata/identical_tables/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/identical_tables/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/models.go
index 6f84c9245f..d23b7bdaaa 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
}
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/query.sql.go
index 48d6c7e15e..a395450150 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/models.go
index 6f84c9245f..d23b7bdaaa 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
}
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/query.sql.go
index 48d6c7e15e..a395450150 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/models.go
index 6f84c9245f..d23b7bdaaa 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
}
diff --git a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/query.sql.go
index abb55e3460..eddda81803 100644
--- a/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/identical_tables/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/sqlite/go/db.go b/internal/endtoend/testdata/identical_tables/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/identical_tables/sqlite/go/db.go
+++ b/internal/endtoend/testdata/identical_tables/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/identical_tables/sqlite/go/models.go b/internal/endtoend/testdata/identical_tables/sqlite/go/models.go
index 6f84c9245f..d23b7bdaaa 100644
--- a/internal/endtoend/testdata/identical_tables/sqlite/go/models.go
+++ b/internal/endtoend/testdata/identical_tables/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID string
}
diff --git a/internal/endtoend/testdata/identical_tables/sqlite/go/query.sql.go b/internal/endtoend/testdata/identical_tables/sqlite/go/query.sql.go
index abb55e3460..eddda81803 100644
--- a/internal/endtoend/testdata/identical_tables/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/identical_tables/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/identifier_case_sensitivity/db/db.go b/internal/endtoend/testdata/identifier_case_sensitivity/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/identifier_case_sensitivity/db/db.go
+++ b/internal/endtoend/testdata/identifier_case_sensitivity/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/identifier_case_sensitivity/db/models.go b/internal/endtoend/testdata/identifier_case_sensitivity/db/models.go
index 95168df5de..601f8ed004 100644
--- a/internal/endtoend/testdata/identifier_case_sensitivity/db/models.go
+++ b/internal/endtoend/testdata/identifier_case_sensitivity/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/identifier_case_sensitivity/db/query.sql.go b/internal/endtoend/testdata/identifier_case_sensitivity/db/query.sql.go
index 20bb741227..3c7fd8d3c8 100644
--- a/internal/endtoend/testdata/identifier_case_sensitivity/db/query.sql.go
+++ b/internal/endtoend/testdata/identifier_case_sensitivity/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/identifier_dollar_sign/db/db.go b/internal/endtoend/testdata/identifier_dollar_sign/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/identifier_dollar_sign/db/db.go
+++ b/internal/endtoend/testdata/identifier_dollar_sign/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/identifier_dollar_sign/db/models.go b/internal/endtoend/testdata/identifier_dollar_sign/db/models.go
index 477b93130d..a0871d3f1b 100644
--- a/internal/endtoend/testdata/identifier_dollar_sign/db/models.go
+++ b/internal/endtoend/testdata/identifier_dollar_sign/db/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-
-import ()
diff --git a/internal/endtoend/testdata/identifier_dollar_sign/db/query.sql.go b/internal/endtoend/testdata/identifier_dollar_sign/db/query.sql.go
index e2e86c8251..24bcbb9ffe 100644
--- a/internal/endtoend/testdata/identifier_dollar_sign/db/query.sql.go
+++ b/internal/endtoend/testdata/identifier_dollar_sign/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/in_union/mysql/go/db.go b/internal/endtoend/testdata/in_union/mysql/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/in_union/mysql/go/models.go b/internal/endtoend/testdata/in_union/mysql/go/models.go
new file mode 100644
index 0000000000..ca6644b464
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/go/models.go
@@ -0,0 +1,25 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int32
+ Name string
+ Bio sql.NullString
+}
+
+type Book1 struct {
+ AuthorID int32
+ Name sql.NullString
+}
+
+type Book2 struct {
+ AuthorID int32
+ Name sql.NullString
+}
diff --git a/internal/endtoend/testdata/in_union/mysql/go/query.sql.go b/internal/endtoend/testdata/in_union/mysql/go/query.sql.go
new file mode 100644
index 0000000000..34c4295f6f
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/go/query.sql.go
@@ -0,0 +1,38 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const getAuthors = `-- name: GetAuthors :many
+SELECT id, name, bio FROM authors
+WHERE author_id IN (SELECT author_id FROM book1 UNION SELECT author_id FROM book2)
+`
+
+func (q *Queries) GetAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, getAuthors)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/in_union/mysql/query.sql b/internal/endtoend/testdata/in_union/mysql/query.sql
new file mode 100644
index 0000000000..69606f538b
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/query.sql
@@ -0,0 +1,3 @@
+-- name: GetAuthors :many
+SELECT * FROM authors
+WHERE author_id IN (SELECT author_id FROM book1 UNION SELECT author_id FROM book2);
diff --git a/internal/endtoend/testdata/in_union/mysql/schema.sql b/internal/endtoend/testdata/in_union/mysql/schema.sql
new file mode 100644
index 0000000000..47264e2bbc
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/schema.sql
@@ -0,0 +1,15 @@
+CREATE TABLE authors (
+ id int PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
+CREATE TABLE book1 (
+ author_id int PRIMARY KEY,
+ name text,
+ FOREIGN KEY (`author_id`) REFERENCES `authors` (`id`) ON DELETE CASCADE
+);
+CREATE TABLE book2 (
+ author_id int PRIMARY KEY,
+ name text,
+ FOREIGN KEY (`author_id`) REFERENCES `authors` (`id`) ON DELETE CASCADE
+);
diff --git a/internal/endtoend/testdata/in_union/mysql/sqlc.json b/internal/endtoend/testdata/in_union/mysql/sqlc.json
new file mode 100644
index 0000000000..974aa9ff9e
--- /dev/null
+++ b/internal/endtoend/testdata/in_union/mysql/sqlc.json
@@ -0,0 +1,12 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "engine": "mysql",
+ "path": "go",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/inflection/mysql/go/db.go b/internal/endtoend/testdata/inflection/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/inflection/mysql/go/db.go
+++ b/internal/endtoend/testdata/inflection/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection/mysql/go/models.go b/internal/endtoend/testdata/inflection/mysql/go/models.go
index 85cfbb0f9c..03a11b20aa 100644
--- a/internal/endtoend/testdata/inflection/mysql/go/models.go
+++ b/internal/endtoend/testdata/inflection/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Calorie struct {
ID string
}
@@ -14,6 +12,10 @@ type Campus struct {
ID string
}
+type ProductMetadatum struct {
+ ID string
+}
+
type ProductMetum struct {
ID string
}
diff --git a/internal/endtoend/testdata/inflection/mysql/go/query.sql.go b/internal/endtoend/testdata/inflection/mysql/go/query.sql.go
index 966074b947..3c0eaacc70 100644
--- a/internal/endtoend/testdata/inflection/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -9,6 +9,33 @@ import (
"context"
)
+const getProductMetadata = `-- name: GetProductMetadata :many
+SELECT id FROM product_metadata
+`
+
+func (q *Queries) GetProductMetadata(ctx context.Context) ([]string, error) {
+ rows, err := q.db.QueryContext(ctx, getProductMetadata)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listCalories = `-- name: ListCalories :many
SELECT id FROM calories
`
diff --git a/internal/endtoend/testdata/inflection/mysql/query.sql b/internal/endtoend/testdata/inflection/mysql/query.sql
index e3917086b9..74e1aaf8c3 100644
--- a/internal/endtoend/testdata/inflection/mysql/query.sql
+++ b/internal/endtoend/testdata/inflection/mysql/query.sql
@@ -9,3 +9,6 @@ SELECT * FROM product_meta;
/* name: ListCalories :many */
SELECT * FROM calories;
+
+/* name: GetProductMetadata :many */
+SELECT * FROM product_metadata;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/mysql/schema.sql b/internal/endtoend/testdata/inflection/mysql/schema.sql
index b0d88c8695..f7d5c7c2a5 100644
--- a/internal/endtoend/testdata/inflection/mysql/schema.sql
+++ b/internal/endtoend/testdata/inflection/mysql/schema.sql
@@ -2,4 +2,4 @@ CREATE TABLE campus (id text not null);
CREATE TABLE students (id text not null);
CREATE TABLE product_meta (id text not null);
CREATE TABLE calories (id text not null);
-
+CREATE TABLE product_metadata (id text not null);
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/models.go
index 85cfbb0f9c..03a11b20aa 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Calorie struct {
ID string
}
@@ -14,6 +12,10 @@ type Campus struct {
ID string
}
+type ProductMetadatum struct {
+ ID string
+}
+
type ProductMetum struct {
ID string
}
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/query.sql.go
index 0af8896078..f02d1f9cff 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -9,6 +9,30 @@ import (
"context"
)
+const getProductMetadata = `-- name: GetProductMetadata :many
+SELECT id FROM product_metadata
+`
+
+func (q *Queries) GetProductMetadata(ctx context.Context) ([]string, error) {
+ rows, err := q.db.Query(ctx, getProductMetadata)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listCalories = `-- name: ListCalories :many
SELECT id FROM calories
`
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/query.sql b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/query.sql
index 6e2828d458..abc0da2ef2 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/query.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/query.sql
@@ -9,3 +9,6 @@ SELECT * FROM product_meta;
-- name: ListCalories :many
SELECT * FROM calories;
+
+-- name: GetProductMetadata :many
+SELECT * FROM product_metadata;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/schema.sql b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/schema.sql
index b0d88c8695..ad17ad7427 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v4/schema.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v4/schema.sql
@@ -2,4 +2,4 @@ CREATE TABLE campus (id text not null);
CREATE TABLE students (id text not null);
CREATE TABLE product_meta (id text not null);
CREATE TABLE calories (id text not null);
-
+CREATE TABLE product_metadata (id text not null);
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/models.go
index 85cfbb0f9c..03a11b20aa 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Calorie struct {
ID string
}
@@ -14,6 +12,10 @@ type Campus struct {
ID string
}
+type ProductMetadatum struct {
+ ID string
+}
+
type ProductMetum struct {
ID string
}
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/query.sql.go
index 0af8896078..f02d1f9cff 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -9,6 +9,30 @@ import (
"context"
)
+const getProductMetadata = `-- name: GetProductMetadata :many
+SELECT id FROM product_metadata
+`
+
+func (q *Queries) GetProductMetadata(ctx context.Context) ([]string, error) {
+ rows, err := q.db.Query(ctx, getProductMetadata)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listCalories = `-- name: ListCalories :many
SELECT id FROM calories
`
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/query.sql b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/query.sql
index 6e2828d458..abc0da2ef2 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/query.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/query.sql
@@ -9,3 +9,6 @@ SELECT * FROM product_meta;
-- name: ListCalories :many
SELECT * FROM calories;
+
+-- name: GetProductMetadata :many
+SELECT * FROM product_metadata;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/schema.sql b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/schema.sql
index b0d88c8695..ad17ad7427 100644
--- a/internal/endtoend/testdata/inflection/postgresql/pgx/v5/schema.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/pgx/v5/schema.sql
@@ -2,4 +2,4 @@ CREATE TABLE campus (id text not null);
CREATE TABLE students (id text not null);
CREATE TABLE product_meta (id text not null);
CREATE TABLE calories (id text not null);
-
+CREATE TABLE product_metadata (id text not null);
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/models.go
index 85cfbb0f9c..03a11b20aa 100644
--- a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Calorie struct {
ID string
}
@@ -14,6 +12,10 @@ type Campus struct {
ID string
}
+type ProductMetadatum struct {
+ ID string
+}
+
type ProductMetum struct {
ID string
}
diff --git a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/query.sql.go
index 966074b947..3c0eaacc70 100644
--- a/internal/endtoend/testdata/inflection/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -9,6 +9,33 @@ import (
"context"
)
+const getProductMetadata = `-- name: GetProductMetadata :many
+SELECT id FROM product_metadata
+`
+
+func (q *Queries) GetProductMetadata(ctx context.Context) ([]string, error) {
+ rows, err := q.db.QueryContext(ctx, getProductMetadata)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listCalories = `-- name: ListCalories :many
SELECT id FROM calories
`
diff --git a/internal/endtoend/testdata/inflection/postgresql/stdlib/query.sql b/internal/endtoend/testdata/inflection/postgresql/stdlib/query.sql
index 6e2828d458..abc0da2ef2 100644
--- a/internal/endtoend/testdata/inflection/postgresql/stdlib/query.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/stdlib/query.sql
@@ -9,3 +9,6 @@ SELECT * FROM product_meta;
-- name: ListCalories :many
SELECT * FROM calories;
+
+-- name: GetProductMetadata :many
+SELECT * FROM product_metadata;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/postgresql/stdlib/schema.sql b/internal/endtoend/testdata/inflection/postgresql/stdlib/schema.sql
index b0d88c8695..ad17ad7427 100644
--- a/internal/endtoend/testdata/inflection/postgresql/stdlib/schema.sql
+++ b/internal/endtoend/testdata/inflection/postgresql/stdlib/schema.sql
@@ -2,4 +2,4 @@ CREATE TABLE campus (id text not null);
CREATE TABLE students (id text not null);
CREATE TABLE product_meta (id text not null);
CREATE TABLE calories (id text not null);
-
+CREATE TABLE product_metadata (id text not null);
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/sqlite/go/db.go b/internal/endtoend/testdata/inflection/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/inflection/sqlite/go/db.go
+++ b/internal/endtoend/testdata/inflection/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection/sqlite/go/models.go b/internal/endtoend/testdata/inflection/sqlite/go/models.go
index 85cfbb0f9c..03a11b20aa 100644
--- a/internal/endtoend/testdata/inflection/sqlite/go/models.go
+++ b/internal/endtoend/testdata/inflection/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Calorie struct {
ID string
}
@@ -14,6 +12,10 @@ type Campus struct {
ID string
}
+type ProductMetadatum struct {
+ ID string
+}
+
type ProductMetum struct {
ID string
}
diff --git a/internal/endtoend/testdata/inflection/sqlite/go/query.sql.go b/internal/endtoend/testdata/inflection/sqlite/go/query.sql.go
index 966074b947..3c0eaacc70 100644
--- a/internal/endtoend/testdata/inflection/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -9,6 +9,33 @@ import (
"context"
)
+const getProductMetadata = `-- name: GetProductMetadata :many
+SELECT id FROM product_metadata
+`
+
+func (q *Queries) GetProductMetadata(ctx context.Context) ([]string, error) {
+ rows, err := q.db.QueryContext(ctx, getProductMetadata)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listCalories = `-- name: ListCalories :many
SELECT id FROM calories
`
diff --git a/internal/endtoend/testdata/inflection/sqlite/query.sql b/internal/endtoend/testdata/inflection/sqlite/query.sql
index e3917086b9..74e1aaf8c3 100644
--- a/internal/endtoend/testdata/inflection/sqlite/query.sql
+++ b/internal/endtoend/testdata/inflection/sqlite/query.sql
@@ -9,3 +9,6 @@ SELECT * FROM product_meta;
/* name: ListCalories :many */
SELECT * FROM calories;
+
+/* name: GetProductMetadata :many */
+SELECT * FROM product_metadata;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection/sqlite/schema.sql b/internal/endtoend/testdata/inflection/sqlite/schema.sql
index b0d88c8695..ad17ad7427 100644
--- a/internal/endtoend/testdata/inflection/sqlite/schema.sql
+++ b/internal/endtoend/testdata/inflection/sqlite/schema.sql
@@ -2,4 +2,4 @@ CREATE TABLE campus (id text not null);
CREATE TABLE students (id text not null);
CREATE TABLE product_meta (id text not null);
CREATE TABLE calories (id text not null);
-
+CREATE TABLE product_metadata (id text not null);
\ No newline at end of file
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/models.go
index 95d0a7948d..63ed1fb1e4 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/query.sql.go
index 80d619a114..cba53bff9b 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/models.go
index 95d0a7948d..63ed1fb1e4 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/query.sql.go
index 80d619a114..cba53bff9b 100644
--- a/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/inflection_exclude_table_names/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v4/go/db.go b/internal/endtoend/testdata/insert_cte/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v4/go/models.go b/internal/endtoend/testdata/insert_cte/pgx/v4/go/models.go
index 3f5229aae5..f1cff592f2 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/insert_cte/pgx/v4/go/query.sql.go
index acb60a85c7..15850d7be8 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v5/go/db.go b/internal/endtoend/testdata/insert_cte/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v5/go/models.go b/internal/endtoend/testdata/insert_cte/pgx/v5/go/models.go
index 83b81b5f0e..f28620929a 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/insert_cte/pgx/v5/go/query.sql.go
index e81ce37328..dd91c7af0a 100644
--- a/internal/endtoend/testdata/insert_cte/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_cte/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/stdlib/go/db.go b/internal/endtoend/testdata/insert_cte/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_cte/stdlib/go/db.go
+++ b/internal/endtoend/testdata/insert_cte/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/stdlib/go/models.go b/internal/endtoend/testdata/insert_cte/stdlib/go/models.go
index 3f5229aae5..f1cff592f2 100644
--- a/internal/endtoend/testdata/insert_cte/stdlib/go/models.go
+++ b/internal/endtoend/testdata/insert_cte/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_cte/stdlib/go/query.sql.go b/internal/endtoend/testdata/insert_cte/stdlib/go/query.sql.go
index d45b4a15cd..341db48159 100644
--- a/internal/endtoend/testdata/insert_cte/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_cte/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/go/db.go b/internal/endtoend/testdata/insert_default_values/sqlite/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/go/models.go b/internal/endtoend/testdata/insert_default_values/sqlite/go/models.go
new file mode 100644
index 0000000000..ae5eabfca6
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/go/models.go
@@ -0,0 +1,9 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type Workspace struct {
+ ID int64
+}
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/go/query.sql.go b/internal/endtoend/testdata/insert_default_values/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..5705d2e32c
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/go/query.sql.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const insertWorkspace = `-- name: InsertWorkspace :exec
+INSERT INTO workspace DEFAULT VALUES
+`
+
+func (q *Queries) InsertWorkspace(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, insertWorkspace)
+ return err
+}
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/query.sql b/internal/endtoend/testdata/insert_default_values/sqlite/query.sql
new file mode 100644
index 0000000000..107afbe8b5
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/query.sql
@@ -0,0 +1,2 @@
+-- name: InsertWorkspace :exec
+INSERT INTO workspace DEFAULT VALUES;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/schema.sql b/internal/endtoend/testdata/insert_default_values/sqlite/schema.sql
new file mode 100644
index 0000000000..f142b7c831
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/schema.sql
@@ -0,0 +1,3 @@
+CREATE TABLE workspace (
+ id INTEGER PRIMARY KEY AUTOINCREMENT
+);
\ No newline at end of file
diff --git a/internal/endtoend/testdata/insert_default_values/sqlite/sqlc.json b/internal/endtoend/testdata/insert_default_values/sqlite/sqlc.json
new file mode 100644
index 0000000000..f8e8051087
--- /dev/null
+++ b/internal/endtoend/testdata/insert_default_values/sqlite/sqlc.json
@@ -0,0 +1,12 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "engine": "sqlite",
+ "path": "go",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/internal/endtoend/testdata/insert_select/mysql/go/db.go b/internal/endtoend/testdata/insert_select/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_select/mysql/go/db.go
+++ b/internal/endtoend/testdata/insert_select/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select/mysql/go/models.go b/internal/endtoend/testdata/insert_select/mysql/go/models.go
index 1af9929ad0..0bca59013c 100644
--- a/internal/endtoend/testdata/insert_select/mysql/go/models.go
+++ b/internal/endtoend/testdata/insert_select/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Name string
Ready bool
diff --git a/internal/endtoend/testdata/insert_select/mysql/go/query.sql.go b/internal/endtoend/testdata/insert_select/mysql/go/query.sql.go
index 8634596c04..c9fb431f7d 100644
--- a/internal/endtoend/testdata/insert_select/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/models.go
index 1af9929ad0..0bca59013c 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Name string
Ready bool
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/query.sql.go
index d3033188a5..e6a867b056 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/models.go
index 1af9929ad0..0bca59013c 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Name string
Ready bool
diff --git a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/query.sql.go
index d3033188a5..e6a867b056 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/models.go
index 1af9929ad0..0bca59013c 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Name string
Ready bool
diff --git a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/query.sql.go
index a7010d86b0..bdc9119f92 100644
--- a/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select/sqlite/go/db.go b/internal/endtoend/testdata/insert_select/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_select/sqlite/go/db.go
+++ b/internal/endtoend/testdata/insert_select/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select/sqlite/go/models.go b/internal/endtoend/testdata/insert_select/sqlite/go/models.go
index 1af9929ad0..0bca59013c 100644
--- a/internal/endtoend/testdata/insert_select/sqlite/go/models.go
+++ b/internal/endtoend/testdata/insert_select/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Name string
Ready bool
diff --git a/internal/endtoend/testdata/insert_select/sqlite/go/query.sql.go b/internal/endtoend/testdata/insert_select/sqlite/go/query.sql.go
index 8634596c04..c9fb431f7d 100644
--- a/internal/endtoend/testdata/insert_select/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/db.go b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/models.go b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/models.go
index 7e6c369476..09f8061186 100644
--- a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/query.sql.go
index 580a25a71b..fe8feb518c 100644
--- a/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select_case/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_select_invalid/mysql/query.sql b/internal/endtoend/testdata/insert_select_invalid/mysql/query.sql
index cfd90fe55d..3311b32009 100644
--- a/internal/endtoend/testdata/insert_select_invalid/mysql/query.sql
+++ b/internal/endtoend/testdata/insert_select_invalid/mysql/query.sql
@@ -1,5 +1,3 @@
-CREATE TABLE foo (bar text);
-
-- name: InsertFoo :exec
INSERT INTO foo (bar)
SELECT 1, ?, ?;
diff --git a/internal/endtoend/testdata/insert_select_invalid/mysql/schema.sql b/internal/endtoend/testdata/insert_select_invalid/mysql/schema.sql
new file mode 100644
index 0000000000..d849628fb1
--- /dev/null
+++ b/internal/endtoend/testdata/insert_select_invalid/mysql/schema.sql
@@ -0,0 +1 @@
+CREATE TABLE foo (bar text);
diff --git a/internal/endtoend/testdata/insert_select_invalid/mysql/sqlc.json b/internal/endtoend/testdata/insert_select_invalid/mysql/sqlc.json
index 0657f4db83..974aa9ff9e 100644
--- a/internal/endtoend/testdata/insert_select_invalid/mysql/sqlc.json
+++ b/internal/endtoend/testdata/insert_select_invalid/mysql/sqlc.json
@@ -5,7 +5,7 @@
"engine": "mysql",
"path": "go",
"name": "querytest",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql"
}
]
diff --git a/internal/endtoend/testdata/insert_select_invalid/mysql/stderr.txt b/internal/endtoend/testdata/insert_select_invalid/mysql/stderr.txt
index 063b2a149a..91d0b8a06c 100644
--- a/internal/endtoend/testdata/insert_select_invalid/mysql/stderr.txt
+++ b/internal/endtoend/testdata/insert_select_invalid/mysql/stderr.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:4:1: INSERT has more expressions than target columns
+query.sql:1:1: INSERT has more expressions than target columns
diff --git a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/db.go b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/models.go b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/models.go
index c3333ce131..53c974680f 100644
--- a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/query.sql.go
index 361b78e32b..5b3aff5a62 100644
--- a/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_select_param/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values/mysql/go/db.go b/internal/endtoend/testdata/insert_values/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_values/mysql/go/db.go
+++ b/internal/endtoend/testdata/insert_values/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/mysql/go/models.go b/internal/endtoend/testdata/insert_values/mysql/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values/mysql/go/models.go
+++ b/internal/endtoend/testdata/insert_values/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/mysql/go/query.sql.go b/internal/endtoend/testdata/insert_values/mysql/go/query.sql.go
index 8be44f5151..3b49a82faa 100644
--- a/internal/endtoend/testdata/insert_values/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/query.sql.go
index 84a9056297..b5bb97d7d2 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/models.go
index fd2839047d..beb6668757 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/query.sql.go
index f41eec98d4..b6d8bccbfe 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/query.sql.go
index 13738a85c1..d9eed199a1 100644
--- a/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values/sqlite/go/db.go b/internal/endtoend/testdata/insert_values/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_values/sqlite/go/db.go
+++ b/internal/endtoend/testdata/insert_values/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/sqlite/go/models.go b/internal/endtoend/testdata/insert_values/sqlite/go/models.go
index 6cb5430149..5b76baff1b 100644
--- a/internal/endtoend/testdata/insert_values/sqlite/go/models.go
+++ b/internal/endtoend/testdata/insert_values/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values/sqlite/go/query.sql.go b/internal/endtoend/testdata/insert_values/sqlite/go/query.sql.go
index c349810c8a..1b7bd6e0d0 100644
--- a/internal/endtoend/testdata/insert_values/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/db.go b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/models.go b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/models.go
index 7bf52fb0f0..7591b8852e 100644
--- a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Status struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/query.sql.go
index 63ff08c032..1921b62437 100644
--- a/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values_only/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/mysql/go/db.go b/internal/endtoend/testdata/insert_values_public/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_values_public/mysql/go/db.go
+++ b/internal/endtoend/testdata/insert_values_public/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/mysql/go/models.go b/internal/endtoend/testdata/insert_values_public/mysql/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values_public/mysql/go/models.go
+++ b/internal/endtoend/testdata/insert_values_public/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/mysql/go/query.sql.go b/internal/endtoend/testdata/insert_values_public/mysql/go/query.sql.go
index 00e2f0ed11..0853717b17 100644
--- a/internal/endtoend/testdata/insert_values_public/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values_public/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/query.sql.go
index ad19d6dcfa..c1ec327155 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/models.go
index fd2839047d..beb6668757 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/query.sql.go
index fcefeed8dd..8f7488d896 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/models.go
index e490f3a256..f9085a3a98 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/query.sql.go
index 67397a3a35..6fc9fed8ec 100644
--- a/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/insert_values_public/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/interval/pgx/v4/go/db.go b/internal/endtoend/testdata/interval/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/interval/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/interval/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/interval/pgx/v4/go/models.go b/internal/endtoend/testdata/interval/pgx/v4/go/models.go
index cdfd1e4bd0..112e5eb6c2 100644
--- a/internal/endtoend/testdata/interval/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/interval/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
Interval int64
diff --git a/internal/endtoend/testdata/interval/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/interval/pgx/v4/go/query.sql.go
index 0887de8aff..5c9f898eaa 100644
--- a/internal/endtoend/testdata/interval/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/interval/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/interval/pgx/v5/go/db.go b/internal/endtoend/testdata/interval/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/interval/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/interval/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/interval/pgx/v5/go/models.go b/internal/endtoend/testdata/interval/pgx/v5/go/models.go
index 27a7199a2d..00bc7d2695 100644
--- a/internal/endtoend/testdata/interval/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/interval/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/interval/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/interval/pgx/v5/go/query.sql.go
index 0887de8aff..5c9f898eaa 100644
--- a/internal/endtoend/testdata/interval/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/interval/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/interval/stdlib/go/db.go b/internal/endtoend/testdata/interval/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/interval/stdlib/go/db.go
+++ b/internal/endtoend/testdata/interval/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/interval/stdlib/go/models.go b/internal/endtoend/testdata/interval/stdlib/go/models.go
index cdfd1e4bd0..112e5eb6c2 100644
--- a/internal/endtoend/testdata/interval/stdlib/go/models.go
+++ b/internal/endtoend/testdata/interval/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
Interval int64
diff --git a/internal/endtoend/testdata/interval/stdlib/go/query.sql.go b/internal/endtoend/testdata/interval/stdlib/go/query.sql.go
index c626f4166e..04db44bb81 100644
--- a/internal/endtoend/testdata/interval/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/interval/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v4/query.sql b/internal/endtoend/testdata/invalid_func_args/pgx/v4/query.sql
index 46dbe9fa2d..e92c21d811 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v4/query.sql
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v4/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT random(1);
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/base.txt b/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/base.txt
index 09d46d1f95..2693a08462 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/base.txt
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/base.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(unknown) does not exist
+query.sql:2:8: function random(unknown) does not exist
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/managed-db.txt b/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/managed-db.txt
index 34430f733e..d211139c8a 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/managed-db.txt
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v4/stderr/managed-db.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(integer) does not exist
+query.sql:2:8: function random(integer) does not exist
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v5/query.sql b/internal/endtoend/testdata/invalid_func_args/pgx/v5/query.sql
index 46dbe9fa2d..e92c21d811 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v5/query.sql
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v5/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT random(1);
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/base.txt b/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/base.txt
index 09d46d1f95..2693a08462 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/base.txt
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/base.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(unknown) does not exist
+query.sql:2:8: function random(unknown) does not exist
diff --git a/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/managed-db.txt b/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/managed-db.txt
index 34430f733e..d211139c8a 100644
--- a/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/managed-db.txt
+++ b/internal/endtoend/testdata/invalid_func_args/pgx/v5/stderr/managed-db.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(integer) does not exist
+query.sql:2:8: function random(integer) does not exist
diff --git a/internal/endtoend/testdata/invalid_func_args/stdlib/query.sql b/internal/endtoend/testdata/invalid_func_args/stdlib/query.sql
index 46dbe9fa2d..e92c21d811 100644
--- a/internal/endtoend/testdata/invalid_func_args/stdlib/query.sql
+++ b/internal/endtoend/testdata/invalid_func_args/stdlib/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT random(1);
diff --git a/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/base.txt b/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/base.txt
index 09d46d1f95..2693a08462 100644
--- a/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/base.txt
+++ b/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/base.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(unknown) does not exist
+query.sql:2:8: function random(unknown) does not exist
diff --git a/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/managed-db.txt b/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/managed-db.txt
index 34430f733e..d211139c8a 100644
--- a/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/managed-db.txt
+++ b/internal/endtoend/testdata/invalid_func_args/stdlib/stderr/managed-db.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:1:8: function random(integer) does not exist
+query.sql:2:8: function random(integer) does not exist
diff --git a/internal/endtoend/testdata/invalid_group_by_reference/mysql/exec.json b/internal/endtoend/testdata/invalid_group_by_reference/mysql/exec.json
new file mode 100644
index 0000000000..0775566a14
--- /dev/null
+++ b/internal/endtoend/testdata/invalid_group_by_reference/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "meta": {
+ "invalid_schema": true
+ }
+}
+
diff --git a/internal/endtoend/testdata/invalid_group_by_reference/mysql/query.sql b/internal/endtoend/testdata/invalid_group_by_reference/mysql/query.sql
index 75a8e210fd..b036fba240 100644
--- a/internal/endtoend/testdata/invalid_group_by_reference/mysql/query.sql
+++ b/internal/endtoend/testdata/invalid_group_by_reference/mysql/query.sql
@@ -1,10 +1,3 @@
-CREATE TABLE authors (
- id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
- name text NOT NULL,
- bio text,
- UNIQUE(name)
-);
-
-- name: ListAuthors :many
SELECT *
FROM authors
diff --git a/internal/endtoend/testdata/invalid_group_by_reference/mysql/schema.sql b/internal/endtoend/testdata/invalid_group_by_reference/mysql/schema.sql
new file mode 100644
index 0000000000..5333d484a6
--- /dev/null
+++ b/internal/endtoend/testdata/invalid_group_by_reference/mysql/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/invalid_group_by_reference/mysql/sqlc.json b/internal/endtoend/testdata/invalid_group_by_reference/mysql/sqlc.json
index 534b7e24e9..0390f67889 100644
--- a/internal/endtoend/testdata/invalid_group_by_reference/mysql/sqlc.json
+++ b/internal/endtoend/testdata/invalid_group_by_reference/mysql/sqlc.json
@@ -5,7 +5,7 @@
"path": "go",
"engine": "mysql",
"name": "querytest",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql"
}
]
diff --git a/internal/endtoend/testdata/invalid_group_by_reference/mysql/stderr.txt b/internal/endtoend/testdata/invalid_group_by_reference/mysql/stderr.txt
index 1fc9998d4c..d686d4f4d8 100644
--- a/internal/endtoend/testdata/invalid_group_by_reference/mysql/stderr.txt
+++ b/internal/endtoend/testdata/invalid_group_by_reference/mysql/stderr.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:11:10: column reference "invalid_reference" not found
+query.sql:4:10: column reference "invalid_reference" not found
diff --git a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/db.go b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/db.go
index 931141a6ff..0e4c3f4a0b 100644
--- a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/db.go
+++ b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/models.go b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/models.go
index b55eb271bf..f111047f1c 100644
--- a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/models.go
+++ b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/query.sql.go b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/query.sql.go
index bc2ff2fe58..3cf7661d60 100644
--- a/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/query.sql.go
+++ b/internal/endtoend/testdata/invalid_insert_unknown_column/postgresql/pgx/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/invalid_named_params/mysql/query.sql b/internal/endtoend/testdata/invalid_named_params/mysql/query.sql
index 1ea4a9e5dc..349d2c2ccb 100644
--- a/internal/endtoend/testdata/invalid_named_params/mysql/query.sql
+++ b/internal/endtoend/testdata/invalid_named_params/mysql/query.sql
@@ -1,8 +1,3 @@
-CREATE TABLE authors (
- id BIGINT PRIMARY KEY,
- bio TEXT
-);
-
-- name: ListAuthors :one
SELECT *
FROM authors
diff --git a/internal/endtoend/testdata/invalid_named_params/mysql/schema.sql b/internal/endtoend/testdata/invalid_named_params/mysql/schema.sql
new file mode 100644
index 0000000000..9804a5cd1b
--- /dev/null
+++ b/internal/endtoend/testdata/invalid_named_params/mysql/schema.sql
@@ -0,0 +1,4 @@
+CREATE TABLE authors (
+ id BIGINT PRIMARY KEY,
+ bio TEXT
+);
diff --git a/internal/endtoend/testdata/invalid_named_params/mysql/sqlc.json b/internal/endtoend/testdata/invalid_named_params/mysql/sqlc.json
index 534b7e24e9..0390f67889 100644
--- a/internal/endtoend/testdata/invalid_named_params/mysql/sqlc.json
+++ b/internal/endtoend/testdata/invalid_named_params/mysql/sqlc.json
@@ -5,7 +5,7 @@
"path": "go",
"engine": "mysql",
"name": "querytest",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql"
}
]
diff --git a/internal/endtoend/testdata/invalid_table_alias/mysql/query.sql b/internal/endtoend/testdata/invalid_table_alias/mysql/query.sql
index 22482fb724..52f5aae051 100644
--- a/internal/endtoend/testdata/invalid_table_alias/mysql/query.sql
+++ b/internal/endtoend/testdata/invalid_table_alias/mysql/query.sql
@@ -1,10 +1,3 @@
--- https://github.com/sqlc-dev/sqlc/issues/437
-CREATE TABLE authors (
- id INT PRIMARY KEY,
- name VARCHAR(255) NOT NULL,
- bio text
-);
-
-- name: GetAuthor :one
SELECT *
FROM authors a
diff --git a/internal/endtoend/testdata/invalid_table_alias/mysql/schema.sql b/internal/endtoend/testdata/invalid_table_alias/mysql/schema.sql
new file mode 100644
index 0000000000..ee27f30abe
--- /dev/null
+++ b/internal/endtoend/testdata/invalid_table_alias/mysql/schema.sql
@@ -0,0 +1,7 @@
+-- https://github.com/sqlc-dev/sqlc/issues/437
+CREATE TABLE authors (
+ id INT PRIMARY KEY,
+ name VARCHAR(255) NOT NULL,
+ bio text
+);
+
diff --git a/internal/endtoend/testdata/invalid_table_alias/mysql/sqlc.json b/internal/endtoend/testdata/invalid_table_alias/mysql/sqlc.json
index 534b7e24e9..0390f67889 100644
--- a/internal/endtoend/testdata/invalid_table_alias/mysql/sqlc.json
+++ b/internal/endtoend/testdata/invalid_table_alias/mysql/sqlc.json
@@ -5,7 +5,7 @@
"path": "go",
"engine": "mysql",
"name": "querytest",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql"
}
]
diff --git a/internal/endtoend/testdata/invalid_table_alias/mysql/stderr.txt b/internal/endtoend/testdata/invalid_table_alias/mysql/stderr.txt
index 810c893a70..1eddeaac99 100644
--- a/internal/endtoend/testdata/invalid_table_alias/mysql/stderr.txt
+++ b/internal/endtoend/testdata/invalid_table_alias/mysql/stderr.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:11:9: table alias "p" does not exist
+query.sql:4:9: table alias "p" does not exist
diff --git a/internal/endtoend/testdata/invalid_table_alias/postgresql/exec.json b/internal/endtoend/testdata/invalid_table_alias/postgresql/exec.json
new file mode 100644
index 0000000000..9f208fb2df
--- /dev/null
+++ b/internal/endtoend/testdata/invalid_table_alias/postgresql/exec.json
@@ -0,0 +1,3 @@
+{
+ "os": ["darwin", "linux"]
+}
diff --git a/internal/endtoend/testdata/join_alias/mysql/go/db.go b/internal/endtoend/testdata/join_alias/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_alias/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_alias/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/mysql/go/models.go b/internal/endtoend/testdata/join_alias/mysql/go/models.go
index 2584334a8e..91782a77be 100644
--- a/internal/endtoend/testdata/join_alias/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_alias/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/mysql/go/query.sql.go b/internal/endtoend/testdata/join_alias/mysql/go/query.sql.go
index 19fa3640c5..a777926833 100644
--- a/internal/endtoend/testdata/join_alias/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_alias/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/models.go
index 37c978d27d..3127b64aa8 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/query.sql.go
index 5106b04641..82bfdee47f 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/models.go
index fb4ed1a72a..e9f766614c 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/query.sql.go
index 51c5c47a81..d7c1c7bc4e 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/models.go
index 37c978d27d..3127b64aa8 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/query.sql.go
index 559039a532..3b875a0ed2 100644
--- a/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_alias/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_alias/sqlite/go/db.go b/internal/endtoend/testdata/join_alias/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_alias/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_alias/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/sqlite/go/models.go b/internal/endtoend/testdata/join_alias/sqlite/go/models.go
index 61656936d7..6ac0246cdc 100644
--- a/internal/endtoend/testdata/join_alias/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_alias/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_alias/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_alias/sqlite/go/query.sql.go
index 4a3396784d..94cb0e5a26 100644
--- a/internal/endtoend/testdata/join_alias/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_alias/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_clauses_order/postgresql/go/db.go b/internal/endtoend/testdata/join_clauses_order/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_clauses_order/postgresql/go/db.go
+++ b/internal/endtoend/testdata/join_clauses_order/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_clauses_order/postgresql/go/models.go b/internal/endtoend/testdata/join_clauses_order/postgresql/go/models.go
index 136942ed45..1bf46db0dd 100644
--- a/internal/endtoend/testdata/join_clauses_order/postgresql/go/models.go
+++ b/internal/endtoend/testdata/join_clauses_order/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type A struct {
ID int64
A string
diff --git a/internal/endtoend/testdata/join_clauses_order/postgresql/go/query.sql.go b/internal/endtoend/testdata/join_clauses_order/postgresql/go/query.sql.go
index d2cae43bc5..bb72be6724 100644
--- a/internal/endtoend/testdata/join_clauses_order/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_clauses_order/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_from/mysql/go/db.go b/internal/endtoend/testdata/join_from/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_from/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_from/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_from/mysql/go/models.go b/internal/endtoend/testdata/join_from/mysql/go/models.go
index eff8ff5dff..5eb75edfb0 100644
--- a/internal/endtoend/testdata/join_from/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_from/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Login string
}
diff --git a/internal/endtoend/testdata/join_from/mysql/go/query.sql.go b/internal/endtoend/testdata/join_from/mysql/go/query.sql.go
index 3c90712dfc..a48d58aea9 100644
--- a/internal/endtoend/testdata/join_from/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_from/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/models.go
index eff8ff5dff..5eb75edfb0 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Login string
}
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/query.sql.go
index 007beaf35c..e8c2efe37e 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/models.go
index eff8ff5dff..5eb75edfb0 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Login string
}
diff --git a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/query.sql.go
index 007beaf35c..e8c2efe37e 100644
--- a/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/join_from/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/models.go
index eff8ff5dff..5eb75edfb0 100644
--- a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Login string
}
diff --git a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/query.sql.go
index 5de80236dd..28eb2978b7 100644
--- a/internal/endtoend/testdata/join_from/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_from/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_from/sqlite/go/db.go b/internal/endtoend/testdata/join_from/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_from/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_from/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_from/sqlite/go/models.go b/internal/endtoend/testdata/join_from/sqlite/go/models.go
index eff8ff5dff..5eb75edfb0 100644
--- a/internal/endtoend/testdata/join_from/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_from/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Login string
}
diff --git a/internal/endtoend/testdata/join_from/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_from/sqlite/go/query.sql.go
index 3c90712dfc..a48d58aea9 100644
--- a/internal/endtoend/testdata/join_from/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_from/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_full/postgresql/go/db.go b/internal/endtoend/testdata/join_full/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_full/postgresql/go/db.go
+++ b/internal/endtoend/testdata/join_full/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_full/postgresql/go/models.go b/internal/endtoend/testdata/join_full/postgresql/go/models.go
index 9c244b9115..f49da6f044 100644
--- a/internal/endtoend/testdata/join_full/postgresql/go/models.go
+++ b/internal/endtoend/testdata/join_full/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_full/postgresql/go/query.sql.go b/internal/endtoend/testdata/join_full/postgresql/go/query.sql.go
index ef64f06678..1d3c878814 100644
--- a/internal/endtoend/testdata/join_full/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_full/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/models.go
index a896b6f5f7..9f35d6f7d0 100644
--- a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Email string
}
diff --git a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/query.sql.go
index 7f4855ed8e..bda1b474a9 100644
--- a/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_group_by_alias/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_inner/postgresql/go/db.go b/internal/endtoend/testdata/join_inner/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_inner/postgresql/go/db.go
+++ b/internal/endtoend/testdata/join_inner/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_inner/postgresql/go/models.go b/internal/endtoend/testdata/join_inner/postgresql/go/models.go
index 33894e6a41..fc60328d04 100644
--- a/internal/endtoend/testdata/join_inner/postgresql/go/models.go
+++ b/internal/endtoend/testdata/join_inner/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_inner/postgresql/go/query.sql.go b/internal/endtoend/testdata/join_inner/postgresql/go/query.sql.go
index d38268bc6d..24c49c9827 100644
--- a/internal/endtoend/testdata/join_inner/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_inner/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left/mysql/go/db.go b/internal/endtoend/testdata/join_left/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_left/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/mysql/go/models.go b/internal/endtoend/testdata/join_left/mysql/go/models.go
index 1084715cc7..4895f75c32 100644
--- a/internal/endtoend/testdata/join_left/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_left/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/mysql/go/query.sql.go b/internal/endtoend/testdata/join_left/mysql/go/query.sql.go
index e000060bf3..02b871de96 100644
--- a/internal/endtoend/testdata/join_left/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left/mysql/schema.sql b/internal/endtoend/testdata/join_left/mysql/schema.sql
index a73a02ca00..9b15eaea36 100644
--- a/internal/endtoend/testdata/join_left/mysql/schema.sql
+++ b/internal/endtoend/testdata/join_left/mysql/schema.sql
@@ -28,11 +28,11 @@ CREATE TABLE super_authors (
CREATE TABLE users_2 (
user_id INT PRIMARY KEY,
user_nickname VARCHAR(30) UNIQUE NOT NULL,
- user_email TEXT UNIQUE NOT NULL,
+ user_email VARCHAR(20) UNIQUE NOT NULL,
user_display_name TEXT NOT NULL,
user_password TEXT NULL,
- user_google_id TEXT UNIQUE NULL,
- user_apple_id TEXT UNIQUE NULL,
+ user_google_id VARCHAR(20) UNIQUE NULL,
+ user_apple_id VARCHAR(20) UNIQUE NULL,
user_bio VARCHAR(160) NOT NULL DEFAULT '',
user_created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
user_avatar_id INT UNIQUE NULL
diff --git a/internal/endtoend/testdata/join_left/postgresql/go/db.go b/internal/endtoend/testdata/join_left/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left/postgresql/go/db.go
+++ b/internal/endtoend/testdata/join_left/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/postgresql/go/models.go b/internal/endtoend/testdata/join_left/postgresql/go/models.go
index 1a981e1fc5..1e91ae2f80 100644
--- a/internal/endtoend/testdata/join_left/postgresql/go/models.go
+++ b/internal/endtoend/testdata/join_left/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/postgresql/go/query.sql.go b/internal/endtoend/testdata/join_left/postgresql/go/query.sql.go
index fa2e3c0101..0e3091c7a9 100644
--- a/internal/endtoend/testdata/join_left/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left/sqlite/go/db.go b/internal/endtoend/testdata/join_left/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_left/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/sqlite/go/models.go b/internal/endtoend/testdata/join_left/sqlite/go/models.go
index 1de733f0bb..903221ead1 100644
--- a/internal/endtoend/testdata/join_left/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_left/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_left/sqlite/go/query.sql.go
index 5dddea00e7..92fb984c9b 100644
--- a/internal/endtoend/testdata/join_left/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/mysql/go/db.go b/internal/endtoend/testdata/join_left_same_table/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left_same_table/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_left_same_table/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/mysql/go/models.go b/internal/endtoend/testdata/join_left_same_table/mysql/go/models.go
index 2ccee915df..75943c31c2 100644
--- a/internal/endtoend/testdata/join_left_same_table/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_left_same_table/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/mysql/go/query.sql.go b/internal/endtoend/testdata/join_left_same_table/mysql/go/query.sql.go
index c0347081b3..827c5d1a86 100644
--- a/internal/endtoend/testdata/join_left_same_table/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left_same_table/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/postgres/go/db.go b/internal/endtoend/testdata/join_left_same_table/postgres/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left_same_table/postgres/go/db.go
+++ b/internal/endtoend/testdata/join_left_same_table/postgres/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/postgres/go/models.go b/internal/endtoend/testdata/join_left_same_table/postgres/go/models.go
index 2ccee915df..75943c31c2 100644
--- a/internal/endtoend/testdata/join_left_same_table/postgres/go/models.go
+++ b/internal/endtoend/testdata/join_left_same_table/postgres/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/postgres/go/query.sql.go b/internal/endtoend/testdata/join_left_same_table/postgres/go/query.sql.go
index d18b74ba7f..11c6aaeb01 100644
--- a/internal/endtoend/testdata/join_left_same_table/postgres/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left_same_table/postgres/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/sqlite/go/db.go b/internal/endtoend/testdata/join_left_same_table/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_left_same_table/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_left_same_table/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/sqlite/go/models.go b/internal/endtoend/testdata/join_left_same_table/sqlite/go/models.go
index eff539ca2a..58faf54f02 100644
--- a/internal/endtoend/testdata/join_left_same_table/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_left_same_table/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_same_table/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_left_same_table/sqlite/go/query.sql.go
index d510a885f7..ddd49cebb4 100644
--- a/internal/endtoend/testdata/join_left_same_table/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left_same_table/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/db.go b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/models.go b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/models.go
index 1abc5cd114..8ced485579 100644
--- a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
FooID int64
Info string
diff --git a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/query.sql.go
index 541e4fa09c..bdba004a0f 100644
--- a/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/join_left_table_alias/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/db.go b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/models.go b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/models.go
index c3333ce131..53c974680f 100644
--- a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/query.sql.go
index c55b43dc80..406d5d13b1 100644
--- a/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/join_order_by/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/models.go
index a896b6f5f7..9f35d6f7d0 100644
--- a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Email string
}
diff --git a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/query.sql.go
index f96a887ad5..3665bbd883 100644
--- a/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_order_by_alias/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_right/mysql/go/db.go b/internal/endtoend/testdata/join_right/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_right/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_right/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_right/mysql/go/models.go b/internal/endtoend/testdata/join_right/mysql/go/models.go
index 1f9e28fe3e..f49da6f044 100644
--- a/internal/endtoend/testdata/join_right/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_right/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
@@ -9,10 +9,10 @@ import (
)
type Bar struct {
- ID uint64
+ ID int32
}
type Foo struct {
- ID uint64
+ ID int32
BarID sql.NullInt32
}
diff --git a/internal/endtoend/testdata/join_right/mysql/go/query.sql.go b/internal/endtoend/testdata/join_right/mysql/go/query.sql.go
index 1ca049585f..e6867b96e5 100644
--- a/internal/endtoend/testdata/join_right/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_right/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -18,12 +18,12 @@ WHERE f.id = ?
`
type RightJoinRow struct {
- ID sql.NullInt64
+ ID sql.NullInt32
BarID sql.NullInt32
- ID_2 uint64
+ ID_2 int32
}
-func (q *Queries) RightJoin(ctx context.Context, id uint64) ([]RightJoinRow, error) {
+func (q *Queries) RightJoin(ctx context.Context, id int32) ([]RightJoinRow, error) {
rows, err := q.db.QueryContext(ctx, rightJoin, id)
if err != nil {
return nil, err
diff --git a/internal/endtoend/testdata/join_right/mysql/schema.sql b/internal/endtoend/testdata/join_right/mysql/schema.sql
index 0559fc8ab8..f0f2cb1685 100644
--- a/internal/endtoend/testdata/join_right/mysql/schema.sql
+++ b/internal/endtoend/testdata/join_right/mysql/schema.sql
@@ -1,3 +1,8 @@
-CREATE TABLE foo (id serial not null, bar_id int references bar(id));
-CREATE TABLE bar (id serial not null);
+CREATE TABLE bar (
+ id integer not null,
+ UNIQUE(id)
+);
+
+CREATE TABLE foo (id integer not null, bar_id integer references bar(id));
+
diff --git a/internal/endtoend/testdata/join_right/postgresql/go/db.go b/internal/endtoend/testdata/join_right/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_right/postgresql/go/db.go
+++ b/internal/endtoend/testdata/join_right/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_right/postgresql/go/models.go b/internal/endtoend/testdata/join_right/postgresql/go/models.go
index 9c244b9115..f49da6f044 100644
--- a/internal/endtoend/testdata/join_right/postgresql/go/models.go
+++ b/internal/endtoend/testdata/join_right/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_right/postgresql/go/query.sql.go b/internal/endtoend/testdata/join_right/postgresql/go/query.sql.go
index f3320caa03..176b9a9488 100644
--- a/internal/endtoend/testdata/join_right/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_right/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/mysql/go/db.go b/internal/endtoend/testdata/join_table_name/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_table_name/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_table_name/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/mysql/go/models.go b/internal/endtoend/testdata/join_table_name/mysql/go/models.go
index 33a3b8dacc..1e8fe9d351 100644
--- a/internal/endtoend/testdata/join_table_name/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_table_name/mysql/go/models.go
@@ -1,16 +1,18 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
+import (
+ "database/sql"
+)
type Bar struct {
- ID uint64
+ ID int32
}
type Foo struct {
- ID uint64
- Bar uint64
+ ID int32
+ Bar sql.NullInt32
}
diff --git a/internal/endtoend/testdata/join_table_name/mysql/go/query.sql.go b/internal/endtoend/testdata/join_table_name/mysql/go/query.sql.go
index feda4a2d5c..2f459e5991 100644
--- a/internal/endtoend/testdata/join_table_name/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_table_name/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -17,13 +17,13 @@ WHERE bar.id = ? AND foo.id = ?
`
type TableNameParams struct {
- ID uint64
- ID_2 uint64
+ ID int32
+ ID_2 int32
}
-func (q *Queries) TableName(ctx context.Context, arg TableNameParams) (uint64, error) {
+func (q *Queries) TableName(ctx context.Context, arg TableNameParams) (int32, error) {
row := q.db.QueryRowContext(ctx, tableName, arg.ID, arg.ID_2)
- var id uint64
+ var id int32
err := row.Scan(&id)
return id, err
}
diff --git a/internal/endtoend/testdata/join_table_name/mysql/schema.sql b/internal/endtoend/testdata/join_table_name/mysql/schema.sql
index b0f5adf952..f54c3b485d 100644
--- a/internal/endtoend/testdata/join_table_name/mysql/schema.sql
+++ b/internal/endtoend/testdata/join_table_name/mysql/schema.sql
@@ -1,3 +1,7 @@
-CREATE TABLE bar (id serial not null);
-CREATE TABLE foo (id serial not null, bar serial references bar(id));
+CREATE TABLE bar (
+ id integer not null,
+ UNIQUE (id)
+);
+
+CREATE TABLE foo (id integer not null, bar integer references bar(id));
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/models.go
index 256d6a5097..1e8fe9d351 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/query.sql.go
index e4af536006..e30077395a 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/models.go
index 074cbe48bb..79fd8c7325 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/query.sql.go
index e4af536006..e30077395a 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/models.go
index 256d6a5097..1e8fe9d351 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/query.sql.go
index 6990b4bdd7..48fa6878df 100644
--- a/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_table_name/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/sqlite/go/db.go b/internal/endtoend/testdata/join_table_name/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_table_name/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_table_name/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/sqlite/go/models.go b/internal/endtoend/testdata/join_table_name/sqlite/go/models.go
index 0d0e800a7b..f73f054b4f 100644
--- a/internal/endtoend/testdata/join_table_name/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_table_name/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_table_name/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_table_name/sqlite/go/query.sql.go
index d10f7e40b1..ee35ae2032 100644
--- a/internal/endtoend/testdata/join_table_name/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_table_name/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/mysql/go/db.go b/internal/endtoend/testdata/join_two_tables/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_two_tables/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_two_tables/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/mysql/go/models.go b/internal/endtoend/testdata/join_two_tables/mysql/go/models.go
index 84d8484564..3b1c418ad6 100644
--- a/internal/endtoend/testdata/join_two_tables/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_two_tables/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
}
@@ -16,5 +14,5 @@ type Baz struct {
type Foo struct {
BarID uint64
- BazID uint64
+ BazID int32
}
diff --git a/internal/endtoend/testdata/join_two_tables/mysql/go/query.sql.go b/internal/endtoend/testdata/join_two_tables/mysql/go/query.sql.go
index 19be2c0700..21acf50fd0 100644
--- a/internal/endtoend/testdata/join_two_tables/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_two_tables/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/mysql/schema.sql b/internal/endtoend/testdata/join_two_tables/mysql/schema.sql
index 86eb87a1ff..d8b5e500cf 100644
--- a/internal/endtoend/testdata/join_two_tables/mysql/schema.sql
+++ b/internal/endtoend/testdata/join_two_tables/mysql/schema.sql
@@ -1,4 +1,4 @@
-CREATE TABLE foo (bar_id serial not null, baz_id serial not null);
+CREATE TABLE foo (bar_id serial not null, baz_id integer not null);
CREATE TABLE bar (id serial not null);
CREATE TABLE baz (id serial not null);
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/models.go
index b85674def9..aca8f35733 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/query.sql.go
index facecea68a..73cc1e5aeb 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/models.go
index b85674def9..aca8f35733 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/query.sql.go
index facecea68a..73cc1e5aeb 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/models.go
index b85674def9..aca8f35733 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/query.sql.go
index 19be2c0700..21acf50fd0 100644
--- a/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_two_tables/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/sqlite/go/db.go b/internal/endtoend/testdata/join_two_tables/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_two_tables/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_two_tables/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_two_tables/sqlite/go/models.go b/internal/endtoend/testdata/join_two_tables/sqlite/go/models.go
index 2020b87080..217b0337a7 100644
--- a/internal/endtoend/testdata/join_two_tables/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_two_tables/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/join_two_tables/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_two_tables/sqlite/go/query.sql.go
index 19be2c0700..21acf50fd0 100644
--- a/internal/endtoend/testdata/join_two_tables/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_two_tables/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_update/postgresql/pgx/go/db.go b/internal/endtoend/testdata/join_update/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_update/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/join_update/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_update/postgresql/pgx/go/models.go b/internal/endtoend/testdata/join_update/postgresql/pgx/go/models.go
index 16502ad2c7..2198aa3eb2 100644
--- a/internal/endtoend/testdata/join_update/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/join_update/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_update/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/join_update/postgresql/pgx/go/query.sql.go
index 6af26c6540..27994c660f 100644
--- a/internal/endtoend/testdata/join_update/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/join_update/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_using/postgresql/pgx/go/db.go b/internal/endtoend/testdata/join_using/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_using/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/join_using/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_using/postgresql/pgx/go/models.go b/internal/endtoend/testdata/join_using/postgresql/pgx/go/models.go
index a6be5f35b5..e24055879a 100644
--- a/internal/endtoend/testdata/join_using/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/join_using/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type T1 struct {
Fk int32
}
diff --git a/internal/endtoend/testdata/join_using/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/join_using/postgresql/pgx/go/query.sql.go
index d43017804c..d92802adf8 100644
--- a/internal/endtoend/testdata/join_using/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/join_using/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/mysql/go/db.go b/internal/endtoend/testdata/join_where_clause/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_where_clause/mysql/go/db.go
+++ b/internal/endtoend/testdata/join_where_clause/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/mysql/go/models.go b/internal/endtoend/testdata/join_where_clause/mysql/go/models.go
index 6eaf92410d..858b8f4c74 100644
--- a/internal/endtoend/testdata/join_where_clause/mysql/go/models.go
+++ b/internal/endtoend/testdata/join_where_clause/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
Owner string
diff --git a/internal/endtoend/testdata/join_where_clause/mysql/go/query.sql.go b/internal/endtoend/testdata/join_where_clause/mysql/go/query.sql.go
index 6f1a7517df..9f37c6272a 100644
--- a/internal/endtoend/testdata/join_where_clause/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/join_where_clause/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/models.go
index a311af3ff7..a9b6c4a120 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Owner string
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/query.sql.go
index 1330234cfa..d5dd7cfd04 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/models.go
index a311af3ff7..a9b6c4a120 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Owner string
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/query.sql.go
index 1330234cfa..d5dd7cfd04 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/models.go
index a311af3ff7..a9b6c4a120 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Owner string
diff --git a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/query.sql.go
index 32591fea8c..c7296d46e0 100644
--- a/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/join_where_clause/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/sqlite/go/db.go b/internal/endtoend/testdata/join_where_clause/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/join_where_clause/sqlite/go/db.go
+++ b/internal/endtoend/testdata/join_where_clause/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/join_where_clause/sqlite/go/models.go b/internal/endtoend/testdata/join_where_clause/sqlite/go/models.go
index e34d00af06..db98fe788b 100644
--- a/internal/endtoend/testdata/join_where_clause/sqlite/go/models.go
+++ b/internal/endtoend/testdata/join_where_clause/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
Owner string
diff --git a/internal/endtoend/testdata/join_where_clause/sqlite/go/query.sql.go b/internal/endtoend/testdata/join_where_clause/sqlite/go/query.sql.go
index 630ac6dbbc..8c30a0d14b 100644
--- a/internal/endtoend/testdata/join_where_clause/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/join_where_clause/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json/mysql/go/copyfrom.go b/internal/endtoend/testdata/json/mysql/go/copyfrom.go
new file mode 100644
index 0000000000..4e626d6ff8
--- /dev/null
+++ b/internal/endtoend/testdata/json/mysql/go/copyfrom.go
@@ -0,0 +1,51 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: copyfrom.go
+
+package querytest
+
+import (
+ "context"
+ "fmt"
+ "io"
+ "sync/atomic"
+
+ "github.com/go-sql-driver/mysql"
+ "github.com/hexon/mysqltsv"
+)
+
+var readerHandlerSequenceForBulkInsert uint32 = 1
+
+func convertRowsForBulkInsert(w *io.PipeWriter, arg []BulkInsertParams) {
+ e := mysqltsv.NewEncoder(w, 2, nil)
+ for _, row := range arg {
+ e.AppendBytes(row.A)
+ e.AppendBytes(row.B)
+ }
+ w.CloseWithError(e.Close())
+}
+
+// BulkInsert uses MySQL's LOAD DATA LOCAL INFILE and is not atomic.
+//
+// Errors and duplicate keys are treated as warnings and insertion will
+// continue, even without an error for some cases. Use this in a transaction
+// and use SHOW WARNINGS to check for any problems and roll back if you want to.
+//
+// Check the documentation for more information:
+// https://dev.mysql.com/doc/refman/8.0/en/load-data.html#load-data-error-handling
+func (q *Queries) BulkInsert(ctx context.Context, arg []BulkInsertParams) (int64, error) {
+ pr, pw := io.Pipe()
+ defer pr.Close()
+ rh := fmt.Sprintf("BulkInsert_%d", atomic.AddUint32(&readerHandlerSequenceForBulkInsert, 1))
+ mysql.RegisterReaderHandler(rh, func() io.Reader { return pr })
+ defer mysql.DeregisterReaderHandler(rh)
+ go convertRowsForBulkInsert(pw, arg)
+ // The string interpolation is necessary because LOAD DATA INFILE requires
+ // the file name to be given as a literal string.
+ result, err := q.db.ExecContext(ctx, fmt.Sprintf("LOAD DATA LOCAL INFILE '%s' INTO TABLE `foo` %s (a, b)", "Reader::"+rh, mysqltsv.Escaping))
+ if err != nil {
+ return 0, err
+ }
+ return result.RowsAffected()
+}
diff --git a/internal/endtoend/testdata/json/mysql/go/db.go b/internal/endtoend/testdata/json/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json/mysql/go/db.go
+++ b/internal/endtoend/testdata/json/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/mysql/go/models.go b/internal/endtoend/testdata/json/mysql/go/models.go
index add5b1ee33..f0c7d1d47b 100644
--- a/internal/endtoend/testdata/json/mysql/go/models.go
+++ b/internal/endtoend/testdata/json/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/mysql/go/query.sql.go b/internal/endtoend/testdata/json/mysql/go/query.sql.go
index 4913a96eff..a19e0e4aab 100644
--- a/internal/endtoend/testdata/json/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/json/mysql/go/query.sql.go
@@ -1,14 +1,24 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
import (
"context"
+ "encoding/json"
)
+const bulkInsert = `-- name: BulkInsert :copyfrom
+INSERT INTO foo (a, b) VALUES (?, ?)
+`
+
+type BulkInsertParams struct {
+ A json.RawMessage
+ B json.RawMessage
+}
+
const selectFoo = `-- name: SelectFoo :exec
SELECT a, b FROM foo
`
diff --git a/internal/endtoend/testdata/json/mysql/query.sql b/internal/endtoend/testdata/json/mysql/query.sql
index a8629cc2ae..927e597562 100644
--- a/internal/endtoend/testdata/json/mysql/query.sql
+++ b/internal/endtoend/testdata/json/mysql/query.sql
@@ -1,2 +1,5 @@
-- name: SelectFoo :exec
SELECT * FROM foo;
+
+-- name: BulkInsert :copyfrom
+INSERT INTO foo (a, b) VALUES (?, ?);
diff --git a/internal/endtoend/testdata/json/mysql/sqlc.json b/internal/endtoend/testdata/json/mysql/sqlc.json
index e41c39e8b3..b1127e200f 100644
--- a/internal/endtoend/testdata/json/mysql/sqlc.json
+++ b/internal/endtoend/testdata/json/mysql/sqlc.json
@@ -4,6 +4,7 @@
{
"path": "go",
"engine": "mysql",
+ "sql_driver": "github.com/go-sql-driver/mysql",
"name": "querytest",
"schema": "schema.sql",
"queries": "query.sql"
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/models.go
index 505cbb9cc9..f4bd1d1531 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/query.sql.go
index aa1dd2c2a0..3293175934 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/models.go
index 74cbf01ee0..1932ce7f53 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
A []byte
B []byte
diff --git a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/query.sql.go
index aa1dd2c2a0..3293175934 100644
--- a/internal/endtoend/testdata/json/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/json/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json/postgresql/stdlib/go/models.go
index 80421648a7..0feb385ba9 100644
--- a/internal/endtoend/testdata/json/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json/postgresql/stdlib/go/query.sql.go
index a2c7d4a99a..fe9febf8b6 100644
--- a/internal/endtoend/testdata/json/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/db.go b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/models.go b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/models.go
index 4faff55239..7671b865e9 100644
--- a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type SysAction struct {
ID int64
Code string
diff --git a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/query.sql.go
index c96d1a7773..e8cfe37504 100644
--- a/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/json_array_elements/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/query.sql.go
index cbd0a6605a..8255c2216d 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/query.sql.go
index 0641e26c28..0938fba823 100644
--- a/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/json_build/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/query.sql.go
index 2de111f7e8..68d37e6932 100644
--- a/internal/endtoend/testdata/json_build/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_build/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/db.go b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/models.go b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/models.go
index 9917106129..74094fd745 100644
--- a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int32
Metadata []byte
diff --git a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/query.sql.go
index d347952d99..76c1f761ab 100644
--- a/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/json_param_type/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_param_type/sqlite/go/db.go b/internal/endtoend/testdata/json_param_type/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json_param_type/sqlite/go/db.go
+++ b/internal/endtoend/testdata/json_param_type/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_param_type/sqlite/go/models.go b/internal/endtoend/testdata/json_param_type/sqlite/go/models.go
index 65459db23f..d498cc503e 100644
--- a/internal/endtoend/testdata/json_param_type/sqlite/go/models.go
+++ b/internal/endtoend/testdata/json_param_type/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_param_type/sqlite/go/query.sql.go b/internal/endtoend/testdata/json_param_type/sqlite/go/query.sql.go
index 0d2c9fc1f1..2b29e97a61 100644
--- a/internal/endtoend/testdata/json_param_type/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/json_param_type/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/models.go
index ddac642d8f..c453c44a82 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/models.go
index 4913afcced..c9a25cc09b 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/models.go
index ddac642d8f..c453c44a82 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/query.sql.go
index 171ba7f94c..64a0e4ae59 100644
--- a/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/camel_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/models.go
index b9408f2a95..42d1512298 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/models.go
index 7fcdd91792..f9eb8842e0 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/models.go
index b9408f2a95..42d1512298 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/query.sql.go
index 171ba7f94c..64a0e4ae59 100644
--- a/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/pascal_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/models.go
index 54d53b25be..ed54fcc159 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/models.go
index b82fc64b23..e8edf6790f 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/query.sql.go
index ceedbc65e4..cb10d7ee76 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/models.go
index 54d53b25be..ed54fcc159 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/query.sql.go
index 171ba7f94c..64a0e4ae59 100644
--- a/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags/snake_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/models.go
index 9f0b3aab3e..c0deba63cf 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/query.sql.go
index 945987bcd1..2f6976d586 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/camel_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/models.go
index 089759c274..ba1b89bcf4 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/query.sql.go
index 945987bcd1..2f6976d586 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/none/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/models.go
index 0cb37e6274..b5059efc65 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/query.sql.go
index 945987bcd1..2f6976d586 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/pascal_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/models.go
index 089759c274..ba1b89bcf4 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/query.sql.go
index 945987bcd1..2f6976d586 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/snake_case/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/models.go
index 089759c274..ba1b89bcf4 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/query.sql.go
index 945987bcd1..2f6976d586 100644
--- a/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/json_tags_null_enum/v2_config/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/jsonb/pgx/go/db.go b/internal/endtoend/testdata/jsonb/pgx/go/db.go
new file mode 100644
index 0000000000..e83d6a948c
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/go/db.go
@@ -0,0 +1,32 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgconn"
+)
+
+type DBTX interface {
+ Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
+ Query(context.Context, string, ...interface{}) (pgx.Rows, error)
+ QueryRow(context.Context, string, ...interface{}) pgx.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx pgx.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/jsonb/pgx/go/models.go b/internal/endtoend/testdata/jsonb/pgx/go/models.go
new file mode 100644
index 0000000000..1932ce7f53
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/go/models.go
@@ -0,0 +1,12 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type Foo struct {
+ A []byte
+ B []byte
+ C []byte
+ D []byte
+}
diff --git a/internal/endtoend/testdata/jsonb/pgx/go/query.sql.go b/internal/endtoend/testdata/jsonb/pgx/go/query.sql.go
new file mode 100644
index 0000000000..1d7532f6ec
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/go/query.sql.go
@@ -0,0 +1,50 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const insertFoo = `-- name: InsertFoo :exec
+INSERT INTO foo (
+ a,
+ b,
+ c,
+ d
+) VALUES (
+ $1,
+ $2,
+ $3,
+ $4
+) RETURNING a, b, c, d
+`
+
+type InsertFooParams struct {
+ A []byte
+ B []byte
+ C []byte
+ D []byte
+}
+
+func (q *Queries) InsertFoo(ctx context.Context, arg InsertFooParams) error {
+ _, err := q.db.Exec(ctx, insertFoo,
+ arg.A,
+ arg.B,
+ arg.C,
+ arg.D,
+ )
+ return err
+}
+
+const selectFoo = `-- name: SelectFoo :exec
+SELECT a, b, c, d FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) error {
+ _, err := q.db.Exec(ctx, selectFoo)
+ return err
+}
diff --git a/internal/endtoend/testdata/jsonb/pgx/query.sql b/internal/endtoend/testdata/jsonb/pgx/query.sql
new file mode 100644
index 0000000000..6959bd1a70
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/query.sql
@@ -0,0 +1,15 @@
+-- name: InsertFoo :exec
+INSERT INTO foo (
+ a,
+ b,
+ c,
+ d
+) VALUES (
+ @a,
+ @b,
+ @c,
+ @d
+) RETURNING *;
+
+-- name: SelectFoo :exec
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/jsonb/pgx/schema.sql b/internal/endtoend/testdata/jsonb/pgx/schema.sql
new file mode 100644
index 0000000000..6b4a1bb0fd
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/schema.sql
@@ -0,0 +1,7 @@
+CREATE TABLE foo (
+ a json not null,
+ b jsonb not null,
+ c json,
+ d jsonb
+);
+
diff --git a/internal/endtoend/testdata/jsonb/pgx/sqlc.json b/internal/endtoend/testdata/jsonb/pgx/sqlc.json
new file mode 100644
index 0000000000..32ede07158
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/pgx/sqlc.json
@@ -0,0 +1,13 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "engine": "postgresql",
+ "sql_package": "pgx/v5",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/jsonb/sqlite/go/db.go b/internal/endtoend/testdata/jsonb/sqlite/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/jsonb/sqlite/go/models.go b/internal/endtoend/testdata/jsonb/sqlite/go/models.go
new file mode 100644
index 0000000000..7c4f7cd8c7
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/go/models.go
@@ -0,0 +1,16 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "encoding/json"
+)
+
+type Foo struct {
+ A json.RawMessage
+ B json.RawMessage
+ C json.RawMessage
+ D json.RawMessage
+}
diff --git a/internal/endtoend/testdata/jsonb/sqlite/go/query.sql.go b/internal/endtoend/testdata/jsonb/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..9c0858a9c3
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/go/query.sql.go
@@ -0,0 +1,51 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+ "encoding/json"
+)
+
+const insertFoo = `-- name: InsertFoo :exec
+INSERT INTO foo (
+ a,
+ b,
+ c,
+ d
+) VALUES (
+ ?1,
+ ?2,
+ ?3,
+ ?4
+) RETURNING a, json(b), c, json(d)
+`
+
+type InsertFooParams struct {
+ A json.RawMessage
+ B json.RawMessage
+ C json.RawMessage
+ D json.RawMessage
+}
+
+func (q *Queries) InsertFoo(ctx context.Context, arg InsertFooParams) error {
+ _, err := q.db.ExecContext(ctx, insertFoo,
+ arg.A,
+ arg.B,
+ arg.C,
+ arg.D,
+ )
+ return err
+}
+
+const selectFoo = `-- name: SelectFoo :exec
+SELECT a, json(b), c, json(d) FROM foo
+`
+
+func (q *Queries) SelectFoo(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, selectFoo)
+ return err
+}
diff --git a/internal/endtoend/testdata/jsonb/sqlite/query.sql b/internal/endtoend/testdata/jsonb/sqlite/query.sql
new file mode 100644
index 0000000000..6959bd1a70
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/query.sql
@@ -0,0 +1,15 @@
+-- name: InsertFoo :exec
+INSERT INTO foo (
+ a,
+ b,
+ c,
+ d
+) VALUES (
+ @a,
+ @b,
+ @c,
+ @d
+) RETURNING *;
+
+-- name: SelectFoo :exec
+SELECT * FROM foo;
diff --git a/internal/endtoend/testdata/jsonb/sqlite/schema.sql b/internal/endtoend/testdata/jsonb/sqlite/schema.sql
new file mode 100644
index 0000000000..6b4a1bb0fd
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/schema.sql
@@ -0,0 +1,7 @@
+CREATE TABLE foo (
+ a json not null,
+ b jsonb not null,
+ c json,
+ d jsonb
+);
+
diff --git a/internal/endtoend/testdata/jsonb/sqlite/sqlc.json b/internal/endtoend/testdata/jsonb/sqlite/sqlc.json
new file mode 100644
index 0000000000..cd66df063b
--- /dev/null
+++ b/internal/endtoend/testdata/jsonb/sqlite/sqlc.json
@@ -0,0 +1,12 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "engine": "sqlite",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/limit/mysql/go/db.go b/internal/endtoend/testdata/limit/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/limit/mysql/go/db.go
+++ b/internal/endtoend/testdata/limit/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/limit/mysql/go/models.go b/internal/endtoend/testdata/limit/mysql/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/limit/mysql/go/models.go
+++ b/internal/endtoend/testdata/limit/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/limit/mysql/go/query.sql.go b/internal/endtoend/testdata/limit/mysql/go/query.sql.go
index 93d118b328..8daa769b23 100644
--- a/internal/endtoend/testdata/limit/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/limit/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/limit/pgx/v4/go/db.go b/internal/endtoend/testdata/limit/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/limit/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/limit/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/limit/pgx/v4/go/models.go b/internal/endtoend/testdata/limit/pgx/v4/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/limit/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/limit/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/limit/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/limit/pgx/v4/go/query.sql.go
index 9cb31b5e5f..a2356d3fd4 100644
--- a/internal/endtoend/testdata/limit/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/limit/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/limit/pgx/v5/go/db.go b/internal/endtoend/testdata/limit/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/limit/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/limit/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/limit/pgx/v5/go/models.go b/internal/endtoend/testdata/limit/pgx/v5/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/limit/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/limit/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/limit/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/limit/pgx/v5/go/query.sql.go
index 9cb31b5e5f..a2356d3fd4 100644
--- a/internal/endtoend/testdata/limit/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/limit/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/limit/sqlite/go/db.go b/internal/endtoend/testdata/limit/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/limit/sqlite/go/db.go
+++ b/internal/endtoend/testdata/limit/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/limit/sqlite/go/models.go b/internal/endtoend/testdata/limit/sqlite/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/limit/sqlite/go/models.go
+++ b/internal/endtoend/testdata/limit/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/limit/sqlite/go/query.sql.go b/internal/endtoend/testdata/limit/sqlite/go/query.sql.go
index 779c676979..e2b3be3954 100644
--- a/internal/endtoend/testdata/limit/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/limit/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/limit/stdlib/go/db.go b/internal/endtoend/testdata/limit/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/limit/stdlib/go/db.go
+++ b/internal/endtoend/testdata/limit/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/limit/stdlib/go/models.go b/internal/endtoend/testdata/limit/stdlib/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/limit/stdlib/go/models.go
+++ b/internal/endtoend/testdata/limit/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/limit/stdlib/go/query.sql.go b/internal/endtoend/testdata/limit/stdlib/go/query.sql.go
index eaf98d16f2..8bb5e71065 100644
--- a/internal/endtoend/testdata/limit/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/limit/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower/pgx/v4/go/db.go b/internal/endtoend/testdata/lower/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/lower/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/lower/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower/pgx/v4/go/models.go b/internal/endtoend/testdata/lower/pgx/v4/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/lower/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/lower/pgx/v4/go/query.sql.go
index 514d2f8261..20f9d19b36 100644
--- a/internal/endtoend/testdata/lower/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/lower/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower/pgx/v5/go/db.go b/internal/endtoend/testdata/lower/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/lower/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/lower/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower/pgx/v5/go/models.go b/internal/endtoend/testdata/lower/pgx/v5/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/lower/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/lower/pgx/v5/go/query.sql.go
index 514d2f8261..20f9d19b36 100644
--- a/internal/endtoend/testdata/lower/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/lower/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower/stdlib/go/db.go b/internal/endtoend/testdata/lower/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/lower/stdlib/go/db.go
+++ b/internal/endtoend/testdata/lower/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower/stdlib/go/models.go b/internal/endtoend/testdata/lower/stdlib/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower/stdlib/go/models.go
+++ b/internal/endtoend/testdata/lower/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower/stdlib/go/query.sql.go b/internal/endtoend/testdata/lower/stdlib/go/query.sql.go
index cdee0fbdac..addea8a201 100644
--- a/internal/endtoend/testdata/lower/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/lower/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/db.go b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/models.go b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/query.sql.go
index e861d57093..b3a1bf5f96 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/db.go b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/models.go b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/query.sql.go
index e861d57093..b3a1bf5f96 100644
--- a/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/lower_switched_order/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/stdlib/go/db.go b/internal/endtoend/testdata/lower_switched_order/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/lower_switched_order/stdlib/go/db.go
+++ b/internal/endtoend/testdata/lower_switched_order/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/lower_switched_order/stdlib/go/models.go b/internal/endtoend/testdata/lower_switched_order/stdlib/go/models.go
index b8189d89e2..3eaf9dccdc 100644
--- a/internal/endtoend/testdata/lower_switched_order/stdlib/go/models.go
+++ b/internal/endtoend/testdata/lower_switched_order/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
Bat string
diff --git a/internal/endtoend/testdata/lower_switched_order/stdlib/go/query.sql.go b/internal/endtoend/testdata/lower_switched_order/stdlib/go/query.sql.go
index e5acf2c681..98b5401e74 100644
--- a/internal/endtoend/testdata/lower_switched_order/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/lower_switched_order/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/models.go
index d7a28a04f0..4d75e3f866 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/query.sql.go
index ec3502385e..076f8d3574 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/models.go
index 68b43e4a82..86170d1417 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/query.sql.go
index ec3502385e..076f8d3574 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/models.go
index d7a28a04f0..4d75e3f866 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/query.sql.go
index 1c95200d0e..f718c7497f 100644
--- a/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/materialized_views/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/db.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/models.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/models.go
index 42bc87d997..2771654a01 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Num int32
}
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/query.sql.go
index ba0ce3e5aa..31c48f5af0 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/db.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/models.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/models.go
index 42bc87d997..2771654a01 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Num int32
}
diff --git a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/query.sql.go
index ba0ce3e5aa..31c48f5af0 100644
--- a/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/mathmatical_operator/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/db.go b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/db.go
+++ b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/models.go b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/models.go
index 42bc87d997..2771654a01 100644
--- a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/models.go
+++ b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Num int32
}
diff --git a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/query.sql.go b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/query.sql.go
index fad9e55acf..27bc27dbf4 100644
--- a/internal/endtoend/testdata/mathmatical_operator/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/mathmatical_operator/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/db.go b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/models.go b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/models.go
index 88d01744c4..a6842616bf 100644
--- a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/query.sql.go
index cbaa8a3cfb..3d63ba49ef 100644
--- a/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/min_max_date/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/missing_semicolon/mysql/go/db.go b/internal/endtoend/testdata/missing_semicolon/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/missing_semicolon/mysql/go/db.go
+++ b/internal/endtoend/testdata/missing_semicolon/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/missing_semicolon/mysql/go/models.go b/internal/endtoend/testdata/missing_semicolon/mysql/go/models.go
index 7e46ec5ccf..66c9c4ae3d 100644
--- a/internal/endtoend/testdata/missing_semicolon/mysql/go/models.go
+++ b/internal/endtoend/testdata/missing_semicolon/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/missing_semicolon/mysql/go/query.sql.go b/internal/endtoend/testdata/missing_semicolon/mysql/go/query.sql.go
index 56bb952967..200d58d0b5 100644
--- a/internal/endtoend/testdata/missing_semicolon/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/missing_semicolon/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/go/db.go b/internal/endtoend/testdata/mix_param_types/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/mix_param_types/mysql/go/db.go
+++ b/internal/endtoend/testdata/mix_param_types/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/go/models.go b/internal/endtoend/testdata/mix_param_types/mysql/go/models.go
index f7bb411940..feba68a3b6 100644
--- a/internal/endtoend/testdata/mix_param_types/mysql/go/models.go
+++ b/internal/endtoend/testdata/mix_param_types/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
Name string
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/go/test.sql.go b/internal/endtoend/testdata/mix_param_types/mysql/go/test.sql.go
index 6f717dc208..b230625900 100644
--- a/internal/endtoend/testdata/mix_param_types/mysql/go/test.sql.go
+++ b/internal/endtoend/testdata/mix_param_types/mysql/go/test.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: test.sql
package querytest
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/schema.sql b/internal/endtoend/testdata/mix_param_types/mysql/schema.sql
new file mode 100644
index 0000000000..b515bf8d04
--- /dev/null
+++ b/internal/endtoend/testdata/mix_param_types/mysql/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE bar (
+ id serial not null,
+ name text not null,
+ phone text not null
+);
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/sqlc.json b/internal/endtoend/testdata/mix_param_types/mysql/sqlc.json
index 145f64ba3f..3e8d09d00d 100644
--- a/internal/endtoend/testdata/mix_param_types/mysql/sqlc.json
+++ b/internal/endtoend/testdata/mix_param_types/mysql/sqlc.json
@@ -4,7 +4,7 @@
{
"path": "go",
"name": "querytest",
- "schema": "test.sql",
+ "schema": "schema.sql",
"queries": "test.sql",
"engine": "mysql"
}
diff --git a/internal/endtoend/testdata/mix_param_types/mysql/test.sql b/internal/endtoend/testdata/mix_param_types/mysql/test.sql
index b624d3e2ea..e23f1dcb70 100644
--- a/internal/endtoend/testdata/mix_param_types/mysql/test.sql
+++ b/internal/endtoend/testdata/mix_param_types/mysql/test.sql
@@ -1,9 +1,3 @@
-CREATE TABLE bar (
- id serial not null,
- name text not null,
- phone text not null
-);
-
-- name: CountOne :one
SELECT count(1) FROM bar WHERE id = sqlc.arg(id) AND name <> ?;
diff --git a/internal/endtoend/testdata/mix_param_types/postgresql/go/db.go b/internal/endtoend/testdata/mix_param_types/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/mix_param_types/postgresql/go/db.go
+++ b/internal/endtoend/testdata/mix_param_types/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/mix_param_types/postgresql/go/models.go b/internal/endtoend/testdata/mix_param_types/postgresql/go/models.go
index 3c63ed2bc9..3cebd6e33e 100644
--- a/internal/endtoend/testdata/mix_param_types/postgresql/go/models.go
+++ b/internal/endtoend/testdata/mix_param_types/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/mix_param_types/postgresql/go/test.sql.go b/internal/endtoend/testdata/mix_param_types/postgresql/go/test.sql.go
index 7ce15b0f64..be817356a7 100644
--- a/internal/endtoend/testdata/mix_param_types/postgresql/go/test.sql.go
+++ b/internal/endtoend/testdata/mix_param_types/postgresql/go/test.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: test.sql
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/db.go b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/models.go b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/models.go
index 3a96cb4768..e412a8ebd0 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags [][]string
}
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/query.sql.go
index 055cd0cd4b..892a6a685d 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/db.go b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/models.go b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/models.go
index 3a96cb4768..e412a8ebd0 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags [][]string
}
diff --git a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/query.sql.go
index 055cd0cd4b..892a6a685d 100644
--- a/internal/endtoend/testdata/multidimension_array/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/multidimension_array/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/stdlib/go/db.go b/internal/endtoend/testdata/multidimension_array/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/multidimension_array/stdlib/go/db.go
+++ b/internal/endtoend/testdata/multidimension_array/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multidimension_array/stdlib/go/models.go b/internal/endtoend/testdata/multidimension_array/stdlib/go/models.go
index 3a96cb4768..e412a8ebd0 100644
--- a/internal/endtoend/testdata/multidimension_array/stdlib/go/models.go
+++ b/internal/endtoend/testdata/multidimension_array/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
Tags [][]string
}
diff --git a/internal/endtoend/testdata/multidimension_array/stdlib/go/query.sql.go b/internal/endtoend/testdata/multidimension_array/stdlib/go/query.sql.go
index 063a282c4b..397dd5d161 100644
--- a/internal/endtoend/testdata/multidimension_array/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/multidimension_array/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v4/go/db.go b/internal/endtoend/testdata/multischema/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/multischema/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/multischema/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v4/go/models.go b/internal/endtoend/testdata/multischema/pgx/v4/go/models.go
index 256d6a5097..1e8fe9d351 100644
--- a/internal/endtoend/testdata/multischema/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/multischema/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/multischema/pgx/v4/go/query.sql.go
index b71ee2b42f..defc09a9ff 100644
--- a/internal/endtoend/testdata/multischema/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/multischema/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v5/go/db.go b/internal/endtoend/testdata/multischema/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/multischema/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/multischema/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v5/go/models.go b/internal/endtoend/testdata/multischema/pgx/v5/go/models.go
index 074cbe48bb..79fd8c7325 100644
--- a/internal/endtoend/testdata/multischema/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/multischema/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/multischema/pgx/v5/go/query.sql.go
index b71ee2b42f..defc09a9ff 100644
--- a/internal/endtoend/testdata/multischema/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/multischema/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/multischema/stdlib/go/db.go b/internal/endtoend/testdata/multischema/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/multischema/stdlib/go/db.go
+++ b/internal/endtoend/testdata/multischema/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/stdlib/go/models.go b/internal/endtoend/testdata/multischema/stdlib/go/models.go
index 256d6a5097..1e8fe9d351 100644
--- a/internal/endtoend/testdata/multischema/stdlib/go/models.go
+++ b/internal/endtoend/testdata/multischema/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/multischema/stdlib/go/query.sql.go b/internal/endtoend/testdata/multischema/stdlib/go/query.sql.go
index 751a782126..f08c928291 100644
--- a/internal/endtoend/testdata/multischema/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/multischema/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/go/db.go b/internal/endtoend/testdata/mysql_default_value/mysql/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/go/models.go b/internal/endtoend/testdata/mysql_default_value/mysql/go/models.go
new file mode 100644
index 0000000000..30c0f25e8e
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/go/models.go
@@ -0,0 +1,12 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type Author struct {
+ ID int32
+ Name string
+ Bio string
+ Explanation string
+}
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/go/query.sql.go b/internal/endtoend/testdata/mysql_default_value/mysql/go/query.sql.go
new file mode 100644
index 0000000000..8ae06e2332
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/go/query.sql.go
@@ -0,0 +1,42 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const selectAuthor = `-- name: SelectAuthor :many
+SELECT id, name, bio, explanation FROM authors
+`
+
+func (q *Queries) SelectAuthor(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, selectAuthor)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(
+ &i.ID,
+ &i.Name,
+ &i.Bio,
+ &i.Explanation,
+ ); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/query.sql b/internal/endtoend/testdata/mysql_default_value/mysql/query.sql
new file mode 100644
index 0000000000..00b1f3c460
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/query.sql
@@ -0,0 +1,2 @@
+-- name: SelectAuthor :many
+SELECT * FROM authors;
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/schema.sql b/internal/endtoend/testdata/mysql_default_value/mysql/schema.sql
new file mode 100644
index 0000000000..be6634420d
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/schema.sql
@@ -0,0 +1,7 @@
+CREATE TABLE authors (
+ id INT PRIMARY KEY,
+ name text NOT NULL,
+ bio text NOT NULL
+);
+
+ALTER TABLE authors ADD COLUMN explanation text NOT NULL DEFAULT ('');
diff --git a/internal/endtoend/testdata/mysql_default_value/mysql/sqlc.json b/internal/endtoend/testdata/mysql_default_value/mysql/sqlc.json
new file mode 100644
index 0000000000..7dabfeef72
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_default_value/mysql/sqlc.json
@@ -0,0 +1,14 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "sql_package": "database/sql",
+ "sql_driver": "github.com/go-sql-driver/mysql",
+ "engine": "mysql",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/db.go b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/db.go
index 99cee64db5..ccb2634180 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/db.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package aggregate_functions
diff --git a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/group_concat.sql.go b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/group_concat.sql.go
index 2566d83600..d7752885c4 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/group_concat.sql.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/group_concat.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: group_concat.sql
package aggregate_functions
diff --git a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/models.go b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/models.go
index f10e6f395c..4b17764d6b 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/models.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package aggregate_functions
@@ -10,5 +10,5 @@ import (
type Student struct {
StudentName sql.NullString
- Score sql.NullFloat64
+ TestScore sql.NullFloat64
}
diff --git a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/group_concat.sql b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/group_concat.sql
index f1858e42fd..443253851d 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/group_concat.sql
+++ b/internal/endtoend/testdata/mysql_reference_manual/aggregate_functions/group_concat.sql
@@ -1,8 +1,3 @@
-CREATE TABLE student (
- student_name VARCHAR(255),
- score DOUBLE
-);
-
-- name: GroupConcat :many
SELECT student_name, GROUP_CONCAT(test_score)
FROM student
diff --git a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_add.sql.go b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_add.sql.go
index b55af544fa..c02776d1e4 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_add.sql.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_add.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: date_add.sql
package date_and_time_functions
diff --git a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_sub.sql.go b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_sub.sql.go
index 0dee330fef..18447b2782 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_sub.sql.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/date_sub.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: date_sub.sql
package date_and_time_functions
diff --git a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/db.go b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/db.go
index cc6ed9f69b..61a96370e4 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/db.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package date_and_time_functions
diff --git a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/models.go b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/models.go
index 5d14d70322..3c8857d759 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/models.go
+++ b/internal/endtoend/testdata/mysql_reference_manual/date_and_time_functions/go/models.go
@@ -1,7 +1,14 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package date_and_time_functions
-import ()
+import (
+ "database/sql"
+)
+
+type Student struct {
+ StudentName sql.NullString
+ TestScore sql.NullFloat64
+}
diff --git a/internal/endtoend/testdata/mysql_reference_manual/schema.sql b/internal/endtoend/testdata/mysql_reference_manual/schema.sql
new file mode 100644
index 0000000000..5dcef48427
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_reference_manual/schema.sql
@@ -0,0 +1,4 @@
+CREATE TABLE student (
+ student_name VARCHAR(255),
+ test_score DOUBLE
+);
diff --git a/internal/endtoend/testdata/mysql_reference_manual/sqlc.json b/internal/endtoend/testdata/mysql_reference_manual/sqlc.json
index 26e8643999..71c8ff5aa8 100644
--- a/internal/endtoend/testdata/mysql_reference_manual/sqlc.json
+++ b/internal/endtoend/testdata/mysql_reference_manual/sqlc.json
@@ -4,14 +4,14 @@
{
"name": "date_and_time_functions",
"path": "date_and_time_functions/go",
- "schema": "date_and_time_functions",
+ "schema": "schema.sql",
"queries": "date_and_time_functions",
"engine": "mysql"
},
{
"name": "aggregate_functions",
"path": "aggregate_functions/go",
- "schema": "aggregate_functions",
+ "schema": "schema.sql",
"queries": "aggregate_functions",
"engine": "mysql"
}
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/go/db.go b/internal/endtoend/testdata/mysql_vector/mysql/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/go/models.go b/internal/endtoend/testdata/mysql_vector/mysql/go/models.go
new file mode 100644
index 0000000000..e604dea9f3
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/go/models.go
@@ -0,0 +1,10 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type Foo struct {
+ ID int32
+ Embedding interface{}
+}
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/go/query.sql.go b/internal/endtoend/testdata/mysql_vector/mysql/go/query.sql.go
new file mode 100644
index 0000000000..cb151968e3
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/go/query.sql.go
@@ -0,0 +1,48 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const insertVector = `-- name: InsertVector :exec
+INSERT INTO foo(embedding) VALUES (STRING_TO_VECTOR('[0.1, 0.2, 0.3, 0.4]'))
+`
+
+func (q *Queries) InsertVector(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, insertVector)
+ return err
+}
+
+const selectVector = `-- name: SelectVector :many
+SELECT id FROM foo
+ORDER BY DISTANCE(STRING_TO_VECTOR('[1.2, 3.4, 5.6]'), embedding, 'L2_squared')
+LIMIT 10
+`
+
+func (q *Queries) SelectVector(ctx context.Context) ([]int32, error) {
+ rows, err := q.db.QueryContext(ctx, selectVector)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []int32
+ for rows.Next() {
+ var id int32
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/query.sql b/internal/endtoend/testdata/mysql_vector/mysql/query.sql
new file mode 100644
index 0000000000..358d69129f
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/query.sql
@@ -0,0 +1,7 @@
+-- name: InsertVector :exec
+INSERT INTO foo(embedding) VALUES (STRING_TO_VECTOR('[0.1, 0.2, 0.3, 0.4]'));
+
+-- name: SelectVector :many
+SELECT id FROM foo
+ORDER BY DISTANCE(STRING_TO_VECTOR('[1.2, 3.4, 5.6]'), embedding, 'L2_squared')
+LIMIT 10;
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/schema.sql b/internal/endtoend/testdata/mysql_vector/mysql/schema.sql
new file mode 100644
index 0000000000..da61ac5682
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/schema.sql
@@ -0,0 +1,4 @@
+CREATE TABLE foo(
+ id INT PRIMARY KEY auto_increment,
+ embedding VECTOR(4)
+);
diff --git a/internal/endtoend/testdata/mysql_vector/mysql/sqlc.json b/internal/endtoend/testdata/mysql_vector/mysql/sqlc.json
new file mode 100644
index 0000000000..7dabfeef72
--- /dev/null
+++ b/internal/endtoend/testdata/mysql_vector/mysql/sqlc.json
@@ -0,0 +1,14 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "sql_package": "database/sql",
+ "sql_driver": "github.com/go-sql-driver/mysql",
+ "engine": "mysql",
+ "name": "querytest",
+ "schema": "schema.sql",
+ "queries": "query.sql"
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/named_param/pgx/v4/go/db.go b/internal/endtoend/testdata/named_param/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/named_param/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/named_param/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/named_param/pgx/v4/go/models.go b/internal/endtoend/testdata/named_param/pgx/v4/go/models.go
index b0f4b530f7..ae8e1a8073 100644
--- a/internal/endtoend/testdata/named_param/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/named_param/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Bio string
diff --git a/internal/endtoend/testdata/named_param/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/named_param/pgx/v4/go/query.sql.go
index a80f1fd268..8335637ee1 100644
--- a/internal/endtoend/testdata/named_param/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/named_param/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/named_param/pgx/v5/go/db.go b/internal/endtoend/testdata/named_param/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/named_param/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/named_param/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/named_param/pgx/v5/go/models.go b/internal/endtoend/testdata/named_param/pgx/v5/go/models.go
index b0f4b530f7..ae8e1a8073 100644
--- a/internal/endtoend/testdata/named_param/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/named_param/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Bio string
diff --git a/internal/endtoend/testdata/named_param/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/named_param/pgx/v5/go/query.sql.go
index a80f1fd268..8335637ee1 100644
--- a/internal/endtoend/testdata/named_param/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/named_param/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/named_param/sqlite/go/db.go b/internal/endtoend/testdata/named_param/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/named_param/sqlite/go/db.go
+++ b/internal/endtoend/testdata/named_param/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/named_param/sqlite/go/models.go b/internal/endtoend/testdata/named_param/sqlite/go/models.go
index b0f4b530f7..ae8e1a8073 100644
--- a/internal/endtoend/testdata/named_param/sqlite/go/models.go
+++ b/internal/endtoend/testdata/named_param/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Bio string
diff --git a/internal/endtoend/testdata/named_param/sqlite/go/query.sql.go b/internal/endtoend/testdata/named_param/sqlite/go/query.sql.go
index b4c3df5225..22e6ecd208 100644
--- a/internal/endtoend/testdata/named_param/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/named_param/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/named_param/stdlib/go/db.go b/internal/endtoend/testdata/named_param/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/named_param/stdlib/go/db.go
+++ b/internal/endtoend/testdata/named_param/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/named_param/stdlib/go/models.go b/internal/endtoend/testdata/named_param/stdlib/go/models.go
index b0f4b530f7..ae8e1a8073 100644
--- a/internal/endtoend/testdata/named_param/stdlib/go/models.go
+++ b/internal/endtoend/testdata/named_param/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Bio string
diff --git a/internal/endtoend/testdata/named_param/stdlib/go/query.sql.go b/internal/endtoend/testdata/named_param/stdlib/go/query.sql.go
index d5b58aa2e7..8186b365c2 100644
--- a/internal/endtoend/testdata/named_param/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/named_param/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/db.go b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/models.go b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/models.go
index 6bf5ae45e0..2d70fa3540 100644
--- a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Test struct {
ID int64
UpdateTime int64
diff --git a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/query.sql.go
index 73ce3e5264..561aebb4dc 100644
--- a/internal/endtoend/testdata/nested_select/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/nested_select/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/nextval/postgresql/go/db.go b/internal/endtoend/testdata/nextval/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/nextval/postgresql/go/db.go
+++ b/internal/endtoend/testdata/nextval/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/nextval/postgresql/go/models.go b/internal/endtoend/testdata/nextval/postgresql/go/models.go
index 67b4554477..39f88b4e22 100644
--- a/internal/endtoend/testdata/nextval/postgresql/go/models.go
+++ b/internal/endtoend/testdata/nextval/postgresql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
ID int64
}
diff --git a/internal/endtoend/testdata/nextval/postgresql/go/query.sql.go b/internal/endtoend/testdata/nextval/postgresql/go/query.sql.go
index cb58bf859c..3475565717 100644
--- a/internal/endtoend/testdata/nextval/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/nextval/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/query.sql.go
index d1b9fc7d7f..e6957cc1c8 100644
--- a/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/notifylisten/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/db.go b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/db.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/models.go b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/models.go
index 1e52b5cc8f..851016474c 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/models.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type Author struct {
ID int64
}
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/query.sql.go b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/query.sql.go
index 2af4f6a780..ef90f51f52 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/query.sql.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/pganalyzer/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/db.go b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/db.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/models.go b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/models.go
index 1e52b5cc8f..851016474c 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/models.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type Author struct {
ID int64
}
diff --git a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/query.sql.go b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/query.sql.go
index e67eaabe62..c0e4a0764e 100644
--- a/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/query.sql.go
+++ b/internal/endtoend/testdata/null_if_type/postgresql/stdlib/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/omit_sqlc_version/db/db.go b/internal/endtoend/testdata/omit_sqlc_version/db/db.go
new file mode 100644
index 0000000000..c3c034ae37
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/db/db.go
@@ -0,0 +1,29 @@
+// Code generated by sqlc. DO NOT EDIT.
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/omit_sqlc_version/db/models.go b/internal/endtoend/testdata/omit_sqlc_version/db/models.go
new file mode 100644
index 0000000000..3bc48237ef
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/db/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
diff --git a/internal/endtoend/testdata/omit_sqlc_version/db/query.sql.go b/internal/endtoend/testdata/omit_sqlc_version/db/query.sql.go
new file mode 100644
index 0000000000..147cb4b15c
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/db/query.sql.go
@@ -0,0 +1,80 @@
+// Code generated by sqlc. DO NOT EDIT.
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const createAuthor = `-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING id, name, bio
+`
+
+type CreateAuthorParams struct {
+ Name string
+ Bio sql.NullString
+}
+
+func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (Author, error) {
+ row := q.db.QueryRowContext(ctx, createAuthor, arg.Name, arg.Bio)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ return i, err
+}
+
+const deleteAuthor = `-- name: DeleteAuthor :exec
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthor(ctx context.Context, id int64) error {
+ _, err := q.db.ExecContext(ctx, deleteAuthor, id)
+ return err
+}
+
+const getAuthor = `-- name: GetAuthor :one
+SELECT id, name, bio FROM authors
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthor(ctx context.Context, id int64) (Author, error) {
+ row := q.db.QueryRowContext(ctx, getAuthor, id)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ return i, err
+}
+
+const listAuthors = `-- name: ListAuthors :many
+SELECT id, name, bio FROM authors
+ORDER BY name
+`
+
+func (q *Queries) ListAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthors)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/omit_sqlc_version/query.sql b/internal/endtoend/testdata/omit_sqlc_version/query.sql
new file mode 100644
index 0000000000..971b8f902d
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/query.sql
@@ -0,0 +1,19 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING *;
+
+-- name: DeleteAuthor :exec
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/omit_sqlc_version/schema.sql b/internal/endtoend/testdata/omit_sqlc_version/schema.sql
new file mode 100644
index 0000000000..69b607d902
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/omit_sqlc_version/sqlc.json b/internal/endtoend/testdata/omit_sqlc_version/sqlc.json
new file mode 100644
index 0000000000..f86d2b7b9d
--- /dev/null
+++ b/internal/endtoend/testdata/omit_sqlc_version/sqlc.json
@@ -0,0 +1,15 @@
+{
+ "version": "2",
+ "sql": [{
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "gen": {
+ "go": {
+ "out": "db",
+ "omit_sqlc_version": true
+ }
+ }
+ }]
+}
+
diff --git a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/models.go
index aa1e022516..cd6f5908a5 100644
--- a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/query.sql.go
index fb5a10297a..6cb813b458 100644
--- a/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/omit_unused_structs/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/db.go b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/db.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/models.go b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/models.go
index 95168df5de..601f8ed004 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/models.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/query.sql.go b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/query.sql.go
index 80fe4539ea..d548f41ede 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/query.sql.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/mysql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/db.go b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/db.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/models.go b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/models.go
index 95168df5de..601f8ed004 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/models.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/query.sql.go b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/query.sql.go
index 139b26e823..fb76727c52 100644
--- a/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/query.sql.go
+++ b/internal/endtoend/testdata/on_duplicate_key_update/postgresql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/models.go
index d851852a40..6b041d9ca8 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Demo struct {
Txt string
}
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/query.sql.go
index 7ccfe5bfc3..e8cb497ca7 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/models.go
index d851852a40..6b041d9ca8 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Demo struct {
Txt string
}
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/query.sql.go
index 7ccfe5bfc3..e8cb497ca7 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/models.go
index d851852a40..6b041d9ca8 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Demo struct {
Txt string
}
diff --git a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/query.sql.go
index 80a66d4b84..100d297c15 100644
--- a/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/operator_string_concat/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/mysql/go/db.go b/internal/endtoend/testdata/order_by_binds/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/order_by_binds/mysql/go/db.go
+++ b/internal/endtoend/testdata/order_by_binds/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/mysql/go/models.go b/internal/endtoend/testdata/order_by_binds/mysql/go/models.go
index 96d094465f..d3b600c584 100644
--- a/internal/endtoend/testdata/order_by_binds/mysql/go/models.go
+++ b/internal/endtoend/testdata/order_by_binds/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/mysql/go/query.sql.go b/internal/endtoend/testdata/order_by_binds/mysql/go/query.sql.go
index d9cf3824a8..de8df7f9e1 100644
--- a/internal/endtoend/testdata/order_by_binds/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/order_by_binds/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -43,6 +43,34 @@ func (q *Queries) ListAuthorsColumnSort(ctx context.Context, arg ListAuthorsColu
return items, nil
}
+const listAuthorsColumnSortFnWtihArg = `-- name: ListAuthorsColumnSortFnWtihArg :many
+SELECT id, name, bio FROM authors
+ORDER BY MOD(id, ?)
+`
+
+func (q *Queries) ListAuthorsColumnSortFnWtihArg(ctx context.Context, modArg int64) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthorsColumnSortFnWtihArg, modArg)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listAuthorsNameSort = `-- name: ListAuthorsNameSort :many
SELECT id, name, bio FROM authors
WHERE id > ?
diff --git a/internal/endtoend/testdata/order_by_binds/mysql/query.sql b/internal/endtoend/testdata/order_by_binds/mysql/query.sql
index e662d8f06a..c43763c838 100644
--- a/internal/endtoend/testdata/order_by_binds/mysql/query.sql
+++ b/internal/endtoend/testdata/order_by_binds/mysql/query.sql
@@ -3,6 +3,10 @@ SELECT * FROM authors
WHERE id > sqlc.arg(min_id)
ORDER BY CASE WHEN sqlc.arg(sort_column) = 'name' THEN name END;
+-- name: ListAuthorsColumnSortFnWtihArg :many
+SELECT * FROM authors
+ORDER BY MOD(id, sqlc.arg(mod_arg));
+
-- name: ListAuthorsNameSort :many
SELECT * FROM authors
WHERE id > sqlc.arg(min_id)
diff --git a/internal/endtoend/testdata/order_by_binds/pganalyze/go/db.go b/internal/endtoend/testdata/order_by_binds/pganalyze/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/order_by_binds/pganalyze/go/db.go
+++ b/internal/endtoend/testdata/order_by_binds/pganalyze/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/pganalyze/go/models.go b/internal/endtoend/testdata/order_by_binds/pganalyze/go/models.go
index 96d094465f..d3b600c584 100644
--- a/internal/endtoend/testdata/order_by_binds/pganalyze/go/models.go
+++ b/internal/endtoend/testdata/order_by_binds/pganalyze/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/pganalyze/go/query.sql.go b/internal/endtoend/testdata/order_by_binds/pganalyze/go/query.sql.go
index e58c13c49b..58fad16bf6 100644
--- a/internal/endtoend/testdata/order_by_binds/pganalyze/go/query.sql.go
+++ b/internal/endtoend/testdata/order_by_binds/pganalyze/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/postgresql/go/db.go b/internal/endtoend/testdata/order_by_binds/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/order_by_binds/postgresql/go/db.go
+++ b/internal/endtoend/testdata/order_by_binds/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/postgresql/go/models.go b/internal/endtoend/testdata/order_by_binds/postgresql/go/models.go
index 96d094465f..d3b600c584 100644
--- a/internal/endtoend/testdata/order_by_binds/postgresql/go/models.go
+++ b/internal/endtoend/testdata/order_by_binds/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_binds/postgresql/go/query.sql.go b/internal/endtoend/testdata/order_by_binds/postgresql/go/query.sql.go
index a32d252494..04cb80ca3c 100644
--- a/internal/endtoend/testdata/order_by_binds/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/order_by_binds/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -43,6 +43,34 @@ func (q *Queries) ListAuthorsColumnSort(ctx context.Context, arg ListAuthorsColu
return items, nil
}
+const listAuthorsColumnSortFnWtihArg = `-- name: ListAuthorsColumnSortFnWtihArg :many
+SELECT id, name, bio FROM authors
+ORDER BY MOD(id, $1)
+`
+
+func (q *Queries) ListAuthorsColumnSortFnWtihArg(ctx context.Context, mod int64) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthorsColumnSortFnWtihArg, mod)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
const listAuthorsNameSort = `-- name: ListAuthorsNameSort :many
SELECT id, name, bio FROM authors
WHERE id > $1
diff --git a/internal/endtoend/testdata/order_by_binds/postgresql/query.sql b/internal/endtoend/testdata/order_by_binds/postgresql/query.sql
index e662d8f06a..961d3f4e71 100644
--- a/internal/endtoend/testdata/order_by_binds/postgresql/query.sql
+++ b/internal/endtoend/testdata/order_by_binds/postgresql/query.sql
@@ -3,6 +3,10 @@ SELECT * FROM authors
WHERE id > sqlc.arg(min_id)
ORDER BY CASE WHEN sqlc.arg(sort_column) = 'name' THEN name END;
+-- name: ListAuthorsColumnSortFnWtihArg :many
+SELECT * FROM authors
+ORDER BY MOD(id, $1);
+
-- name: ListAuthorsNameSort :many
SELECT * FROM authors
WHERE id > sqlc.arg(min_id)
diff --git a/internal/endtoend/testdata/order_by_union/mysql/go/db.go b/internal/endtoend/testdata/order_by_union/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/order_by_union/mysql/go/db.go
+++ b/internal/endtoend/testdata/order_by_union/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_union/mysql/go/models.go b/internal/endtoend/testdata/order_by_union/mysql/go/models.go
index e870ea3a72..89a3f80ec1 100644
--- a/internal/endtoend/testdata/order_by_union/mysql/go/models.go
+++ b/internal/endtoend/testdata/order_by_union/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_union/mysql/go/query.sql.go b/internal/endtoend/testdata/order_by_union/mysql/go/query.sql.go
index b7c3294bda..231ea10c70 100644
--- a/internal/endtoend/testdata/order_by_union/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/order_by_union/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/order_by_union/postgresql/go/db.go b/internal/endtoend/testdata/order_by_union/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/order_by_union/postgresql/go/db.go
+++ b/internal/endtoend/testdata/order_by_union/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_union/postgresql/go/models.go b/internal/endtoend/testdata/order_by_union/postgresql/go/models.go
index 66cd458345..8a32002896 100644
--- a/internal/endtoend/testdata/order_by_union/postgresql/go/models.go
+++ b/internal/endtoend/testdata/order_by_union/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/order_by_union/postgresql/go/query.sql.go b/internal/endtoend/testdata/order_by_union/postgresql/go/query.sql.go
index b7c3294bda..231ea10c70 100644
--- a/internal/endtoend/testdata/order_by_union/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/order_by_union/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/batch_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/batch_gen.go
index ef65910690..c185a64add 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/batch_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/batch_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch_gen.go
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/copyfrom_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/copyfrom_gen.go
index bfc82d9ada..5bb5b674b2 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/copyfrom_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/copyfrom_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom_gen.go
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/db_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/db_gen.go
index 37fe92a30a..ab6e9fba25 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/db_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/db_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/models_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/models_gen.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/models_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/models_gen.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/querier_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/querier_gen.go
index d6e07d391f..5020fd4f19 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/querier_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/querier_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/output_file_names/pgx/v4/go/query.sql.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/batch_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/batch_gen.go
index 724116b822..4dda18feb7 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/batch_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/batch_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: batch_gen.go
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/copyfrom_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/copyfrom_gen.go
index bfc82d9ada..5bb5b674b2 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/copyfrom_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/copyfrom_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: copyfrom_gen.go
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/db_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/db_gen.go
index f6dcf9cd8a..3dbdf9b2a6 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/db_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/db_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/models_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/models_gen.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/models_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/models_gen.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/querier_gen.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/querier_gen.go
index d6e07d391f..5020fd4f19 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/querier_gen.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/querier_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/output_file_names/pgx/v5/go/query.sql.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/output_file_names/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/output_file_names/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/stdlib/go/db_gen.go b/internal/endtoend/testdata/output_file_names/stdlib/go/db_gen.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/output_file_names/stdlib/go/db_gen.go
+++ b/internal/endtoend/testdata/output_file_names/stdlib/go/db_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/stdlib/go/models_gen.go b/internal/endtoend/testdata/output_file_names/stdlib/go/models_gen.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_file_names/stdlib/go/models_gen.go
+++ b/internal/endtoend/testdata/output_file_names/stdlib/go/models_gen.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_file_names/stdlib/go/querier_gen.go b/internal/endtoend/testdata/output_file_names/stdlib/go/querier_gen.go
index 525815dec1..f602b59fa8 100644
--- a/internal/endtoend/testdata/output_file_names/stdlib/go/querier_gen.go
+++ b/internal/endtoend/testdata/output_file_names/stdlib/go/querier_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_file_names/stdlib/go/query.sql.go b/internal/endtoend/testdata/output_file_names/stdlib/go/query.sql.go
index 0d8d38d641..f95c7eb71f 100644
--- a/internal/endtoend/testdata/output_file_names/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/output_file_names/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/db.go b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/models.go b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/query.sql_gen.go b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/query.sql_gen.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/query.sql_gen.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v4/go/query.sql_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/db.go b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/models.go b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/query.sql_gen.go b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/query.sql_gen.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/query.sql_gen.go
+++ b/internal/endtoend/testdata/output_files_suffix/pgx/v5/go/query.sql_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/stdlib/go/db.go b/internal/endtoend/testdata/output_files_suffix/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/output_files_suffix/stdlib/go/db.go
+++ b/internal/endtoend/testdata/output_files_suffix/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/output_files_suffix/stdlib/go/models.go b/internal/endtoend/testdata/output_files_suffix/stdlib/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/output_files_suffix/stdlib/go/models.go
+++ b/internal/endtoend/testdata/output_files_suffix/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/output_files_suffix/stdlib/go/query.sql_gen.go b/internal/endtoend/testdata/output_files_suffix/stdlib/go/query.sql_gen.go
index 0d8d38d641..f95c7eb71f 100644
--- a/internal/endtoend/testdata/output_files_suffix/stdlib/go/query.sql_gen.go
+++ b/internal/endtoend/testdata/output_files_suffix/stdlib/go/query.sql_gen.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/overrides/mysql/go/db.go b/internal/endtoend/testdata/overrides/mysql/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides/mysql/go/db.go
+++ b/internal/endtoend/testdata/overrides/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/mysql/go/models.go b/internal/endtoend/testdata/overrides/mysql/go/models.go
index 12b5f7a389..9a6f533b19 100644
--- a/internal/endtoend/testdata/overrides/mysql/go/models.go
+++ b/internal/endtoend/testdata/overrides/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/mysql/go/query.sql.go b/internal/endtoend/testdata/overrides/mysql/go/query.sql.go
new file mode 100644
index 0000000000..5a9ac42c22
--- /dev/null
+++ b/internal/endtoend/testdata/overrides/mysql/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides/mysql/query.sql b/internal/endtoend/testdata/overrides/mysql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides/mysql/query.sql
+++ b/internal/endtoend/testdata/overrides/mysql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/db.go
index b78f221853..0c4e025868 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/models.go
index cce7085fb0..47140f9fad 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/query.sql.go
new file mode 100644
index 0000000000..0591b6e433
--- /dev/null
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/query.sql b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v4/query.sql
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v4/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/db.go
index c6fa8a19b4..9e1863b7cb 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/models.go
index cce7085fb0..47140f9fad 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/query.sql.go
new file mode 100644
index 0000000000..0591b6e433
--- /dev/null
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/query.sql b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides/postgresql/pgx/v5/query.sql
+++ b/internal/endtoend/testdata/overrides/postgresql/pgx/v5/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/models.go
index cce7085fb0..47140f9fad 100644
--- a/internal/endtoend/testdata/overrides/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/query.sql.go
new file mode 100644
index 0000000000..5a9ac42c22
--- /dev/null
+++ b/internal/endtoend/testdata/overrides/postgresql/stdlib/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides/postgresql/stdlib/query.sql b/internal/endtoend/testdata/overrides/postgresql/stdlib/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides/postgresql/stdlib/query.sql
+++ b/internal/endtoend/testdata/overrides/postgresql/stdlib/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides/sqlite/go/db.go b/internal/endtoend/testdata/overrides/sqlite/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides/sqlite/go/db.go
+++ b/internal/endtoend/testdata/overrides/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/sqlite/go/models.go b/internal/endtoend/testdata/overrides/sqlite/go/models.go
index 12b5f7a389..9a6f533b19 100644
--- a/internal/endtoend/testdata/overrides/sqlite/go/models.go
+++ b/internal/endtoend/testdata/overrides/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides/sqlite/go/query.sql.go b/internal/endtoend/testdata/overrides/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..ca39d1c12e
--- /dev/null
+++ b/internal/endtoend/testdata/overrides/sqlite/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int64
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides/sqlite/query.sql b/internal/endtoend/testdata/overrides/sqlite/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides/sqlite/query.sql
+++ b/internal/endtoend/testdata/overrides/sqlite/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/db.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/db.go
index 9d08fbb5fc..f3ee589d2f 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/db.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/models.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/models.go
index 86fbcf9242..1b7bbe511e 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/models.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/query.sql.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/query.sql.go
index 586982e381..6902f5f9b3 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/query.sql.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v4/query/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/db.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/db.go
index 547a5a46a3..6cdd791c99 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/db.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/models.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/models.go
index edbca44a1a..ed9ba58bba 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/models.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/query.sql.go b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/query.sql.go
index 586982e381..6902f5f9b3 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/query.sql.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/pgx/v5/query/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/db.go b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/db.go
index f543916863..efa4c515ea 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/db.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/models.go b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/models.go
index 86fbcf9242..1b7bbe511e 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/models.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package query
diff --git a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/query.sql.go b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/query.sql.go
index 69c6872456..52502a1ec2 100644
--- a/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/query.sql.go
+++ b/internal/endtoend/testdata/overrides_array/postgresql/stdlib/query/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package query
diff --git a/internal/endtoend/testdata/overrides_config/query.sql b/internal/endtoend/testdata/overrides_config/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_config/query.sql
+++ b/internal/endtoend/testdata/overrides_config/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/db.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/db.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/models.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/models.go
index 206419de82..c7eb2458be 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/models.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/query.sql.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/query.sql.go
new file mode 100644
index 0000000000..cdf5e3f442
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global/db/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/db.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/db.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/models.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/models.go
index 206419de82..c7eb2458be 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/models.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/query.sql.go b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/query.sql.go
new file mode 100644
index 0000000000..cdf5e3f442
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/global_and_queryset/db/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/db.go b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/db.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/models.go b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/models.go
index 206419de82..c7eb2458be 100644
--- a/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/models.go
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/query.sql.go b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/query.sql.go
new file mode 100644
index 0000000000..cdf5e3f442
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_config/v2/yaml/queryset/db/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/invalid_tags/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/invalid_tags/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/invalid_tags/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/invalid_tags/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/db.go b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/models.go b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/models.go
index 31841b71e9..5cb2b2ffda 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
-import ()
-
type Bar struct {
Other string
AlsoTagged string `also:"tagged"`
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/query.sql.go b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/query.sql.go
new file mode 100644
index 0000000000..5a9ac42c22
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/mysql/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/mysql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/db.go
index b78f221853..0c4e025868 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/models.go
index 0c7ee6a8e8..76b9f6a98b 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/query.sql.go
new file mode 100644
index 0000000000..0591b6e433
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v4/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/db.go
index c6fa8a19b4..9e1863b7cb 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/models.go
index 77f9f428b8..2f13a354c5 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/query.sql.go
new file mode 100644
index 0000000000..0591b6e433
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRow(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/pgx/v5/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/models.go
index 13babe2d81..4d4b68eba2 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/query.sql.go
new file mode 100644
index 0000000000..5a9ac42c22
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/postgresql/stdlib/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/db.go b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/models.go b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/models.go
index 837950ceaf..897282f3be 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
-import ()
-
type Bar struct {
Other string
AlsoTagged string `also:"tagged"`
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/query.sql.go b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..ca39d1c12e
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int64
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/query.sql b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/query.sql
+++ b/internal/endtoend/testdata/overrides_go_struct_tags/sqlite/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_go_types/mysql/go/db.go b/internal/endtoend/testdata/overrides_go_types/mysql/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_types/mysql/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_types/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/mysql/go/models.go b/internal/endtoend/testdata/overrides_go_types/mysql/go/models.go
index 08cc316a90..f41ed7c844 100644
--- a/internal/endtoend/testdata/overrides_go_types/mysql/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_types/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/mysql/go/query.sql.go b/internal/endtoend/testdata/overrides_go_types/mysql/go/query.sql.go
index 804ee61372..a3cbc333c5 100644
--- a/internal/endtoend/testdata/overrides_go_types/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_go_types/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/db.go
index b78f221853..0c4e025868 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/models.go
index a8b53f86aa..0cb364b2be 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/query.sql.go
index 7252ffb3ba..735aaae4a8 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/db.go
index c6fa8a19b4..9e1863b7cb 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/models.go
index de76bd80ed..15bac34292 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/query.sql.go
index cd146e7207..fd1e3fe367 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/models.go
index 8aff8acb03..0b0c291de2 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/query.sql.go
index 0274dd3319..1719cb24b3 100644
--- a/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_go_types/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/sqlite/go/db.go b/internal/endtoend/testdata/overrides_go_types/sqlite/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_go_types/sqlite/go/db.go
+++ b/internal/endtoend/testdata/overrides_go_types/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/sqlite/go/models.go b/internal/endtoend/testdata/overrides_go_types/sqlite/go/models.go
index 08cc316a90..f41ed7c844 100644
--- a/internal/endtoend/testdata/overrides_go_types/sqlite/go/models.go
+++ b/internal/endtoend/testdata/overrides_go_types/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_go_types/sqlite/go/query.sql.go b/internal/endtoend/testdata/overrides_go_types/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..ca39d1c12e
--- /dev/null
+++ b/internal/endtoend/testdata/overrides_go_types/sqlite/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int64, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int64
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/overrides_go_types/sqlite/query.sql b/internal/endtoend/testdata/overrides_go_types/sqlite/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/overrides_go_types/sqlite/query.sql
+++ b/internal/endtoend/testdata/overrides_go_types/sqlite/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/models.go
index b0ec875d44..6d1c438826 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/query.sql.go
index 0e1231ab2f..1b2b269c23 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/models.go
index 6766ac1a47..9c6c0135b3 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/query.sql.go
index 0e1231ab2f..1b2b269c23 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/models.go
index b0ec875d44..6d1c438826 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/query.sql.go
index 27ab1280c0..b413b8b8f2 100644
--- a/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_nullable/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/overrides_pointers/mysql/go/db.go b/internal/endtoend/testdata/overrides_pointers/mysql/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_pointers/mysql/go/db.go
+++ b/internal/endtoend/testdata/overrides_pointers/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/mysql/go/models.go b/internal/endtoend/testdata/overrides_pointers/mysql/go/models.go
index eb4059c4dc..35d32a552a 100644
--- a/internal/endtoend/testdata/overrides_pointers/mysql/go/models.go
+++ b/internal/endtoend/testdata/overrides_pointers/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/mysql/go/query.sql.go b/internal/endtoend/testdata/overrides_pointers/mysql/go/query.sql.go
index a7101bc575..fa21b0e3fa 100644
--- a/internal/endtoend/testdata/overrides_pointers/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_pointers/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/db.go
index b78f221853..0c4e025868 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/models.go
index 5dbd142517..c7f52ef6be 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/query.sql.go
index 5784f18de7..9a033bade1 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/db.go
index c6fa8a19b4..9e1863b7cb 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/models.go
index 5dbd142517..c7f52ef6be 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/query.sql.go
index 5784f18de7..9a033bade1 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/models.go
index 5dbd142517..c7f52ef6be 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/query.sql.go
index dca14d67bb..7c25c72337 100644
--- a/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_pointers/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package override
diff --git a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/db.go b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/db.go
+++ b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/models.go b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/models.go
index 6f346a50fa..64df174a94 100644
--- a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/models.go
+++ b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/query.sql.go b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/query.sql.go
index 412d409d2c..0505c23961 100644
--- a/internal/endtoend/testdata/overrides_result_tag/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_result_tag/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/overrides_unsigned/mysql/go/db.go b/internal/endtoend/testdata/overrides_unsigned/mysql/go/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/overrides_unsigned/mysql/go/db.go
+++ b/internal/endtoend/testdata/overrides_unsigned/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_unsigned/mysql/go/models.go b/internal/endtoend/testdata/overrides_unsigned/mysql/go/models.go
index 632bc25efd..9e2566e970 100644
--- a/internal/endtoend/testdata/overrides_unsigned/mysql/go/models.go
+++ b/internal/endtoend/testdata/overrides_unsigned/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/overrides_unsigned/mysql/go/query.sql.go b/internal/endtoend/testdata/overrides_unsigned/mysql/go/query.sql.go
index 64535eadd3..b6c94cbe6a 100644
--- a/internal/endtoend/testdata/overrides_unsigned/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/overrides_unsigned/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/params_duplicate/mysql/go/db.go b/internal/endtoend/testdata/params_duplicate/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_duplicate/mysql/go/db.go
+++ b/internal/endtoend/testdata/params_duplicate/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_duplicate/mysql/go/models.go b/internal/endtoend/testdata/params_duplicate/mysql/go/models.go
index 6ba038242a..f3fb0be8e0 100644
--- a/internal/endtoend/testdata/params_duplicate/mysql/go/models.go
+++ b/internal/endtoend/testdata/params_duplicate/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_duplicate/mysql/go/query.sql.go b/internal/endtoend/testdata/params_duplicate/mysql/go/query.sql.go
index 253359b02d..341e818850 100644
--- a/internal/endtoend/testdata/params_duplicate/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_duplicate/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_duplicate/postgresql/go/db.go b/internal/endtoend/testdata/params_duplicate/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_duplicate/postgresql/go/db.go
+++ b/internal/endtoend/testdata/params_duplicate/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_duplicate/postgresql/go/models.go b/internal/endtoend/testdata/params_duplicate/postgresql/go/models.go
index 6ba038242a..f3fb0be8e0 100644
--- a/internal/endtoend/testdata/params_duplicate/postgresql/go/models.go
+++ b/internal/endtoend/testdata/params_duplicate/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_duplicate/postgresql/go/query.sql.go b/internal/endtoend/testdata/params_duplicate/postgresql/go/query.sql.go
index eeeb9c3031..446b7c7bf4 100644
--- a/internal/endtoend/testdata/params_duplicate/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_duplicate/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_go_keywords/postgresql/go/db.go b/internal/endtoend/testdata/params_go_keywords/postgresql/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/params_go_keywords/postgresql/go/db.go
+++ b/internal/endtoend/testdata/params_go_keywords/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_go_keywords/postgresql/go/models.go b/internal/endtoend/testdata/params_go_keywords/postgresql/go/models.go
index 28c357bc64..fbffbfdf87 100644
--- a/internal/endtoend/testdata/params_go_keywords/postgresql/go/models.go
+++ b/internal/endtoend/testdata/params_go_keywords/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
@@ -34,4 +34,5 @@ type GoKeyword struct {
Import pgtype.Text
Return pgtype.Text
Var pgtype.Text
+ Q pgtype.Text
}
diff --git a/internal/endtoend/testdata/params_go_keywords/postgresql/go/query.sql.go b/internal/endtoend/testdata/params_go_keywords/postgresql/go/query.sql.go
index d3b8bb6720..684f3541bc 100644
--- a/internal/endtoend/testdata/params_go_keywords/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_go_keywords/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -173,6 +173,15 @@ func (q *Queries) KeywordPackage(ctx context.Context, package_ string) error {
return err
}
+const keywordQ = `-- name: KeywordQ :exec
+SELECT $1::text
+`
+
+func (q *Queries) KeywordQ(ctx context.Context, q_ string) error {
+ _, err := q.db.Exec(ctx, keywordQ, q_)
+ return err
+}
+
const keywordRange = `-- name: KeywordRange :exec
SELECT $1::text
`
@@ -434,6 +443,17 @@ func (q *Queries) SelectPackage(ctx context.Context) (pgtype.Text, error) {
return package_, err
}
+const selectQ = `-- name: SelectQ :one
+SELECT "q" FROM go_keywords
+`
+
+func (q *Queries) SelectQ(ctx context.Context) (pgtype.Text, error) {
+ row := q.db.QueryRow(ctx, selectQ)
+ var q_ pgtype.Text
+ err := row.Scan(&q_)
+ return q_, err
+}
+
const selectRange = `-- name: SelectRange :one
SELECT "range" FROM go_keywords
`
diff --git a/internal/endtoend/testdata/params_go_keywords/postgresql/query.sql b/internal/endtoend/testdata/params_go_keywords/postgresql/query.sql
index 70796e4e3e..bc45b1166f 100644
--- a/internal/endtoend/testdata/params_go_keywords/postgresql/query.sql
+++ b/internal/endtoend/testdata/params_go_keywords/postgresql/query.sql
@@ -73,6 +73,9 @@ SELECT sqlc.arg('return')::text;
-- name: KeywordVar :exec
SELECT sqlc.arg('var')::text;
+-- name: KeywordQ :exec
+SELECT sqlc.arg('q')::text;
+
-- name: SelectBreak :one
SELECT "break" FROM go_keywords;
@@ -147,3 +150,6 @@ SELECT "return" FROM go_keywords;
-- name: SelectVar :one
SELECT "var" FROM go_keywords;
+
+-- name: SelectQ :one
+SELECT "q" FROM go_keywords;
diff --git a/internal/endtoend/testdata/params_go_keywords/postgresql/schema.sql b/internal/endtoend/testdata/params_go_keywords/postgresql/schema.sql
index 11a04beef6..100be50211 100644
--- a/internal/endtoend/testdata/params_go_keywords/postgresql/schema.sql
+++ b/internal/endtoend/testdata/params_go_keywords/postgresql/schema.sql
@@ -23,5 +23,6 @@ CREATE TABLE go_keywords (
"for" TEXT,
"import" TEXT,
"return" TEXT,
- "var" TEXT
+ "var" TEXT,
+ "q" TEXT
);
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/db/db.go b/internal/endtoend/testdata/params_in_nested_func/mysql/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/db/models.go b/internal/endtoend/testdata/params_in_nested_func/mysql/db/models.go
new file mode 100644
index 0000000000..c19b9af15f
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/db/models.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Routergroup struct {
+ Groupid uint32
+ Groupname string
+ Defaultconfigid sql.NullInt32
+ Defaultfirmwareversion sql.NullString
+ Parentgroupid sql.NullInt32
+ Firmwarepolicy sql.NullString
+ Styles sql.NullString
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/db/query.sql.go b/internal/endtoend/testdata/params_in_nested_func/mysql/db/query.sql.go
new file mode 100644
index 0000000000..c76de41d7d
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/db/query.sql.go
@@ -0,0 +1,55 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const getGroups = `-- name: GetGroups :many
+SELECT
+ rg.groupId,
+ rg.groupName
+FROM
+ RouterGroup rg
+WHERE
+ rg.groupName LIKE CONCAT('%', COALESCE(?, rg.groupName), '%') AND
+ rg.groupId = COALESCE(?, rg.groupId)
+`
+
+type GetGroupsParams struct {
+ GroupName interface{}
+ GroupId sql.NullInt32
+}
+
+type GetGroupsRow struct {
+ Groupid uint32
+ Groupname string
+}
+
+func (q *Queries) GetGroups(ctx context.Context, arg GetGroupsParams) ([]GetGroupsRow, error) {
+ rows, err := q.db.QueryContext(ctx, getGroups, arg.GroupName, arg.GroupId)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []GetGroupsRow
+ for rows.Next() {
+ var i GetGroupsRow
+ if err := rows.Scan(&i.Groupid, &i.Groupname); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/query.sql b/internal/endtoend/testdata/params_in_nested_func/mysql/query.sql
new file mode 100644
index 0000000000..8a2a78fa36
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/query.sql
@@ -0,0 +1,9 @@
+-- name: GetGroups :many
+SELECT
+ rg.groupId,
+ rg.groupName
+FROM
+ RouterGroup rg
+WHERE
+ rg.groupName LIKE CONCAT('%', COALESCE(sqlc.narg('groupName'), rg.groupName), '%') AND
+ rg.groupId = COALESCE(sqlc.narg('groupId'), rg.groupId);
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/schema.sql b/internal/endtoend/testdata/params_in_nested_func/mysql/schema.sql
new file mode 100644
index 0000000000..12e0fb3b85
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/schema.sql
@@ -0,0 +1,10 @@
+create table RouterGroup
+(
+ groupId int unsigned auto_increment primary key,
+ groupName varchar(100) not null,
+ defaultConfigId int unsigned null,
+ defaultFirmwareVersion varchar(12) null,
+ parentGroupId int unsigned null,
+ firmwarePolicy varchar(45) null,
+ styles text null
+);
diff --git a/internal/endtoend/testdata/params_in_nested_func/mysql/sqlc.yaml b/internal/endtoend/testdata/params_in_nested_func/mysql/sqlc.yaml
new file mode 100644
index 0000000000..e8b45d313d
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/mysql/sqlc.yaml
@@ -0,0 +1,8 @@
+version: '2'
+sql:
+- schema: schema.sql
+ queries: query.sql
+ engine: mysql
+ gen:
+ go:
+ out: db
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/db/db.go b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/db/models.go b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/models.go
new file mode 100644
index 0000000000..a6063aa87b
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/models.go
@@ -0,0 +1,19 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Routergroup struct {
+ Groupid int32
+ Groupname string
+ Defaultconfigid sql.NullInt32
+ Defaultfirmwareversion sql.NullString
+ Parentgroupid sql.NullInt32
+ Firmwarepolicy sql.NullString
+ Styles sql.NullString
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/db/query.sql.go b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/query.sql.go
new file mode 100644
index 0000000000..1fe3ec714d
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/db/query.sql.go
@@ -0,0 +1,55 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const getGroups = `-- name: GetGroups :many
+SELECT
+ rg.groupId,
+ rg.groupName
+FROM
+ RouterGroup rg
+WHERE
+ rg.groupName LIKE CONCAT('%', COALESCE($1::text, rg.groupName), '%') AND
+ rg.groupId = COALESCE($2, rg.groupId)
+`
+
+type GetGroupsParams struct {
+ GroupName sql.NullString
+ GroupId sql.NullInt32
+}
+
+type GetGroupsRow struct {
+ Groupid int32
+ Groupname string
+}
+
+func (q *Queries) GetGroups(ctx context.Context, arg GetGroupsParams) ([]GetGroupsRow, error) {
+ rows, err := q.db.QueryContext(ctx, getGroups, arg.GroupName, arg.GroupId)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []GetGroupsRow
+ for rows.Next() {
+ var i GetGroupsRow
+ if err := rows.Scan(&i.Groupid, &i.Groupname); err != nil {
+ return nil, err
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/query.sql b/internal/endtoend/testdata/params_in_nested_func/postgresql/query.sql
new file mode 100644
index 0000000000..7732269d25
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/query.sql
@@ -0,0 +1,9 @@
+-- name: GetGroups :many
+SELECT
+ rg.groupId,
+ rg.groupName
+FROM
+ RouterGroup rg
+WHERE
+ rg.groupName LIKE CONCAT('%', COALESCE(sqlc.narg('groupName')::text, rg.groupName), '%') AND
+ rg.groupId = COALESCE(sqlc.narg('groupId'), rg.groupId);
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/schema.sql b/internal/endtoend/testdata/params_in_nested_func/postgresql/schema.sql
new file mode 100644
index 0000000000..66cfd02733
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/schema.sql
@@ -0,0 +1,10 @@
+create table RouterGroup
+(
+ groupId serial primary key,
+ groupName varchar(100) not null,
+ defaultConfigId int null,
+ defaultFirmwareVersion varchar(12) null,
+ parentGroupId int null,
+ firmwarePolicy varchar(45) null,
+ styles text null
+);
diff --git a/internal/endtoend/testdata/params_in_nested_func/postgresql/sqlc.yaml b/internal/endtoend/testdata/params_in_nested_func/postgresql/sqlc.yaml
new file mode 100644
index 0000000000..936b0171ee
--- /dev/null
+++ b/internal/endtoend/testdata/params_in_nested_func/postgresql/sqlc.yaml
@@ -0,0 +1,8 @@
+version: '2'
+sql:
+- schema: schema.sql
+ queries: query.sql
+ engine: postgresql
+ gen:
+ go:
+ out: db
diff --git a/internal/endtoend/testdata/params_location/mysql/go/db.go b/internal/endtoend/testdata/params_location/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_location/mysql/go/db.go
+++ b/internal/endtoend/testdata/params_location/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/mysql/go/models.go b/internal/endtoend/testdata/params_location/mysql/go/models.go
index a534e29edb..64336a3055 100644
--- a/internal/endtoend/testdata/params_location/mysql/go/models.go
+++ b/internal/endtoend/testdata/params_location/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/mysql/go/query.sql.go b/internal/endtoend/testdata/params_location/mysql/go/query.sql.go
index aecc5a84b9..b8c383c547 100644
--- a/internal/endtoend/testdata/params_location/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_location/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/models.go
index b9d29f0c9c..4e45cb56f9 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/query.sql.go
index 5cf97962c7..d26e99a2b0 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/models.go
index d71c3b2510..1a1e21b18e 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/query.sql.go
index 092dab1d92..9f6bec86d7 100644
--- a/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/params_location/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/models.go
index a534e29edb..64336a3055 100644
--- a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/query.sql.go
index cbf883fd4a..e7e651a7ad 100644
--- a/internal/endtoend/testdata/params_location/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/params_location/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/db.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/db.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/models.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/models.go
index 0365c1af51..c22b0f9ced 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/models.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/query.sql.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/query.sql.go
index 88040af18c..e6ef6508e1 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/db.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/db.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/models.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/models.go
index 0365c1af51..c22b0f9ced 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/models.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/query.sql.go b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/query.sql.go
index 78d2958ee1..61b1c3028a 100644
--- a/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_placeholder_in_left_expr/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_two/mysql/go/db.go b/internal/endtoend/testdata/params_two/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_two/mysql/go/db.go
+++ b/internal/endtoend/testdata/params_two/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/mysql/go/models.go b/internal/endtoend/testdata/params_two/mysql/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/params_two/mysql/go/models.go
+++ b/internal/endtoend/testdata/params_two/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/mysql/go/query.sql.go b/internal/endtoend/testdata/params_two/mysql/go/query.sql.go
index e6910c24fc..9d3d129800 100644
--- a/internal/endtoend/testdata/params_two/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/params_two/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/query.sql.go
index 50dad9af82..6b53a8500d 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/models.go
index 8098627e10..0fdfbd23af 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/query.sql.go
index 895665f879..4a8edcd277 100644
--- a/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/params_two/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/query.sql.go
index 084003e89f..883dd9b3e8 100644
--- a/internal/endtoend/testdata/params_two/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/params_two/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pattern_in_expr/mysql/go/db.go b/internal/endtoend/testdata/pattern_in_expr/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pattern_in_expr/mysql/go/db.go
+++ b/internal/endtoend/testdata/pattern_in_expr/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_in_expr/mysql/go/models.go b/internal/endtoend/testdata/pattern_in_expr/mysql/go/models.go
index f354e21567..aa9d0b252f 100644
--- a/internal/endtoend/testdata/pattern_in_expr/mysql/go/models.go
+++ b/internal/endtoend/testdata/pattern_in_expr/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_in_expr/mysql/go/query.sql.go b/internal/endtoend/testdata/pattern_in_expr/mysql/go/query.sql.go
index a841244287..7519e4114f 100644
--- a/internal/endtoend/testdata/pattern_in_expr/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/pattern_in_expr/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/mysql/go/db.go b/internal/endtoend/testdata/pattern_matching/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pattern_matching/mysql/go/db.go
+++ b/internal/endtoend/testdata/pattern_matching/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/mysql/go/models.go b/internal/endtoend/testdata/pattern_matching/mysql/go/models.go
index acb0899c04..926648e5a8 100644
--- a/internal/endtoend/testdata/pattern_matching/mysql/go/models.go
+++ b/internal/endtoend/testdata/pattern_matching/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/mysql/go/query.sql.go b/internal/endtoend/testdata/pattern_matching/mysql/go/query.sql.go
index b4113ca7eb..521edd9dfb 100644
--- a/internal/endtoend/testdata/pattern_matching/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/pattern_matching/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/postgresql/go/db.go b/internal/endtoend/testdata/pattern_matching/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pattern_matching/postgresql/go/db.go
+++ b/internal/endtoend/testdata/pattern_matching/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/postgresql/go/models.go b/internal/endtoend/testdata/pattern_matching/postgresql/go/models.go
index acb0899c04..926648e5a8 100644
--- a/internal/endtoend/testdata/pattern_matching/postgresql/go/models.go
+++ b/internal/endtoend/testdata/pattern_matching/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pattern_matching/postgresql/go/query.sql.go b/internal/endtoend/testdata/pattern_matching/postgresql/go/query.sql.go
index 591d049ca4..41b74db2b2 100644
--- a/internal/endtoend/testdata/pattern_matching/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/pattern_matching/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/exec.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/exec.sql.go
index edbd3190f5..6d2dcc4a1c 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/exec.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/exec.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: exec.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/query.sql.go
index 5e45e7743e..523135f86a 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/exec.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/exec.sql.go
index edbd3190f5..6d2dcc4a1c 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/exec.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/exec.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: exec.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/query.sql.go
index 9f3561411f..c23a161091 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/exec.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/exec.sql.go
index abeefbf50d..91559db40a 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/exec.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/exec.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: exec.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/query.sql.go
index b3bda0d7af..418b6fc45b 100644
--- a/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_advisory_xact_lock/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_dump/db/db.go b/internal/endtoend/testdata/pg_dump/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/pg_dump/db/db.go
+++ b/internal/endtoend/testdata/pg_dump/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/pg_dump/db/models.go b/internal/endtoend/testdata/pg_dump/db/models.go
index 95168df5de..601f8ed004 100644
--- a/internal/endtoend/testdata/pg_dump/db/models.go
+++ b/internal/endtoend/testdata/pg_dump/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/pg_dump/db/query.sql.go b/internal/endtoend/testdata/pg_dump/db/query.sql.go
index 8eaeecdefa..75c8c8ef6a 100644
--- a/internal/endtoend/testdata/pg_dump/db/query.sql.go
+++ b/internal/endtoend/testdata/pg_dump/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/pg_dump/exec.json b/internal/endtoend/testdata/pg_dump/exec.json
index c16f123ce3..c85ca2dfa7 100644
--- a/internal/endtoend/testdata/pg_dump/exec.json
+++ b/internal/endtoend/testdata/pg_dump/exec.json
@@ -1,3 +1,6 @@
{
- "contexts": ["base"]
-}
\ No newline at end of file
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/models.go
index 72b7bd4f0f..dffd4cde8c 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/query.sql.go
index 7fc309667a..8d665d9985 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/models.go
index 579be29a42..25d7a8199f 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/query.sql.go
index 7fc309667a..8d665d9985 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/models.go
index 72b7bd4f0f..dffd4cde8c 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/query.sql.go
index 3ad05919a8..54fd0c340e 100644
--- a/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_ext_ltree/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pg_trgm.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pg_trgm.sql.go
index 93c5ceadbc..976e3cda74 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pg_trgm.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pg_trgm.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pg_trgm.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pgcrypto.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pgcrypto.sql.go
index e033070082..a3f74a91d1 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pgcrypto.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/pgcrypto.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pgcrypto.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/uuid_ossp.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/uuid_ossp.sql.go
index 902fb1294b..5b93976877 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/uuid_ossp.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v4/go/uuid_ossp.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: uuid_ossp.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pg_trgm.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pg_trgm.sql.go
index 93c5ceadbc..976e3cda74 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pg_trgm.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pg_trgm.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pg_trgm.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pgcrypto.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pgcrypto.sql.go
index e033070082..a3f74a91d1 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pgcrypto.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/pgcrypto.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pgcrypto.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/uuid_ossp.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/uuid_ossp.sql.go
index 93f7ac330f..74293388e8 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/uuid_ossp.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/pgx/v5/go/uuid_ossp.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: uuid_ossp.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pg_trgm.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pg_trgm.sql.go
index 48f88ca92d..d894170109 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pg_trgm.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pg_trgm.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pg_trgm.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pgcrypto.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pgcrypto.sql.go
index 3b2145bb9e..f07fde7eea 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pgcrypto.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/pgcrypto.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: pgcrypto.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/uuid_ossp.sql.go b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/uuid_ossp.sql.go
index 396110be11..23dce40e33 100644
--- a/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/uuid_ossp.sql.go
+++ b/internal/endtoend/testdata/pg_extensions/postgresql/stdlib/go/uuid_ossp.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: uuid_ossp.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/query.sql.go
index 04200a5b84..69df42eed8 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/query.sql.go
index 148c31675d..3e98b23ce0 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/query.sql.go
index 1a92f8446a..5895a14a59 100644
--- a/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_generate_series/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/db.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/db.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/models.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/models.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/query.sql.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/query.sql.go
index 7a55095a98..1a22d2cd4e 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/query.sql.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v4/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/db.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/db.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/models.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/models.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/query.sql.go b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/query.sql.go
index fa9e331240..f8a8c125db 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/query.sql.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_pgx/v5/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/db.go b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/db.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/models.go b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/models.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/query.sql.go b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/query.sql.go
index d112e11904..369a182dae 100644
--- a/internal/endtoend/testdata/pg_timezone_names/go_stdlib/query.sql.go
+++ b/internal/endtoend/testdata/pg_timezone_names/go_stdlib/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_timezone_names/schema.sql b/internal/endtoend/testdata/pg_timezone_names/schema.sql
new file mode 100644
index 0000000000..e0ac49d1ec
--- /dev/null
+++ b/internal/endtoend/testdata/pg_timezone_names/schema.sql
@@ -0,0 +1 @@
+SELECT 1;
diff --git a/internal/endtoend/testdata/pg_timezone_names/sqlc.json b/internal/endtoend/testdata/pg_timezone_names/sqlc.json
index 404ef769a9..1f0b8cd3d6 100644
--- a/internal/endtoend/testdata/pg_timezone_names/sqlc.json
+++ b/internal/endtoend/testdata/pg_timezone_names/sqlc.json
@@ -3,7 +3,7 @@
"sql": [
{
"engine": "postgresql",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql",
"gen": {
"go": {
@@ -15,7 +15,7 @@
},
{
"engine": "postgresql",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql",
"gen": {
"go": {
@@ -27,7 +27,7 @@
},
{
"engine": "postgresql",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql",
"gen": {
"go": {
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/query.sql.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/query.sql.go
index 856f99a7bb..7c1301ce7c 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/models.go
index a18f57540f..210882cd84 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type User struct {
ID int64
}
diff --git a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/query.sql.go
index 0d8d38d641..f95c7eb71f 100644
--- a/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_user_table/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pg_vector/postgresql/pgx/exec.json b/internal/endtoend/testdata/pg_vector/postgresql/pgx/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/pg_vector/postgresql/pgx/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/db.go b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/models.go b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/models.go
index 64f2131588..958ec99717 100644
--- a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/query.sql.go
index 286bdf4313..c5a1db8a21 100644
--- a/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/pg_vector/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/db.go
index c7f490972c..998accfb8f 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/models.go
index c0c9c6a266..e03befd21f 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/query.sql.go
index 7ab1cdb674..d2201946d2 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package datatype
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/db.go
index c5a8f914d5..814523221a 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/models.go
index 04eea352a2..ac7d306b14 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package datatype
diff --git a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/query.sql.go
index adc8cfbf0c..7af9c2489f 100644
--- a/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/pointer_type_import/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package datatype
diff --git a/internal/endtoend/testdata/prepared_queries/mysql/go/db.go b/internal/endtoend/testdata/prepared_queries/mysql/go/db.go
index af0186dae7..5a3009abc4 100644
--- a/internal/endtoend/testdata/prepared_queries/mysql/go/db.go
+++ b/internal/endtoend/testdata/prepared_queries/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/prepared_queries/mysql/go/models.go b/internal/endtoend/testdata/prepared_queries/mysql/go/models.go
index 9aaf6df1fb..3b857567b4 100644
--- a/internal/endtoend/testdata/prepared_queries/mysql/go/models.go
+++ b/internal/endtoend/testdata/prepared_queries/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/prepared_queries/mysql/go/query.sql.go b/internal/endtoend/testdata/prepared_queries/mysql/go/query.sql.go
index 56662687a5..14b229e3b5 100644
--- a/internal/endtoend/testdata/prepared_queries/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/prepared_queries/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/db.go
index af0186dae7..5a3009abc4 100644
--- a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/models.go
index e044b724ac..72e2b95b75 100644
--- a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/query.sql.go
index 22055d870a..10199126f6 100644
--- a/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/prepared_queries/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/db.go
index 1fc9350ecc..6602b01ca6 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/models.go
index c00d192fc7..ab24622889 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/queries.sql.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/queries.sql.go
index 5619bffad5..66e41acc75 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/queries.sql.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v4/go/queries.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: queries.sql
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/db.go
index 0c4f4cabf4..bd1a278413 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/models.go
index a3d464644a..7c9f363392 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/queries.sql.go b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/queries.sql.go
index 5619bffad5..66e41acc75 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/queries.sql.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/pgx/v5/go/queries.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: queries.sql
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/db.go
index f99535ee3d..e516fbcc7c 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/models.go
index c00d192fc7..ab24622889 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package primary_key_later
diff --git a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/queries.sql.go b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/queries.sql.go
index 70e11be194..50369ba439 100644
--- a/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/queries.sql.go
+++ b/internal/endtoend/testdata/primary_key_later/postgresql/stdlib/go/queries.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: queries.sql
package primary_key_later
diff --git a/internal/endtoend/testdata/process_plugin_disabled/gen/codegen.json b/internal/endtoend/testdata/process_plugin_disabled/gen/codegen.json
index 5b460f31b0..b7563e0f2c 100644
--- a/internal/endtoend/testdata/process_plugin_disabled/gen/codegen.json
+++ b/internal/endtoend/testdata/process_plugin_disabled/gen/codegen.json
@@ -43,7 +43,8 @@
"query_parameter_limit": 1,
"output_batch_file_name": "",
"json_tags_id_uppercase": false,
- "omit_unused_structs": false
+ "omit_unused_structs": false,
+ "emit_sql_as_comment": false
},
"json": {
"out": "",
@@ -65397,6 +65398,6 @@
"insert_into_table": null
}
],
- "sqlc_version": "v1.24.0",
+ "sqlc_version": "v1.29.0",
"plugin_options": "eyJmaWxlbmFtZSI6ImNvZGVnZW4uanNvbiIsImluZGVudCI6IiAgIn0="
}
diff --git a/internal/endtoend/testdata/process_plugin_format_json/exec.json b/internal/endtoend/testdata/process_plugin_format_json/exec.json
new file mode 100644
index 0000000000..2cfb9f266d
--- /dev/null
+++ b/internal/endtoend/testdata/process_plugin_format_json/exec.json
@@ -0,0 +1,4 @@
+{
+ "process": "test-json-process-plugin",
+ "os": [ "darwin", "linux" ]
+}
diff --git a/internal/endtoend/testdata/process_plugin_format_json/gen/hello.txt b/internal/endtoend/testdata/process_plugin_format_json/gen/hello.txt
new file mode 100644
index 0000000000..05d6799f15
--- /dev/null
+++ b/internal/endtoend/testdata/process_plugin_format_json/gen/hello.txt
@@ -0,0 +1,12 @@
+SELECT id, name, bio FROM authors
+WHERE id = $1 LIMIT 1
+SELECT id, name, bio FROM authors
+ORDER BY name
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING id, name, bio
+DELETE FROM authors
+WHERE id = $1
diff --git a/internal/endtoend/testdata/process_plugin_format_json/query.sql b/internal/endtoend/testdata/process_plugin_format_json/query.sql
new file mode 100644
index 0000000000..75e38b2caf
--- /dev/null
+++ b/internal/endtoend/testdata/process_plugin_format_json/query.sql
@@ -0,0 +1,19 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING *;
+
+-- name: DeleteAuthor :exec
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/process_plugin_format_json/schema.sql b/internal/endtoend/testdata/process_plugin_format_json/schema.sql
new file mode 100644
index 0000000000..b4fad78497
--- /dev/null
+++ b/internal/endtoend/testdata/process_plugin_format_json/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/process_plugin_format_json/sqlc.json b/internal/endtoend/testdata/process_plugin_format_json/sqlc.json
new file mode 100644
index 0000000000..28055fa571
--- /dev/null
+++ b/internal/endtoend/testdata/process_plugin_format_json/sqlc.json
@@ -0,0 +1,25 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "codegen": [
+ {
+ "out": "gen",
+ "plugin": "jsonb"
+ }
+ ]
+ }
+ ],
+ "plugins": [
+ {
+ "name": "jsonb",
+ "process": {
+ "cmd": "test-json-process-plugin",
+ "format": "json"
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/process_plugin_sqlc_gen_json/gen/codegen.json b/internal/endtoend/testdata/process_plugin_sqlc_gen_json/gen/codegen.json
index b528d2f9b9..4ec61a3308 100644
--- a/internal/endtoend/testdata/process_plugin_sqlc_gen_json/gen/codegen.json
+++ b/internal/endtoend/testdata/process_plugin_sqlc_gen_json/gen/codegen.json
@@ -65365,7 +65365,7 @@
"insert_into_table": null
}
],
- "sqlc_version": "v1.24.0",
+ "sqlc_version": "v1.29.0",
"plugin_options": "eyJmaWxlbmFtZSI6ImNvZGVnZW4uanNvbiIsImluZGVudCI6IiAgIn0=",
"global_options": ""
}
diff --git a/internal/endtoend/testdata/process_plugin_sqlc_gen_test/exec.json b/internal/endtoend/testdata/process_plugin_sqlc_gen_test/exec.json
index 7865c9ec17..1aa4920cb9 100644
--- a/internal/endtoend/testdata/process_plugin_sqlc_gen_test/exec.json
+++ b/internal/endtoend/testdata/process_plugin_sqlc_gen_test/exec.json
@@ -1,3 +1,4 @@
{
- "process": "sqlc-gen-test"
-}
\ No newline at end of file
+ "process": "sqlc-gen-test",
+ "os": ["linux", "darwin"]
+}
diff --git a/internal/endtoend/testdata/process_plugin_sqlc_gen_test/gen/env.json b/internal/endtoend/testdata/process_plugin_sqlc_gen_test/gen/env.json
index cf39d6065c..8c776c74b9 100644
--- a/internal/endtoend/testdata/process_plugin_sqlc_gen_test/gen/env.json
+++ b/internal/endtoend/testdata/process_plugin_sqlc_gen_test/gen/env.json
@@ -1,6 +1,6 @@
{
"env": [
- "SQLC_VERSION=v1.24.0",
+ "SQLC_VERSION=v1.29.0",
"SQLC_DUMMY_VALUE=true"
]
}
diff --git a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/db.go b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/db.go
+++ b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/models.go b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/models.go
index 0b2df96668..76fc1befc3 100644
--- a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/models.go
+++ b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/querier.go b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/querier.go
index 3c8ee86029..f470f002a4 100644
--- a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/querier.go
+++ b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/query.sql.go b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/query.sql.go
index dc79b00a7b..729f30632e 100644
--- a/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/query_parameter_limit_param_only/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/db.go b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/db.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/models.go b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/models.go
index a0c338fd02..c8c68f2aa2 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/models.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/query.sql.go b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/query.sql.go
index aed6fdb458..13553b2347 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_two/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/db.go b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/db.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/models.go b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/models.go
index 2421c7b2c0..f6450b2b81 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/models.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/querier.go b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/querier.go
index fe52e3e560..ddfce299ef 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/querier.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/query.sql.go b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/query.sql.go
index 8b0437a4cb..7570c6340f 100644
--- a/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/query_parameter_limit_to_zero/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/quoted_colname/sqlite/go/db.go b/internal/endtoend/testdata/quoted_colname/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/quoted_colname/sqlite/go/db.go
+++ b/internal/endtoend/testdata/quoted_colname/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/quoted_colname/sqlite/go/models.go b/internal/endtoend/testdata/quoted_colname/sqlite/go/models.go
index f045c53b94..8280cd5a64 100644
--- a/internal/endtoend/testdata/quoted_colname/sqlite/go/models.go
+++ b/internal/endtoend/testdata/quoted_colname/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Test struct {
ID string
}
diff --git a/internal/endtoend/testdata/quoted_colname/sqlite/go/query.sql.go b/internal/endtoend/testdata/quoted_colname/sqlite/go/query.sql.go
index fcf51aaad6..06a1f36544 100644
--- a/internal/endtoend/testdata/quoted_colname/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/quoted_colname/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/go/db.go b/internal/endtoend/testdata/quoted_tablename/sqlite/go/db.go
new file mode 100644
index 0000000000..a92cd6e8eb
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/go/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/go/models.go b/internal/endtoend/testdata/quoted_tablename/sqlite/go/models.go
new file mode 100644
index 0000000000..5a32e08822
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/go/models.go
@@ -0,0 +1,9 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package querytest
+
+type User struct {
+ ID string
+}
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/go/query.sql.go b/internal/endtoend/testdata/quoted_tablename/sqlite/go/query.sql.go
new file mode 100644
index 0000000000..c8c17c306a
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/go/query.sql.go
@@ -0,0 +1,37 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package querytest
+
+import (
+ "context"
+)
+
+const testList = `-- name: TestList :many
+SELECT id FROM users
+`
+
+func (q *Queries) TestList(ctx context.Context) ([]string, error) {
+ rows, err := q.db.QueryContext(ctx, testList)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []string
+ for rows.Next() {
+ var id string
+ if err := rows.Scan(&id); err != nil {
+ return nil, err
+ }
+ items = append(items, id)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/query.sql b/internal/endtoend/testdata/quoted_tablename/sqlite/query.sql
new file mode 100644
index 0000000000..0d3b8e238b
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/query.sql
@@ -0,0 +1,2 @@
+-- name: TestList :many
+SELECT * FROM users;
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/schema.sql b/internal/endtoend/testdata/quoted_tablename/sqlite/schema.sql
new file mode 100644
index 0000000000..078fa24bf6
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/schema.sql
@@ -0,0 +1,6 @@
+-- Example queries for sqlc
+CREATE TABLE "users"
+(
+ id TEXT NOT NULL
+);
+
diff --git a/internal/endtoend/testdata/quoted_tablename/sqlite/sqlc.json b/internal/endtoend/testdata/quoted_tablename/sqlite/sqlc.json
new file mode 100644
index 0000000000..ea4a23425f
--- /dev/null
+++ b/internal/endtoend/testdata/quoted_tablename/sqlite/sqlc.json
@@ -0,0 +1,12 @@
+{
+ "version": "1",
+ "packages": [
+ {
+ "path": "go",
+ "engine": "sqlite",
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "name": "querytest"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/internal/endtoend/testdata/ranges/pgx/v5/go/db.go b/internal/endtoend/testdata/ranges/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/ranges/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/ranges/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ranges/pgx/v5/go/models.go b/internal/endtoend/testdata/ranges/pgx/v5/go/models.go
index 8ad519c561..6333dbd03a 100644
--- a/internal/endtoend/testdata/ranges/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/ranges/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/ranges/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/ranges/pgx/v5/go/query.sql.go
index 69ba8d8427..745742058c 100644
--- a/internal/endtoend/testdata/ranges/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/ranges/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/models.go
index 0ba8eed3cf..359bf88b93 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Myview struct {
int32
}
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/query.sql.go
index ede342dc01..81036f9d88 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/models.go
index 0ba8eed3cf..359bf88b93 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Myview struct {
int32
}
diff --git a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/query.sql.go
index ede342dc01..81036f9d88 100644
--- a/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/refreshmatview/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v4/go/db.go b/internal/endtoend/testdata/rename/v1/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v4/go/models.go b/internal/endtoend/testdata/rename/v1/pgx/v4/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/rename/v1/pgx/v4/go/query.sql.go
index 625a837399..2ebdf5dc20 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v5/go/db.go b/internal/endtoend/testdata/rename/v1/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v5/go/models.go b/internal/endtoend/testdata/rename/v1/pgx/v5/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/rename/v1/pgx/v5/go/query.sql.go
index 625a837399..2ebdf5dc20 100644
--- a/internal/endtoend/testdata/rename/v1/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v1/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/stdlib/go/db.go b/internal/endtoend/testdata/rename/v1/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/rename/v1/stdlib/go/db.go
+++ b/internal/endtoend/testdata/rename/v1/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/stdlib/go/models.go b/internal/endtoend/testdata/rename/v1/stdlib/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v1/stdlib/go/models.go
+++ b/internal/endtoend/testdata/rename/v1/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v1/stdlib/go/query.sql.go b/internal/endtoend/testdata/rename/v1/stdlib/go/query.sql.go
index f9f42f53ec..6ddaaffc86 100644
--- a/internal/endtoend/testdata/rename/v1/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v1/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v4/go/db.go b/internal/endtoend/testdata/rename/v2/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v4/go/models.go b/internal/endtoend/testdata/rename/v2/pgx/v4/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/rename/v2/pgx/v4/go/query.sql.go
index 625a837399..2ebdf5dc20 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v5/go/db.go b/internal/endtoend/testdata/rename/v2/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v5/go/models.go b/internal/endtoend/testdata/rename/v2/pgx/v5/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/rename/v2/pgx/v5/go/query.sql.go
index 625a837399..2ebdf5dc20 100644
--- a/internal/endtoend/testdata/rename/v2/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v2/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/stdlib/go/db.go b/internal/endtoend/testdata/rename/v2/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/rename/v2/stdlib/go/db.go
+++ b/internal/endtoend/testdata/rename/v2/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/stdlib/go/models.go b/internal/endtoend/testdata/rename/v2/stdlib/go/models.go
index 2b5e93a51e..53209f1df9 100644
--- a/internal/endtoend/testdata/rename/v2/stdlib/go/models.go
+++ b/internal/endtoend/testdata/rename/v2/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/rename/v2/stdlib/go/query.sql.go b/internal/endtoend/testdata/rename/v2/stdlib/go/query.sql.go
index f9f42f53ec..6ddaaffc86 100644
--- a/internal/endtoend/testdata/rename/v2/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/rename/v2/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/models.go
index b3dfd2d086..99fb06239a 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/query.sql.go
index d71f918848..2a384b52fa 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/models.go
index 0f9f2eea59..0539d15fe6 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/query.sql.go
index 9f99dd3aea..b033435375 100644
--- a/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/returning/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/returning/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/returning/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/returning/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/returning/postgresql/stdlib/go/models.go
index b3dfd2d086..99fb06239a 100644
--- a/internal/endtoend/testdata/returning/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/returning/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/returning/postgresql/stdlib/go/query.sql.go
index 72d6580206..32f5ec727b 100644
--- a/internal/endtoend/testdata/returning/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/returning/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/returning/sqlite/go/db.go b/internal/endtoend/testdata/returning/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/returning/sqlite/go/db.go
+++ b/internal/endtoend/testdata/returning/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/sqlite/go/models.go b/internal/endtoend/testdata/returning/sqlite/go/models.go
index 1403345896..7664a57d7e 100644
--- a/internal/endtoend/testdata/returning/sqlite/go/models.go
+++ b/internal/endtoend/testdata/returning/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/returning/sqlite/go/query.sql.go b/internal/endtoend/testdata/returning/sqlite/go/query.sql.go
index 83159cc5af..5145eba78a 100644
--- a/internal/endtoend/testdata/returning/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/returning/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/mysql/exec.json b/internal/endtoend/testdata/schema_scoped_create/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/schema_scoped_create/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/schema_scoped_create/mysql/go/db.go b/internal/endtoend/testdata/schema_scoped_create/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_create/mysql/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_create/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/mysql/go/models.go b/internal/endtoend/testdata/schema_scoped_create/mysql/go/models.go
index 2d538fa0b4..33f73d9e28 100644
--- a/internal/endtoend/testdata/schema_scoped_create/mysql/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_create/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID uint64
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_create/mysql/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_create/mysql/go/query.sql.go
index f6d329768f..d172d4f480 100644
--- a/internal/endtoend/testdata/schema_scoped_create/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_create/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/query.sql.go
index a506e7e2d2..2142276375 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/query.sql.go
index a506e7e2d2..2142276375 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/query.sql.go
index f2af68f639..1f454b9b85 100644
--- a/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_create/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/mysql/exec.json b/internal/endtoend/testdata/schema_scoped_delete/mysql/exec.json
new file mode 100644
index 0000000000..a0e224b3f8
--- /dev/null
+++ b/internal/endtoend/testdata/schema_scoped_delete/mysql/exec.json
@@ -0,0 +1,7 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
+
\ No newline at end of file
diff --git a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/db.go b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/models.go b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/models.go
index c4556f48bb..12a0f28424 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/query.sql.go
index 9623ffa6b9..3ac0842b9a 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/query.sql.go
index b2ba3fd9de..214db96634 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/query.sql.go
index b2ba3fd9de..214db96634 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/query.sql.go
index fe0806c5d1..d56cc80b60 100644
--- a/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_delete/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/models.go
index e2b6761c72..00e016a5c0 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/query.sql.go
index 4008bb96c8..9f43c9af4d 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/models.go
index e2b6761c72..00e016a5c0 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/query.sql.go
index 4008bb96c8..9f43c9af4d 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/models.go
index e2b6761c72..00e016a5c0 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/query.sql.go
index f6da1ed254..698da3636b 100644
--- a/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_enum/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/mysql/exec.json b/internal/endtoend/testdata/schema_scoped_filter/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/schema_scoped_filter/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/db.go b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/models.go b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/models.go
index c4556f48bb..12a0f28424 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/query.sql.go
index 2a40865880..35a9bca8c8 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/mysql/schema.sql b/internal/endtoend/testdata/schema_scoped_filter/mysql/schema.sql
index a22ab0907d..e5cb43f4bf 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/mysql/schema.sql
+++ b/internal/endtoend/testdata/schema_scoped_filter/mysql/schema.sql
@@ -1,3 +1,2 @@
CREATE SCHEMA foo;
CREATE TABLE foo.bar (id serial not null);
-
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/query.sql.go
index 8b5c3d54cc..eadf0cfbc5 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/query.sql.go
index 8b5c3d54cc..eadf0cfbc5 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/query.sql.go
index ef981eac58..276e05f279 100644
--- a/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_filter/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/mysql/exec.json b/internal/endtoend/testdata/schema_scoped_list/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/schema_scoped_list/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/schema_scoped_list/mysql/go/db.go b/internal/endtoend/testdata/schema_scoped_list/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_list/mysql/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_list/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/mysql/go/models.go b/internal/endtoend/testdata/schema_scoped_list/mysql/go/models.go
index c4556f48bb..12a0f28424 100644
--- a/internal/endtoend/testdata/schema_scoped_list/mysql/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_list/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/schema_scoped_list/mysql/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_list/mysql/go/query.sql.go
index 6c977dae88..de7b366f5f 100644
--- a/internal/endtoend/testdata/schema_scoped_list/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_list/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/query.sql.go
index 698ff49c57..ae13c31e35 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/query.sql.go
index 698ff49c57..ae13c31e35 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/models.go
index 904a4a9059..bb707c1f50 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/query.sql.go
index 7eeee6c29e..2d285c0884 100644
--- a/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_list/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/mysql/exec.json b/internal/endtoend/testdata/schema_scoped_update/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/schema_scoped_update/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/schema_scoped_update/mysql/go/db.go b/internal/endtoend/testdata/schema_scoped_update/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_update/mysql/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_update/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/mysql/go/models.go b/internal/endtoend/testdata/schema_scoped_update/mysql/go/models.go
index 2d538fa0b4..33f73d9e28 100644
--- a/internal/endtoend/testdata/schema_scoped_update/mysql/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_update/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID uint64
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_update/mysql/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_update/mysql/go/query.sql.go
index 571f7d2566..0bb056b60b 100644
--- a/internal/endtoend/testdata/schema_scoped_update/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_update/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/query.sql.go
index d1f58cc753..2fb4074d57 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/query.sql.go
index d1f58cc753..2fb4074d57 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/models.go
index 55904cae3e..a5594a8ef8 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type FooBar struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/query.sql.go
index e267382d05..2c8d31703c 100644
--- a/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_scoped_update/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/db.go b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/models.go b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/models.go
index 4317961387..54b5fbce8e 100644
--- a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/query.sql.go
index cdd6688ceb..301e6b975f 100644
--- a/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/schema_table_column_ref/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/mysql/go/db.go b/internal/endtoend/testdata/select_column_cast/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_column_cast/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_column_cast/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/mysql/go/models.go b/internal/endtoend/testdata/select_column_cast/mysql/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/select_column_cast/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_column_cast/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/select_column_cast/mysql/go/query.sql.go b/internal/endtoend/testdata/select_column_cast/mysql/go/query.sql.go
index 5189b545b6..204fbbe976 100644
--- a/internal/endtoend/testdata/select_column_cast/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_column_cast/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/query.sql.go
index de5d985681..256218cafb 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/query.sql.go
index de5d985681..256218cafb 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/models.go
index 34d6bb5595..459eece160 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar bool
}
diff --git a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/query.sql.go
index 4ff397e211..d9724cb884 100644
--- a/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_column_cast/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/sqlite/go/db.go b/internal/endtoend/testdata/select_column_cast/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_column_cast/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_column_cast/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_column_cast/sqlite/go/models.go b/internal/endtoend/testdata/select_column_cast/sqlite/go/models.go
index 6f9dbcd7cb..2e4ab15ca4 100644
--- a/internal/endtoend/testdata/select_column_cast/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_column_cast/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Bar string
}
diff --git a/internal/endtoend/testdata/select_column_cast/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_column_cast/sqlite/go/query.sql.go
index e07d6b8374..20d6f2ab72 100644
--- a/internal/endtoend/testdata/select_column_cast/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_column_cast/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_cte/sqlite/go/db.go b/internal/endtoend/testdata/select_cte/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_cte/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_cte/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_cte/sqlite/go/models.go b/internal/endtoend/testdata/select_cte/sqlite/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/select_cte/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_cte/sqlite/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/select_cte/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_cte/sqlite/go/query.sql.go
index 9b508cafec..1d24f26310 100644
--- a/internal/endtoend/testdata/select_cte/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_cte/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v4/go/db.go b/internal/endtoend/testdata/select_distinct/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v4/go/models.go b/internal/endtoend/testdata/select_distinct/pgx/v4/go/models.go
index c1d115e76d..19549f12ca 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_distinct/pgx/v4/go/query.sql.go
index c98489eded..a104a0cd2c 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v5/go/db.go b/internal/endtoend/testdata/select_distinct/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v5/go/models.go b/internal/endtoend/testdata/select_distinct/pgx/v5/go/models.go
index 5b42d5b5d5..435562ad17 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_distinct/pgx/v5/go/query.sql.go
index c98489eded..a104a0cd2c 100644
--- a/internal/endtoend/testdata/select_distinct/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_distinct/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/stdlib/go/db.go b/internal/endtoend/testdata/select_distinct/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_distinct/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_distinct/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/stdlib/go/models.go b/internal/endtoend/testdata/select_distinct/stdlib/go/models.go
index c1d115e76d..19549f12ca 100644
--- a/internal/endtoend/testdata/select_distinct/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_distinct/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_distinct/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_distinct/stdlib/go/query.sql.go
index 18f32c2695..2e2fd3af2e 100644
--- a/internal/endtoend/testdata/select_distinct/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_distinct/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/mysql/query.sql b/internal/endtoend/testdata/select_empty_column_list/mysql/query.sql
index 81b6ff14a1..ae6cd0c9be 100644
--- a/internal/endtoend/testdata/select_empty_column_list/mysql/query.sql
+++ b/internal/endtoend/testdata/select_empty_column_list/mysql/query.sql
@@ -1,4 +1,2 @@
-CREATE TABLE bar (name text);
-
-- name: GetBars :many
-SELECT FROM bar;
\ No newline at end of file
+SELECT FROM bar;
diff --git a/internal/endtoend/testdata/select_empty_column_list/mysql/schema.sql b/internal/endtoend/testdata/select_empty_column_list/mysql/schema.sql
new file mode 100644
index 0000000000..fb18b4b3a8
--- /dev/null
+++ b/internal/endtoend/testdata/select_empty_column_list/mysql/schema.sql
@@ -0,0 +1 @@
+CREATE TABLE bar (name text);
diff --git a/internal/endtoend/testdata/select_empty_column_list/mysql/sqlc.json b/internal/endtoend/testdata/select_empty_column_list/mysql/sqlc.json
index 445bbd1589..e41c39e8b3 100644
--- a/internal/endtoend/testdata/select_empty_column_list/mysql/sqlc.json
+++ b/internal/endtoend/testdata/select_empty_column_list/mysql/sqlc.json
@@ -5,7 +5,7 @@
"path": "go",
"engine": "mysql",
"name": "querytest",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql"
}
]
diff --git a/internal/endtoend/testdata/select_empty_column_list/mysql/stderr.txt b/internal/endtoend/testdata/select_empty_column_list/mysql/stderr.txt
index 11aeb304b0..2744126cd0 100644
--- a/internal/endtoend/testdata/select_empty_column_list/mysql/stderr.txt
+++ b/internal/endtoend/testdata/select_empty_column_list/mysql/stderr.txt
@@ -1,2 +1,2 @@
# package querytest
-query.sql:4:12: syntax error near "FROM bar;" "
+query.sql:2:12: syntax error near "FROM bar;"
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/models.go
index c1d115e76d..19549f12ca 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/query.sql.go
index d61201c1c6..8566115351 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/models.go
index 5b42d5b5d5..435562ad17 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/query.sql.go
index d61201c1c6..8566115351 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/models.go
index c1d115e76d..19549f12ca 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/query.sql.go
index a9238ade3d..2cbce0317c 100644
--- a/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_empty_column_list/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_exists/pgx/v4/go/db.go b/internal/endtoend/testdata/select_exists/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_exists/pgx/v4/go/models.go b/internal/endtoend/testdata/select_exists/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_exists/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_exists/pgx/v4/go/query.sql.go
index eeb486900c..8c157cb7ef 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_exists/pgx/v5/go/db.go b/internal/endtoend/testdata/select_exists/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_exists/pgx/v5/go/models.go b/internal/endtoend/testdata/select_exists/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_exists/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_exists/pgx/v5/go/query.sql.go
index eeb486900c..8c157cb7ef 100644
--- a/internal/endtoend/testdata/select_exists/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_exists/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_exists/sqlite/go/db.go b/internal/endtoend/testdata/select_exists/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_exists/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_exists/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_exists/sqlite/go/models.go b/internal/endtoend/testdata/select_exists/sqlite/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/select_exists/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_exists/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/select_exists/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_exists/sqlite/go/query.sql.go
index 51f96b84f5..8eb12f4f1f 100644
--- a/internal/endtoend/testdata/select_exists/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_exists/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_exists/stdlib/go/db.go b/internal/endtoend/testdata/select_exists/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_exists/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_exists/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_exists/stdlib/go/models.go b/internal/endtoend/testdata/select_exists/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_exists/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_exists/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_exists/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_exists/stdlib/go/query.sql.go
index fa79164bcc..2506b23631 100644
--- a/internal/endtoend/testdata/select_exists/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_exists/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_in_and/sqlite/go/db.go b/internal/endtoend/testdata/select_in_and/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_in_and/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_in_and/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_in_and/sqlite/go/models.go b/internal/endtoend/testdata/select_in_and/sqlite/go/models.go
index 6a0c33c6af..c0ec06ce2e 100644
--- a/internal/endtoend/testdata/select_in_and/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_in_and/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_in_and/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_in_and/sqlite/go/query.sql.go
index f6384e5424..2805ef1206 100644
--- a/internal/endtoend/testdata/select_in_and/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_in_and/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_limit/mysql/go/db.go b/internal/endtoend/testdata/select_limit/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_limit/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_limit/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/mysql/go/models.go b/internal/endtoend/testdata/select_limit/mysql/go/models.go
index f3a1e5006e..69dbf9ba40 100644
--- a/internal/endtoend/testdata/select_limit/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_limit/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/mysql/go/query.sql.go b/internal/endtoend/testdata/select_limit/mysql/go/query.sql.go
index 61a38b7a27..554e0c3b5b 100644
--- a/internal/endtoend/testdata/select_limit/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_limit/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/models.go
index f3a1e5006e..69dbf9ba40 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/query.sql.go
index 615acc2548..766ca624d2 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/models.go
index ab36a1ccd3..d646dea864 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/query.sql.go
index 2a80796b87..cf1efe4fd7 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/models.go
index f3a1e5006e..69dbf9ba40 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/query.sql.go
index 3cafd166aa..294ec34479 100644
--- a/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_limit/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_limit/sqlite/go/db.go b/internal/endtoend/testdata/select_limit/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_limit/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_limit/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/sqlite/go/models.go b/internal/endtoend/testdata/select_limit/sqlite/go/models.go
index f3a1e5006e..69dbf9ba40 100644
--- a/internal/endtoend/testdata/select_limit/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_limit/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_limit/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_limit/sqlite/go/query.sql.go
index f71769eb02..8b6a3342f3 100644
--- a/internal/endtoend/testdata/select_limit/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_limit/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/mysql/go/db.go b/internal/endtoend/testdata/select_nested_count/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_nested_count/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_nested_count/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/mysql/go/models.go b/internal/endtoend/testdata/select_nested_count/mysql/go/models.go
index f407e1fc0f..1c45f7a24b 100644
--- a/internal/endtoend/testdata/select_nested_count/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_nested_count/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/mysql/go/query.sql.go b/internal/endtoend/testdata/select_nested_count/mysql/go/query.sql.go
index 3c4fde64ab..2eaff0920b 100644
--- a/internal/endtoend/testdata/select_nested_count/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_nested_count/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/postgresql/go/db.go b/internal/endtoend/testdata/select_nested_count/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_nested_count/postgresql/go/db.go
+++ b/internal/endtoend/testdata/select_nested_count/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/postgresql/go/models.go b/internal/endtoend/testdata/select_nested_count/postgresql/go/models.go
index f407e1fc0f..1c45f7a24b 100644
--- a/internal/endtoend/testdata/select_nested_count/postgresql/go/models.go
+++ b/internal/endtoend/testdata/select_nested_count/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/postgresql/go/query.sql.go b/internal/endtoend/testdata/select_nested_count/postgresql/go/query.sql.go
index 3c4fde64ab..2eaff0920b 100644
--- a/internal/endtoend/testdata/select_nested_count/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_nested_count/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/sqlite/go/db.go b/internal/endtoend/testdata/select_nested_count/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_nested_count/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_nested_count/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/sqlite/go/models.go b/internal/endtoend/testdata/select_nested_count/sqlite/go/models.go
index f407e1fc0f..1c45f7a24b 100644
--- a/internal/endtoend/testdata/select_nested_count/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_nested_count/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_nested_count/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_nested_count/sqlite/go/query.sql.go
index 3c4fde64ab..2eaff0920b 100644
--- a/internal/endtoend/testdata/select_nested_count/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_nested_count/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/db.go b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/models.go b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/query.sql.go
index 2bfe786361..388d529ae8 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/db.go b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/models.go b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/query.sql.go
index 2bfe786361..388d529ae8 100644
--- a/internal/endtoend/testdata/select_not_exists/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_not_exists/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/sqlite/go/db.go b/internal/endtoend/testdata/select_not_exists/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_not_exists/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_not_exists/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/sqlite/go/models.go b/internal/endtoend/testdata/select_not_exists/sqlite/go/models.go
index 976bfd9bed..ca42773ba2 100644
--- a/internal/endtoend/testdata/select_not_exists/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_not_exists/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int64
}
diff --git a/internal/endtoend/testdata/select_not_exists/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_not_exists/sqlite/go/query.sql.go
index 11a5fd567e..ae5e6c7cc1 100644
--- a/internal/endtoend/testdata/select_not_exists/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_not_exists/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/stdlib/go/db.go b/internal/endtoend/testdata/select_not_exists/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_not_exists/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_not_exists/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_not_exists/stdlib/go/models.go b/internal/endtoend/testdata/select_not_exists/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/select_not_exists/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_not_exists/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/select_not_exists/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_not_exists/stdlib/go/query.sql.go
index 71bdfe6d1c..8e3d2ee03b 100644
--- a/internal/endtoend/testdata/select_not_exists/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_not_exists/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/db.go b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/models.go b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/query.sql.go
index 2e12b8a0f7..5c6de30c01 100644
--- a/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/select_sequence/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star/mysql/go/db.go b/internal/endtoend/testdata/select_star/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_star/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_star/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/mysql/go/models.go b/internal/endtoend/testdata/select_star/mysql/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/select_star/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_star/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/mysql/go/query.sql.go b/internal/endtoend/testdata/select_star/mysql/go/query.sql.go
index d806a5fd38..341ed607c1 100644
--- a/internal/endtoend/testdata/select_star/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/query.sql.go
index 34b2ac794f..1382d79b9e 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/models.go
index 64c7220ac0..d41e7ef9af 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/query.sql.go
index 34b2ac794f..1382d79b9e 100644
--- a/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/models.go
index 04db089305..91e3b8faa3 100644
--- a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/query.sql.go
index d806a5fd38..341ed607c1 100644
--- a/internal/endtoend/testdata/select_star/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star/sqlite/go/db.go b/internal/endtoend/testdata/select_star/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_star/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_star/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/sqlite/go/models.go b/internal/endtoend/testdata/select_star/sqlite/go/models.go
index 7e8e0b5b34..dc6b7b6676 100644
--- a/internal/endtoend/testdata/select_star/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_star/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_star/sqlite/go/query.sql.go
index ab042a3a1d..49742884e6 100644
--- a/internal/endtoend/testdata/select_star/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/mysql/go/db.go b/internal/endtoend/testdata/select_star_quoted/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_star_quoted/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_star_quoted/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/mysql/go/models.go b/internal/endtoend/testdata/select_star_quoted/mysql/go/models.go
index 6af91fef2a..19959dd0a8 100644
--- a/internal/endtoend/testdata/select_star_quoted/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_star_quoted/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/mysql/go/query.sql.go b/internal/endtoend/testdata/select_star_quoted/mysql/go/query.sql.go
index 75cbe01d4e..2b28bcc163 100644
--- a/internal/endtoend/testdata/select_star_quoted/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star_quoted/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/models.go
index 95e4223698..d9d7dc0087 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/query.sql.go
index 131bc53f7d..a056808ba5 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/models.go
index 35076a9a7c..45a1b664e2 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/query.sql.go
index f16b020881..10590d638d 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/models.go
index 95e4223698..d9d7dc0087 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/query.sql.go
index 7803b2642a..47769cbc0c 100644
--- a/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_star_quoted/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/models.go
index 1963173759..ea697f12b9 100644
--- a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/query.sql.go
index 7224d00dd3..56d65ab88a 100644
--- a/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_subquery/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/db.go b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/models.go b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/models.go
index f3a52fab00..6d490c4e74 100644
--- a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/query.sql.go
index 05590300fb..9147766311 100644
--- a/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/select_subquery_alias/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_system/pgx/go/db.go b/internal/endtoend/testdata/select_system/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_system/pgx/go/db.go
+++ b/internal/endtoend/testdata/select_system/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_system/pgx/go/models.go b/internal/endtoend/testdata/select_system/pgx/go/models.go
index c33f106c64..9a2bab52bb 100644
--- a/internal/endtoend/testdata/select_system/pgx/go/models.go
+++ b/internal/endtoend/testdata/select_system/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_system/pgx/go/query.sql.go b/internal/endtoend/testdata/select_system/pgx/go/query.sql.go
index f5446a7ea6..1b9253517a 100644
--- a/internal/endtoend/testdata/select_system/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/select_system/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v4/go/db.go b/internal/endtoend/testdata/select_text_array/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v4/go/models.go b/internal/endtoend/testdata/select_text_array/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_text_array/pgx/v4/go/query.sql.go
index 7caa0289e9..c845ab3ff9 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v5/go/db.go b/internal/endtoend/testdata/select_text_array/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v5/go/models.go b/internal/endtoend/testdata/select_text_array/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/select_text_array/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_text_array/pgx/v5/go/query.sql.go
index 7caa0289e9..c845ab3ff9 100644
--- a/internal/endtoend/testdata/select_text_array/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_text_array/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/stdlib/go/db.go b/internal/endtoend/testdata/select_text_array/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_text_array/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_text_array/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_text_array/stdlib/go/models.go b/internal/endtoend/testdata/select_text_array/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/select_text_array/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_text_array/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/select_text_array/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_text_array/stdlib/go/query.sql.go
index 3db1fc2d61..cf5751e53d 100644
--- a/internal/endtoend/testdata/select_text_array/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_text_array/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union/mysql/go/db.go b/internal/endtoend/testdata/select_union/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_union/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_union/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/mysql/go/models.go b/internal/endtoend/testdata/select_union/mysql/go/models.go
index f354e21567..aa9d0b252f 100644
--- a/internal/endtoend/testdata/select_union/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_union/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/mysql/go/query.sql.go b/internal/endtoend/testdata/select_union/mysql/go/query.sql.go
index b757c2137e..011ef8eb07 100644
--- a/internal/endtoend/testdata/select_union/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/db.go b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/models.go b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/models.go
index f354e21567..aa9d0b252f 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/query.sql.go
index 4908af50a8..9380106f0c 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/db.go b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/models.go b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/models.go
index a276bebb8b..219e38bdc3 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/query.sql.go
index 4908af50a8..9380106f0c 100644
--- a/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union/postgres/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/stdlib/go/db.go b/internal/endtoend/testdata/select_union/postgres/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_union/postgres/stdlib/go/db.go
+++ b/internal/endtoend/testdata/select_union/postgres/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/stdlib/go/models.go b/internal/endtoend/testdata/select_union/postgres/stdlib/go/models.go
index f354e21567..aa9d0b252f 100644
--- a/internal/endtoend/testdata/select_union/postgres/stdlib/go/models.go
+++ b/internal/endtoend/testdata/select_union/postgres/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/postgres/stdlib/go/query.sql.go b/internal/endtoend/testdata/select_union/postgres/stdlib/go/query.sql.go
index b65905709d..ebc0fbb363 100644
--- a/internal/endtoend/testdata/select_union/postgres/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union/postgres/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union/sqlite/go/db.go b/internal/endtoend/testdata/select_union/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_union/sqlite/go/db.go
+++ b/internal/endtoend/testdata/select_union/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/sqlite/go/models.go b/internal/endtoend/testdata/select_union/sqlite/go/models.go
index f354e21567..aa9d0b252f 100644
--- a/internal/endtoend/testdata/select_union/sqlite/go/models.go
+++ b/internal/endtoend/testdata/select_union/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union/sqlite/go/query.sql.go b/internal/endtoend/testdata/select_union/sqlite/go/query.sql.go
index d812226e77..6586b036f5 100644
--- a/internal/endtoend/testdata/select_union/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/mysql/go/db.go b/internal/endtoend/testdata/select_union_subquery/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/select_union_subquery/mysql/go/db.go
+++ b/internal/endtoend/testdata/select_union_subquery/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/mysql/go/models.go b/internal/endtoend/testdata/select_union_subquery/mysql/go/models.go
index 7e46ec5ccf..66c9c4ae3d 100644
--- a/internal/endtoend/testdata/select_union_subquery/mysql/go/models.go
+++ b/internal/endtoend/testdata/select_union_subquery/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/mysql/go/query.sql.go b/internal/endtoend/testdata/select_union_subquery/mysql/go/query.sql.go
index 007d1061bb..051cb0b62b 100644
--- a/internal/endtoend/testdata/select_union_subquery/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union_subquery/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/postgresql/go/db.go b/internal/endtoend/testdata/select_union_subquery/postgresql/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/select_union_subquery/postgresql/go/db.go
+++ b/internal/endtoend/testdata/select_union_subquery/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/postgresql/go/models.go b/internal/endtoend/testdata/select_union_subquery/postgresql/go/models.go
index bbae5eadf3..3b8d187838 100644
--- a/internal/endtoend/testdata/select_union_subquery/postgresql/go/models.go
+++ b/internal/endtoend/testdata/select_union_subquery/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/select_union_subquery/postgresql/go/query.sql.go b/internal/endtoend/testdata/select_union_subquery/postgresql/go/query.sql.go
index f2c6dd38ce..3c7b5ca760 100644
--- a/internal/endtoend/testdata/select_union_subquery/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/select_union_subquery/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/selectstatic/mysql/go/db.go b/internal/endtoend/testdata/selectstatic/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/selectstatic/mysql/go/db.go
+++ b/internal/endtoend/testdata/selectstatic/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/selectstatic/mysql/go/models.go b/internal/endtoend/testdata/selectstatic/mysql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/selectstatic/mysql/go/models.go
+++ b/internal/endtoend/testdata/selectstatic/mysql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/selectstatic/mysql/go/query.sql.go b/internal/endtoend/testdata/selectstatic/mysql/go/query.sql.go
index 571b3fb775..28b6b0a485 100644
--- a/internal/endtoend/testdata/selectstatic/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/selectstatic/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/show_warnings/mysql/go/db.go b/internal/endtoend/testdata/show_warnings/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/show_warnings/mysql/go/db.go
+++ b/internal/endtoend/testdata/show_warnings/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/show_warnings/mysql/go/models.go b/internal/endtoend/testdata/show_warnings/mysql/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/show_warnings/mysql/go/models.go
+++ b/internal/endtoend/testdata/show_warnings/mysql/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/show_warnings/mysql/go/query.sql.go b/internal/endtoend/testdata/show_warnings/mysql/go/query.sql.go
index 2a16e1e689..3781c58557 100644
--- a/internal/endtoend/testdata/show_warnings/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/show_warnings/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/mysql/go/db.go b/internal/endtoend/testdata/single_param_conflict/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/single_param_conflict/mysql/go/db.go
+++ b/internal/endtoend/testdata/single_param_conflict/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/mysql/go/models.go b/internal/endtoend/testdata/single_param_conflict/mysql/go/models.go
index 64d3d6eb84..b0ef6cb70e 100644
--- a/internal/endtoend/testdata/single_param_conflict/mysql/go/models.go
+++ b/internal/endtoend/testdata/single_param_conflict/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/mysql/go/query.sql.go b/internal/endtoend/testdata/single_param_conflict/mysql/go/query.sql.go
index 39ab02bc65..59c03fafad 100644
--- a/internal/endtoend/testdata/single_param_conflict/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/single_param_conflict/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/mysql/schema.sql b/internal/endtoend/testdata/single_param_conflict/mysql/schema.sql
index 376329e101..2f49d219f3 100644
--- a/internal/endtoend/testdata/single_param_conflict/mysql/schema.sql
+++ b/internal/endtoend/testdata/single_param_conflict/mysql/schema.sql
@@ -7,5 +7,5 @@ CREATE TABLE authors (
-- https://github.com/sqlc-dev/sqlc/issues/1290
CREATE TABLE users (
- sub TEXT PRIMARY KEY
+ sub VARCHAR(10) PRIMARY KEY
);
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/models.go
index 1101138ac2..4df75a40d3 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/query.sql.go
index b3d9fcef1e..c645e26cb4 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/models.go
index 5b6829cecc..ce4653f55b 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/query.sql.go
index 391f7fbcc3..1c68b8f217 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/models.go
index 1101138ac2..4df75a40d3 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/query.sql.go
index 0ec3f855df..2ea65c841a 100644
--- a/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/single_param_conflict/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/sqlite/go/db.go b/internal/endtoend/testdata/single_param_conflict/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/single_param_conflict/sqlite/go/db.go
+++ b/internal/endtoend/testdata/single_param_conflict/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/sqlite/go/models.go b/internal/endtoend/testdata/single_param_conflict/sqlite/go/models.go
index 64d3d6eb84..b0ef6cb70e 100644
--- a/internal/endtoend/testdata/single_param_conflict/sqlite/go/models.go
+++ b/internal/endtoend/testdata/single_param_conflict/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/single_param_conflict/sqlite/go/query.sql.go b/internal/endtoend/testdata/single_param_conflict/sqlite/go/query.sql.go
index 39ab02bc65..59c03fafad 100644
--- a/internal/endtoend/testdata/single_param_conflict/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/single_param_conflict/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/query.sql.go
index e636a12f22..a1f74b9583 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/query.sql.go
index e636a12f22..a1f74b9583 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/models.go
index 2f345e4ecb..c157a76881 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/models.go
@@ -1,7 +1,5 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-
-import ()
diff --git a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/query.sql.go
index 107e55d979..c6f94eb41f 100644
--- a/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/sql_syntax_calling_funcs/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/mysql/go/db.go b/internal/endtoend/testdata/sqlc_arg/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_arg/mysql/go/db.go
+++ b/internal/endtoend/testdata/sqlc_arg/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/mysql/go/models.go b/internal/endtoend/testdata/sqlc_arg/mysql/go/models.go
index f2489a04c4..206b135413 100644
--- a/internal/endtoend/testdata/sqlc_arg/mysql/go/models.go
+++ b/internal/endtoend/testdata/sqlc_arg/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_arg/mysql/go/query.sql.go b/internal/endtoend/testdata/sqlc_arg/mysql/go/query.sql.go
index f826d965b6..f7db77ed48 100644
--- a/internal/endtoend/testdata/sqlc_arg/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_arg/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/models.go
index f2489a04c4..206b135413 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/query.sql.go
index aa0d380005..1cdf39be7e 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/models.go
index f2489a04c4..206b135413 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/query.sql.go
index aa0d380005..1cdf39be7e 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/models.go
index f2489a04c4..206b135413 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/query.sql.go
index ade96d5988..4542fcdc31 100644
--- a/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_arg/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/sqlite/go/db.go b/internal/endtoend/testdata/sqlc_arg/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_arg/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlc_arg/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg/sqlite/go/models.go b/internal/endtoend/testdata/sqlc_arg/sqlite/go/models.go
index f2489a04c4..206b135413 100644
--- a/internal/endtoend/testdata/sqlc_arg/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlc_arg/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_arg/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlc_arg/sqlite/go/query.sql.go
index 11f80f8501..540caf0ef8 100644
--- a/internal/endtoend/testdata/sqlc_arg/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_arg/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/query.sql b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/query.sql
index 3e46d7204b..80d171b2c2 100644
--- a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/query.sql
+++ b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/query.sql
@@ -1,8 +1,3 @@
-CREATE TABLE users (
- id serial,
- first_name text not null
-);
-
-- name: WrongFunc :one
select id, first_name from users where id = sqlc.argh(target_id);
diff --git a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/schema.sql b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/schema.sql
new file mode 100644
index 0000000000..b11bfef310
--- /dev/null
+++ b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/schema.sql
@@ -0,0 +1,4 @@
+CREATE TABLE users (
+ id serial,
+ first_name text not null
+);
diff --git a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/sqlc.json b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/sqlc.json
index bfbd23e211..a9e7b055a4 100644
--- a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/sqlc.json
+++ b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/sqlc.json
@@ -4,7 +4,7 @@
{
"name": "querytest",
"path": "go",
- "schema": "query.sql",
+ "schema": "schema.sql",
"queries": "query.sql",
"engine": "mysql"
}
diff --git a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/stderr.txt b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/stderr.txt
index be38c8b505..73966182fb 100644
--- a/internal/endtoend/testdata/sqlc_arg_invalid/mysql/stderr.txt
+++ b/internal/endtoend/testdata/sqlc_arg_invalid/mysql/stderr.txt
@@ -1,6 +1,6 @@
# package querytest
-query.sql:7:1: function "sqlc.argh" does not exist
-query.sql:10:45: expected 1 parameter to sqlc.arg; got 2
-query.sql:13:45: expected 1 parameter to sqlc.arg; got 0
-query.sql:16:45: expected parameter to sqlc.arg to be string or reference; got *ast.FuncCall
-query.sql:19:45: expected parameter to sqlc.arg to be string or reference; got *ast.ParamRef
+query.sql:1:1: function "sqlc.argh" does not exist
+query.sql:5:45: expected 1 parameter to sqlc.arg; got 2
+query.sql:8:45: expected 1 parameter to sqlc.arg; got 0
+query.sql:11:45: expected parameter to sqlc.arg to be string or reference; got *ast.FuncCall
+query.sql:14:45: expected parameter to sqlc.arg to be string or reference; got *ast.ParamRef
diff --git a/internal/endtoend/testdata/sqlc_embed/mysql/exec.json b/internal/endtoend/testdata/sqlc_embed/mysql/exec.json
new file mode 100644
index 0000000000..c85ca2dfa7
--- /dev/null
+++ b/internal/endtoend/testdata/sqlc_embed/mysql/exec.json
@@ -0,0 +1,6 @@
+{
+ "contexts": ["base"],
+ "meta": {
+ "invalid_schema": true
+ }
+}
diff --git a/internal/endtoend/testdata/sqlc_embed/mysql/go/db.go b/internal/endtoend/testdata/sqlc_embed/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_embed/mysql/go/db.go
+++ b/internal/endtoend/testdata/sqlc_embed/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/mysql/go/models.go b/internal/endtoend/testdata/sqlc_embed/mysql/go/models.go
index 95b979fc9b..7fef1e3d0c 100644
--- a/internal/endtoend/testdata/sqlc_embed/mysql/go/models.go
+++ b/internal/endtoend/testdata/sqlc_embed/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/mysql/go/query.sql.go b/internal/endtoend/testdata/sqlc_embed/mysql/go/query.sql.go
index 1ba4cafd73..a38d5d4b5e 100644
--- a/internal/endtoend/testdata/sqlc_embed/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_embed/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/db.go b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/models.go b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/models.go
index 33cfe0c6a2..48f680a073 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/query.sql.go
index d76c0b7121..7b80f3aba2 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/models.go
index 72a7c9b6c2..13937d78c4 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/query.sql.go
index fd7197338e..f92f7d228b 100644
--- a/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_embed/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/sqlite/go/db.go b/internal/endtoend/testdata/sqlc_embed/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_embed/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlc_embed/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/sqlite/go/models.go b/internal/endtoend/testdata/sqlc_embed/sqlite/go/models.go
index 3b41304d6c..361281b242 100644
--- a/internal/endtoend/testdata/sqlc_embed/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlc_embed/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_embed/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlc_embed/sqlite/go/query.sql.go
index 0c759bd0fb..47a4763d55 100644
--- a/internal/endtoend/testdata/sqlc_embed/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_embed/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/mysql/go/db.go b/internal/endtoend/testdata/sqlc_narg/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_narg/mysql/go/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/mysql/go/models.go b/internal/endtoend/testdata/sqlc_narg/mysql/go/models.go
index 15a3c19f92..71af5eef74 100644
--- a/internal/endtoend/testdata/sqlc_narg/mysql/go/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/mysql/go/query.sql.go b/internal/endtoend/testdata/sqlc_narg/mysql/go/query.sql.go
index 3cdc84630f..7d18b4f85b 100644
--- a/internal/endtoend/testdata/sqlc_narg/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/models.go
index 15a3c19f92..71af5eef74 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/query.sql.go
index dc23e57b9a..012fb997cc 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/models.go
index 2cab7b4be4..bb4add2663 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/query.sql.go
index 86368c6c27..52d436bad4 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/models.go
index 15a3c19f92..71af5eef74 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/query.sql.go
index c9ff6424fa..c56600fe83 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/db.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/db.go
index 9e681babc2..5d3c96e857 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest_strict
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/models.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/models.go
index 3261c7b9ef..6fdcc24979 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest_strict
diff --git a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/query.sql.go b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/query.sql.go
index de3d2bf9b4..97210e1084 100644
--- a/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/postgresql/stdlib/go_strict/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest_strict
diff --git a/internal/endtoend/testdata/sqlc_narg/sqlite/go/db.go b/internal/endtoend/testdata/sqlc_narg/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_narg/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlc_narg/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/sqlite/go/models.go b/internal/endtoend/testdata/sqlc_narg/sqlite/go/models.go
index 15a3c19f92..71af5eef74 100644
--- a/internal/endtoend/testdata/sqlc_narg/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlc_narg/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_narg/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlc_narg/sqlite/go/query.sql.go
index 3c1be92bbb..fab9e2e7df 100644
--- a/internal/endtoend/testdata/sqlc_narg/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_narg/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/mysql/go/db.go b/internal/endtoend/testdata/sqlc_slice/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_slice/mysql/go/db.go
+++ b/internal/endtoend/testdata/sqlc_slice/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/mysql/go/models.go b/internal/endtoend/testdata/sqlc_slice/mysql/go/models.go
index e069daf5ba..d4d8b65965 100644
--- a/internal/endtoend/testdata/sqlc_slice/mysql/go/models.go
+++ b/internal/endtoend/testdata/sqlc_slice/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/mysql/go/query.sql.go b/internal/endtoend/testdata/sqlc_slice/mysql/go/query.sql.go
index cfaa1ffee5..1ca1201f04 100644
--- a/internal/endtoend/testdata/sqlc_slice/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_slice/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/db.go b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/models.go b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/models.go
index f2489a04c4..19e29bfc9c 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/models.go
@@ -1,11 +1,10 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
+ ID int32
Name string
}
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/query.sql.go
index aa0d380005..df84f742a5 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
@@ -11,10 +11,16 @@ import (
const funcParamIdent = `-- name: FuncParamIdent :many
SELECT name FROM foo WHERE name = $1
+ AND id IN ($2)
`
-func (q *Queries) FuncParamIdent(ctx context.Context, slug string) ([]string, error) {
- rows, err := q.db.Query(ctx, funcParamIdent, slug)
+type FuncParamIdentParams struct {
+ Slug string
+ Favourites []int32
+}
+
+func (q *Queries) FuncParamIdent(ctx context.Context, arg FuncParamIdentParams) ([]string, error) {
+ rows, err := q.db.Query(ctx, funcParamIdent, arg.Slug, arg.Favourites)
if err != nil {
return nil, err
}
@@ -35,10 +41,16 @@ func (q *Queries) FuncParamIdent(ctx context.Context, slug string) ([]string, er
const funcParamString = `-- name: FuncParamString :many
SELECT name FROM foo WHERE name = $1
+ AND id IN ($2)
`
-func (q *Queries) FuncParamString(ctx context.Context, slug string) ([]string, error) {
- rows, err := q.db.Query(ctx, funcParamString, slug)
+type FuncParamStringParams struct {
+ Slug string
+ Favourites []int32
+}
+
+func (q *Queries) FuncParamString(ctx context.Context, arg FuncParamStringParams) ([]string, error) {
+ rows, err := q.db.Query(ctx, funcParamString, arg.Slug, arg.Favourites)
if err != nil {
return nil, err
}
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/query.sql b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/query.sql
index 2dfaa9cd5c..2a5fccf1fc 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/query.sql
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/query.sql
@@ -1,5 +1,7 @@
-- name: FuncParamIdent :many
-SELECT name FROM foo WHERE name = sqlc.arg(slug);
+SELECT name FROM foo WHERE name = sqlc.arg(slug)
+ AND id IN (sqlc.slice(favourites));
-- name: FuncParamString :many
-SELECT name FROM foo WHERE name = sqlc.arg('slug');
+SELECT name FROM foo WHERE name = sqlc.arg('slug')
+ AND id IN (sqlc.slice('favourites'));
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/schema.sql b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/schema.sql
index ec46e55ccb..43e6433e30 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/schema.sql
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/pgx/schema.sql
@@ -1,2 +1,2 @@
-CREATE TABLE foo (name text not null);
+CREATE TABLE foo (id int not null, name text not null);
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/models.go
index dbec851f19..19e29bfc9c 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID int32
Name string
diff --git a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/query.sql.go
index 9d72acfd8a..6cbb0e1247 100644
--- a/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_slice/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/sqlite/go/db.go b/internal/endtoend/testdata/sqlc_slice/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlc_slice/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlc_slice/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/sqlite/go/models.go b/internal/endtoend/testdata/sqlc_slice/sqlite/go/models.go
index ad7cf54a89..d3811ed926 100644
--- a/internal/endtoend/testdata/sqlc_slice/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlc_slice/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlc_slice/sqlite/go/query.sql.go
index ab261d28b4..8c55ae178a 100644
--- a/internal/endtoend/testdata/sqlc_slice/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_slice/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/db.go b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/db.go
index 49cab4c0cd..a74191eb36 100644
--- a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/models.go b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/models.go
index ad7cf54a89..d3811ed926 100644
--- a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/query.sql.go
index 46856abf85..97e6faa351 100644
--- a/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlc_slice_prepared/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/db/db.go b/internal/endtoend/testdata/sqlite_skip_todo/db/db.go
new file mode 100644
index 0000000000..0c56c2b4e8
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/db/models.go b/internal/endtoend/testdata/sqlite_skip_todo/db/models.go
new file mode 100644
index 0000000000..89e37f98bb
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/db/models.go
@@ -0,0 +1,13 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package db
+
+import (
+ "database/sql"
+)
+
+type Foo struct {
+ Bar sql.NullString
+}
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/db/query.sql.go b/internal/endtoend/testdata/sqlite_skip_todo/db/query.sql.go
new file mode 100644
index 0000000000..9fd62914db
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/db/query.sql.go
@@ -0,0 +1,66 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package db
+
+import (
+ "context"
+ "database/sql"
+)
+
+const getFoo = `-- name: GetFoo :many
+SELECT bar FROM foo
+WHERE bar = ?
+`
+
+func (q *Queries) GetFoo(ctx context.Context, bar sql.NullString) ([]sql.NullString, error) {
+ rows, err := q.db.QueryContext(ctx, getFoo, bar)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []sql.NullString
+ for rows.Next() {
+ var bar sql.NullString
+ if err := rows.Scan(&bar); err != nil {
+ return nil, err
+ }
+ items = append(items, bar)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
+
+const listFoo = `-- name: ListFoo :many
+SELECT bar FROM foo
+`
+
+func (q *Queries) ListFoo(ctx context.Context) ([]sql.NullString, error) {
+ rows, err := q.db.QueryContext(ctx, listFoo)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+ var items []sql.NullString
+ for rows.Next() {
+ var bar sql.NullString
+ if err := rows.Scan(&bar); err != nil {
+ return nil, err
+ }
+ items = append(items, bar)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, err
+ }
+ if err := rows.Err(); err != nil {
+ return nil, err
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/query.sql b/internal/endtoend/testdata/sqlite_skip_todo/query.sql
new file mode 100644
index 0000000000..e51c45c8c1
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/query.sql
@@ -0,0 +1,16 @@
+-- name: PragmaForeignKeysEnable :exec
+PRAGMA foreign_keys = 1;
+
+-- name: ListFoo :many
+SELECT * FROM foo;
+
+-- name: PragmaForeignKeysDisable :exec
+PRAGMA foreign_keys = 0;
+
+-- name: PragmaForeignKeysGet :one
+PRAGMA foreign_keys;
+
+-- name: GetFoo :many
+SELECT * FROM foo
+WHERE bar = ?;
+
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/schema.sql b/internal/endtoend/testdata/sqlite_skip_todo/schema.sql
new file mode 100644
index 0000000000..010d09e16f
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/schema.sql
@@ -0,0 +1,3 @@
+CREATE TABLE foo (
+ bar text
+);
diff --git a/internal/endtoend/testdata/sqlite_skip_todo/sqlc.json b/internal/endtoend/testdata/sqlite_skip_todo/sqlc.json
new file mode 100644
index 0000000000..cbd787d930
--- /dev/null
+++ b/internal/endtoend/testdata/sqlite_skip_todo/sqlc.json
@@ -0,0 +1,16 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "engine": "sqlite",
+ "queries": "query.sql",
+ "schema": "schema.sql",
+ "gen": {
+ "go": {
+ "package": "db",
+ "out": "db"
+ }
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/db.go b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/db.go
+++ b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/models.go b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/models.go
index 44da5c1686..06b9bd4a57 100644
--- a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/models.go
+++ b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/query.sql.go b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/query.sql.go
index b464b137b3..c04e329a85 100644
--- a/internal/endtoend/testdata/sqlite_table_options/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/sqlite_table_options/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/mysql/go/db.go b/internal/endtoend/testdata/star_expansion/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion/mysql/go/db.go
+++ b/internal/endtoend/testdata/star_expansion/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/mysql/go/models.go b/internal/endtoend/testdata/star_expansion/mysql/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion/mysql/go/models.go
+++ b/internal/endtoend/testdata/star_expansion/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/mysql/go/query.sql.go b/internal/endtoend/testdata/star_expansion/mysql/go/query.sql.go
index 942be9550b..3d721f7364 100644
--- a/internal/endtoend/testdata/star_expansion/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/query.sql.go
index 6a592a09f1..9dfb9dd036 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/models.go
index 8098627e10..0fdfbd23af 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/query.sql.go
index f8f00d2199..398d554c66 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/query.sql.go
index 7d4fd0600a..6b72975169 100644
--- a/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/sqlite/go/db.go b/internal/endtoend/testdata/star_expansion/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion/sqlite/go/db.go
+++ b/internal/endtoend/testdata/star_expansion/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/sqlite/go/models.go b/internal/endtoend/testdata/star_expansion/sqlite/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion/sqlite/go/models.go
+++ b/internal/endtoend/testdata/star_expansion/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion/sqlite/go/query.sql.go b/internal/endtoend/testdata/star_expansion/sqlite/go/query.sql.go
index 7d4fd0600a..6b72975169 100644
--- a/internal/endtoend/testdata/star_expansion/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/query.sql.go
index 3d16aa5519..6b5d10a6e0 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/models.go
index 72df30fc7d..da2af66906 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/query.sql.go
index d1c4900e13..c0accff535 100644
--- a/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_cte/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/query.sql.go
index dd926718f2..5752ebc75c 100644
--- a/internal/endtoend/testdata/star_expansion_cte/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_cte/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/db.go b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/models.go b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/models.go
index 72ad457c90..be64c0c729 100644
--- a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/query.sql.go
index 5dbd9e174e..918195e696 100644
--- a/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_failed/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/query.sql.go
index 5e61251d72..a98ad7f5a8 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/models.go
index 72df30fc7d..da2af66906 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/query.sql.go
index 139ac2ce7d..fcc2a1edfb 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/query.sql.go
index 00165e1def..e66778811b 100644
--- a/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_from_cte/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/mysql/go/db.go b/internal/endtoend/testdata/star_expansion_join/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_join/mysql/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_join/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/mysql/go/models.go b/internal/endtoend/testdata/star_expansion_join/mysql/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_join/mysql/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_join/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/mysql/go/query.sql.go b/internal/endtoend/testdata/star_expansion_join/mysql/go/query.sql.go
index 3766cb0865..a913a03fec 100644
--- a/internal/endtoend/testdata/star_expansion_join/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_join/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/query.sql.go
index 8a17504fae..84ae762548 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/models.go
index 72df30fc7d..da2af66906 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/query.sql.go
index 5bfc91ffbd..9b7101f24e 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/models.go
index 39943781df..f09ca40f42 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/query.sql.go
index 3766cb0865..a913a03fec 100644
--- a/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_join/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/db.go b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/models.go b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/models.go
index 66076cbd4c..6994003ab3 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/query.sql.go b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/query.sql.go
index 23d872c235..c4dba8091d 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/models.go
index 66076cbd4c..6994003ab3 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/query.sql.go
index f4eaa2f589..558ee93b4b 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/models.go
index 124d57ae5a..93d28742f5 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/query.sql.go
index f4eaa2f589..558ee93b4b 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/models.go
index 66076cbd4c..6994003ab3 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/query.sql.go
index b7211cf2e4..fc60f8a979 100644
--- a/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_reserved/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/db.go b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/models.go b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/models.go
index 3a0da6cdb5..cbd63edf6f 100644
--- a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/query.sql.go
index 2033526e14..c909473ef1 100644
--- a/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_series/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/db.go b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/models.go b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/query.sql.go b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/query.sql.go
index 9bcf39a95e..1020ccd607 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/query.sql.go
index b1521dbf55..22316ed550 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/models.go
index 8098627e10..0fdfbd23af 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/query.sql.go
index b1521dbf55..22316ed550 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/models.go
index b13da732bf..825fc25a19 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/query.sql.go
index 9bcf39a95e..1020ccd607 100644
--- a/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/star_expansion_subquery/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/db.go b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/db.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/models.go b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/models.go
index c7a34c872f..b16389094c 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/models.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/query.sql.go b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/query.sql.go
index 88c3f4bb19..1125569f49 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/models.go
index c7a34c872f..b16389094c 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/query.sql.go
index 49ea90ec89..a602cf95ce 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/models.go
index f418626819..70d50483cb 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/query.sql.go
index 49ea90ec89..a602cf95ce 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/models.go
index c7a34c872f..b16389094c 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/query.sql.go
index 88c3f4bb19..1125569f49 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/db.go b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/db.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/models.go b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/models.go
index aedb37d0a7..eca415266b 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/models.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/query.sql.go b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/query.sql.go
index c19fdaf215..9de08ebafe 100644
--- a/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/subquery_calculated_column/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/db.go b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/models.go b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/models.go
index c1cfc935b3..be62c63e63 100644
--- a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/query.sql.go
index 8974cf89b3..dcf2ddbe6f 100644
--- a/internal/endtoend/testdata/sum_type/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/sum_type/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/models.go
index 4372649a72..66e75fc394 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/query.sql.go
index b067bfcc2a..271d447cd0 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/models.go
index 3e5d1a2386..613a1aefe8 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Transaction struct {
ID int64
Uri string
diff --git a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/query.sql.go
index eb7955183d..693c9e57dc 100644
--- a/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/table_function/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/models.go
index bff04aadb8..31a6743a76 100644
--- a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/query.sql.go
index cbbbb3489a..7cd3da0645 100644
--- a/internal/endtoend/testdata/table_function/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/table_function/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/table_function/sqlite/go/db.go b/internal/endtoend/testdata/table_function/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/table_function/sqlite/go/db.go
+++ b/internal/endtoend/testdata/table_function/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/table_function/sqlite/go/models.go b/internal/endtoend/testdata/table_function/sqlite/go/models.go
index f304855575..993941e164 100644
--- a/internal/endtoend/testdata/table_function/sqlite/go/models.go
+++ b/internal/endtoend/testdata/table_function/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Transaction struct {
Uri string
ProgramID string
diff --git a/internal/endtoend/testdata/table_function/sqlite/go/query.sql.go b/internal/endtoend/testdata/table_function/sqlite/go/query.sql.go
index 574497d508..39b35808e7 100644
--- a/internal/endtoend/testdata/table_function/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/table_function/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/truncate/mysql/go/db.go b/internal/endtoend/testdata/truncate/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/truncate/mysql/go/db.go
+++ b/internal/endtoend/testdata/truncate/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/truncate/mysql/go/models.go b/internal/endtoend/testdata/truncate/mysql/go/models.go
index 1d7edec0b9..fc79eb7922 100644
--- a/internal/endtoend/testdata/truncate/mysql/go/models.go
+++ b/internal/endtoend/testdata/truncate/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID uint64
}
diff --git a/internal/endtoend/testdata/truncate/mysql/go/query.sql.go b/internal/endtoend/testdata/truncate/mysql/go/query.sql.go
index 9d98faa9e6..aa5adc4c7a 100644
--- a/internal/endtoend/testdata/truncate/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/truncate/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/query.sql.go
index c116c479c8..0eb4305f99 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/query.sql.go
index c116c479c8..0eb4305f99 100644
--- a/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/truncate/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/models.go
index 919d2b7238..bfa4198e3f 100644
--- a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Bar struct {
ID int32
}
diff --git a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/query.sql.go
index 9d98faa9e6..aa5adc4c7a 100644
--- a/internal/endtoend/testdata/truncate/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/truncate/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/models.go
index 182201dc59..46ab9906e7 100644
--- a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/query.sql.go
index 6fef90833c..bed1dd16d8 100644
--- a/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/types_uuid/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v4/go/db.go b/internal/endtoend/testdata/unknown_func/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v4/go/models.go b/internal/endtoend/testdata/unknown_func/pgx/v4/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/unknown_func/pgx/v4/go/query.sql.go
index e7acdcad60..4091af4a70 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v5/go/db.go b/internal/endtoend/testdata/unknown_func/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v5/go/models.go b/internal/endtoend/testdata/unknown_func/pgx/v5/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/unknown_func/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/unknown_func/pgx/v5/go/query.sql.go
index e7acdcad60..4091af4a70 100644
--- a/internal/endtoend/testdata/unknown_func/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/unknown_func/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/stdlib/go/db.go b/internal/endtoend/testdata/unknown_func/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/unknown_func/stdlib/go/db.go
+++ b/internal/endtoend/testdata/unknown_func/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unknown_func/stdlib/go/models.go b/internal/endtoend/testdata/unknown_func/stdlib/go/models.go
index b03bb35d01..f7d40247ae 100644
--- a/internal/endtoend/testdata/unknown_func/stdlib/go/models.go
+++ b/internal/endtoend/testdata/unknown_func/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID string
}
diff --git a/internal/endtoend/testdata/unknown_func/stdlib/go/query.sql.go b/internal/endtoend/testdata/unknown_func/stdlib/go/query.sql.go
index ec810be917..406c20ed28 100644
--- a/internal/endtoend/testdata/unknown_func/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/unknown_func/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/models.go
index becac9f41b..0b4ed036b0 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/querier.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/querier.go
index 796540d1b9..57204993b2 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/query.sql.go
index fdb225e90b..17b349d68e 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/models.go
index 4ab270b631..12351774fe 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/querier.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/querier.go
index e4436a20f3..312a10271e 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/query.sql.go
index fdc519abd7..35912c29f0 100644
--- a/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/models.go
index becac9f41b..0b4ed036b0 100644
--- a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/querier.go b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/querier.go
index 796540d1b9..57204993b2 100644
--- a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/querier.go
+++ b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/query.sql.go
index e11064b8f2..e90e010168 100644
--- a/internal/endtoend/testdata/unnest/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/db.go b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/models.go b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/models.go
index 89fc40fc6e..6dcdc84de9 100644
--- a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Item struct {
ItemID int64
}
diff --git a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/query.sql.go
index 5546efa51a..c6161a4eb6 100644
--- a/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest_star/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/models.go
index 2fff02a795..ca9ee42194 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type ArrayValue struct {
ID int64
Values []string
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/querier.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/querier.go
index a5a1dd4858..420ef66445 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/querier.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/query.sql.go
index d376c3defe..5c96013fcb 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/models.go
index 2fff02a795..ca9ee42194 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type ArrayValue struct {
ID int64
Values []string
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/querier.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/querier.go
index a5a1dd4858..420ef66445 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/querier.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/query.sql.go
index d376c3defe..5c96013fcb 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/models.go
index 2fff02a795..ca9ee42194 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type ArrayValue struct {
ID int64
Values []string
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/querier.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/querier.go
index a5a1dd4858..420ef66445 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/querier.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/querier.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/query.sql.go
index e53a1295fc..363cd866c3 100644
--- a/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/unnest_with_ordinality/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/unsigned_params/mysql/go/db.go b/internal/endtoend/testdata/unsigned_params/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/unsigned_params/mysql/go/db.go
+++ b/internal/endtoend/testdata/unsigned_params/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/unsigned_params/mysql/go/models.go b/internal/endtoend/testdata/unsigned_params/mysql/go/models.go
index d0434f3d2f..0ad95629ba 100644
--- a/internal/endtoend/testdata/unsigned_params/mysql/go/models.go
+++ b/internal/endtoend/testdata/unsigned_params/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
ID uint32
}
diff --git a/internal/endtoend/testdata/unsigned_params/mysql/go/query.sql.go b/internal/endtoend/testdata/unsigned_params/mysql/go/query.sql.go
index f800e8c146..8d6bef8c40 100644
--- a/internal/endtoend/testdata/unsigned_params/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/unsigned_params/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/db.go b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/db.go
+++ b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/models.go b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/models.go
index cbfa55bd35..bb4d3bb914 100644
--- a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/models.go
+++ b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type Repro struct {
ID interface{}
Name interface{}
diff --git a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/query.sql.go b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/query.sql.go
index a20291108f..81c799b949 100644
--- a/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/query.sql.go
+++ b/internal/endtoend/testdata/untyped_columns/sqlite/stdlib/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/db.go b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/db.go
+++ b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/models.go b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/models.go
index f7987b8858..651df915c8 100644
--- a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/models.go
+++ b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Author struct {
ID int64
Names []string
diff --git a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/query.sql.go b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/query.sql.go
index 49f05cb16c..0109fcb660 100644
--- a/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/query.sql.go
+++ b/internal/endtoend/testdata/update_array_index/postgresql/pgx/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v4/go/db.go b/internal/endtoend/testdata/update_cte/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v4/go/models.go b/internal/endtoend/testdata/update_cte/pgx/v4/go/models.go
index 3f5229aae5..f1cff592f2 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v4/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/update_cte/pgx/v4/go/query.sql.go
index a54d9f7bbf..f8a2f41afb 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v5/go/db.go b/internal/endtoend/testdata/update_cte/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v5/go/models.go b/internal/endtoend/testdata/update_cte/pgx/v5/go/models.go
index 83b81b5f0e..f28620929a 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v5/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/update_cte/pgx/v5/go/query.sql.go
index 58f7aba73d..52ba565a87 100644
--- a/internal/endtoend/testdata/update_cte/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/update_cte/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_cte/stdlib/go/db.go b/internal/endtoend/testdata/update_cte/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_cte/stdlib/go/db.go
+++ b/internal/endtoend/testdata/update_cte/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/stdlib/go/models.go b/internal/endtoend/testdata/update_cte/stdlib/go/models.go
index 3f5229aae5..f1cff592f2 100644
--- a/internal/endtoend/testdata/update_cte/stdlib/go/models.go
+++ b/internal/endtoend/testdata/update_cte/stdlib/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_cte/stdlib/go/query.sql.go b/internal/endtoend/testdata/update_cte/stdlib/go/query.sql.go
index 6f79ae2c9c..586c451438 100644
--- a/internal/endtoend/testdata/update_cte/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/update_cte/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_inner_join/db/db.go b/internal/endtoend/testdata/update_inner_join/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/update_inner_join/db/db.go
+++ b/internal/endtoend/testdata/update_inner_join/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/update_inner_join/db/models.go b/internal/endtoend/testdata/update_inner_join/db/models.go
index e1a2c4404a..2c78dba058 100644
--- a/internal/endtoend/testdata/update_inner_join/db/models.go
+++ b/internal/endtoend/testdata/update_inner_join/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/update_inner_join/db/query.sql.go b/internal/endtoend/testdata/update_inner_join/db/query.sql.go
index a7c61b5ce7..15299d1f6a 100644
--- a/internal/endtoend/testdata/update_inner_join/db/query.sql.go
+++ b/internal/endtoend/testdata/update_inner_join/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/update_join/mysql/db/db.go b/internal/endtoend/testdata/update_join/mysql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/update_join/mysql/db/db.go
+++ b/internal/endtoend/testdata/update_join/mysql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/update_join/mysql/db/models.go b/internal/endtoend/testdata/update_join/mysql/db/models.go
index 943c24575d..64fda3c52f 100644
--- a/internal/endtoend/testdata/update_join/mysql/db/models.go
+++ b/internal/endtoend/testdata/update_join/mysql/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type JoinTable struct {
ID uint64
PrimaryTableID uint64
diff --git a/internal/endtoend/testdata/update_join/mysql/db/query.sql.go b/internal/endtoend/testdata/update_join/mysql/db/query.sql.go
index 99a6be7fe3..a75bb485e1 100644
--- a/internal/endtoend/testdata/update_join/mysql/db/query.sql.go
+++ b/internal/endtoend/testdata/update_join/mysql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/update_join/postgresql/db/db.go b/internal/endtoend/testdata/update_join/postgresql/db/db.go
index e06d75a08b..0c56c2b4e8 100644
--- a/internal/endtoend/testdata/update_join/postgresql/db/db.go
+++ b/internal/endtoend/testdata/update_join/postgresql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
diff --git a/internal/endtoend/testdata/update_join/postgresql/db/models.go b/internal/endtoend/testdata/update_join/postgresql/db/models.go
index 5e8829b3c1..fdf9cb64a7 100644
--- a/internal/endtoend/testdata/update_join/postgresql/db/models.go
+++ b/internal/endtoend/testdata/update_join/postgresql/db/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package db
-import ()
-
type JoinTable struct {
ID int32
PrimaryTableID int32
diff --git a/internal/endtoend/testdata/update_join/postgresql/db/query.sql.go b/internal/endtoend/testdata/update_join/postgresql/db/query.sql.go
index 25f4964f10..3f79dc52c5 100644
--- a/internal/endtoend/testdata/update_join/postgresql/db/query.sql.go
+++ b/internal/endtoend/testdata/update_join/postgresql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package db
diff --git a/internal/endtoend/testdata/update_set/myql/go/db.go b/internal/endtoend/testdata/update_set/myql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set/myql/go/db.go
+++ b/internal/endtoend/testdata/update_set/myql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set/myql/go/models.go b/internal/endtoend/testdata/update_set/myql/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set/myql/go/models.go
+++ b/internal/endtoend/testdata/update_set/myql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set/myql/go/query.sql.go b/internal/endtoend/testdata/update_set/myql/go/query.sql.go
index c6123c8238..071e3e4a62 100644
--- a/internal/endtoend/testdata/update_set/myql/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set/myql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/query.sql.go
index 5c08121295..bbbbad3aee 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/query.sql.go
index 5c08121295..bbbbad3aee 100644
--- a/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/query.sql.go
index 5f59b6ebcf..9c572fc113 100644
--- a/internal/endtoend/testdata/update_set/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set/sqlite/go/db.go b/internal/endtoend/testdata/update_set/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set/sqlite/go/db.go
+++ b/internal/endtoend/testdata/update_set/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set/sqlite/go/models.go b/internal/endtoend/testdata/update_set/sqlite/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set/sqlite/go/models.go
+++ b/internal/endtoend/testdata/update_set/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set/sqlite/go/query.sql.go b/internal/endtoend/testdata/update_set/sqlite/go/query.sql.go
index c6123c8238..071e3e4a62 100644
--- a/internal/endtoend/testdata/update_set/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/mysql/go/db.go b/internal/endtoend/testdata/update_set_multiple/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set_multiple/mysql/go/db.go
+++ b/internal/endtoend/testdata/update_set_multiple/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/mysql/go/models.go b/internal/endtoend/testdata/update_set_multiple/mysql/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set_multiple/mysql/go/models.go
+++ b/internal/endtoend/testdata/update_set_multiple/mysql/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set_multiple/mysql/go/query.sql.go b/internal/endtoend/testdata/update_set_multiple/mysql/go/query.sql.go
index 8aa9c909a0..9bba11c618 100644
--- a/internal/endtoend/testdata/update_set_multiple/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set_multiple/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/db.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/db.go
index e7e3d45f53..635cce3c5d 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/db.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/models.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/models.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/query.sql.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/query.sql.go
index f9e9e774e5..1efde76806 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v4/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/db.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/db.go
index 327f4da7a5..e83d6a948c 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/db.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/models.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/models.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/query.sql.go b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/query.sql.go
index f9e9e774e5..1efde76806 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/pgx/v5/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/db.go b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/db.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/models.go b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/models.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/query.sql.go b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/query.sql.go
index 67229f131c..d4d54ca806 100644
--- a/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set_multiple/postgresql/stdlib/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/sqlite/go/db.go b/internal/endtoend/testdata/update_set_multiple/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_set_multiple/sqlite/go/db.go
+++ b/internal/endtoend/testdata/update_set_multiple/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_set_multiple/sqlite/go/models.go b/internal/endtoend/testdata/update_set_multiple/sqlite/go/models.go
index d01782a4e2..6be8f8337f 100644
--- a/internal/endtoend/testdata/update_set_multiple/sqlite/go/models.go
+++ b/internal/endtoend/testdata/update_set_multiple/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Foo struct {
Name string
Slug string
diff --git a/internal/endtoend/testdata/update_set_multiple/sqlite/go/query.sql.go b/internal/endtoend/testdata/update_set_multiple/sqlite/go/query.sql.go
index 8aa9c909a0..9bba11c618 100644
--- a/internal/endtoend/testdata/update_set_multiple/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/update_set_multiple/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/update_two_table/mysql/go/db.go b/internal/endtoend/testdata/update_two_table/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/update_two_table/mysql/go/db.go
+++ b/internal/endtoend/testdata/update_two_table/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_two_table/mysql/go/models.go b/internal/endtoend/testdata/update_two_table/mysql/go/models.go
index 85f6536832..091e34ad50 100644
--- a/internal/endtoend/testdata/update_two_table/mysql/go/models.go
+++ b/internal/endtoend/testdata/update_two_table/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/update_two_table/mysql/go/query.sql.go b/internal/endtoend/testdata/update_two_table/mysql/go/query.sql.go
index 206bd42d32..311df534a4 100644
--- a/internal/endtoend/testdata/update_two_table/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/update_two_table/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/upsert/sqlite/go/db.go b/internal/endtoend/testdata/upsert/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/upsert/sqlite/go/db.go
+++ b/internal/endtoend/testdata/upsert/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/upsert/sqlite/go/models.go b/internal/endtoend/testdata/upsert/sqlite/go/models.go
index 6f1c3d6e51..e6f5eb3cfa 100644
--- a/internal/endtoend/testdata/upsert/sqlite/go/models.go
+++ b/internal/endtoend/testdata/upsert/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Location struct {
ID int64
Name string
diff --git a/internal/endtoend/testdata/upsert/sqlite/go/query.sql.go b/internal/endtoend/testdata/upsert/sqlite/go/query.sql.go
index f4a607f72a..82e1fb67ef 100644
--- a/internal/endtoend/testdata/upsert/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/upsert/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/db.go b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/db.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/models.go b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/models.go
index 830d4fd365..952ef06bd3 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/models.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/query.sql.go b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/query.sql.go
index 3caa783fd4..77ddaa46fd 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/mysql/go/query.sql.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/mysql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/mysql/schema.sql b/internal/endtoend/testdata/valid_group_by_reference/mysql/schema.sql
index 69a38e0417..db03e0d24a 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/mysql/schema.sql
+++ b/internal/endtoend/testdata/valid_group_by_reference/mysql/schema.sql
@@ -1,8 +1,7 @@
CREATE TABLE authors (
- id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
- name text NOT NULL,
- bio text,
- UNIQUE(name)
+ id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
+ name VARCHAR(10) NOT NULL,
+ bio text
);
CREATE TABLE IF NOT EXISTS weather_metrics
diff --git a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/db.go b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/db.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/models.go b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/models.go
index 830d4fd365..952ef06bd3 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/models.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/query.sql.go b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/query.sql.go
index 5df9c1c27a..5d84858482 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/query.sql.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/pganalyzer/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/db.go b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/db.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/models.go b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/models.go
index 830d4fd365..952ef06bd3 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/models.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/query.sql.go b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/query.sql.go
index 040aed5dc6..cb5c4bf1b4 100644
--- a/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/query.sql.go
+++ b/internal/endtoend/testdata/valid_group_by_reference/postgresql/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/vet_disable/query.sql b/internal/endtoend/testdata/vet_disable/query.sql
index c1eb8d2219..50052de26b 100644
--- a/internal/endtoend/testdata/vet_disable/query.sql
+++ b/internal/endtoend/testdata/vet_disable/query.sql
@@ -1,6 +1,29 @@
--- name: SkipVet :exec
+-- name: RunVetAll :exec
+SELECT true;
+
+-- name: SkipVetAll :exec
-- @sqlc-vet-disable
SELECT true;
--- name: RunVet :exec
+-- name: SkipVetSingleLine :exec
+-- @sqlc-vet-disable always-fail no-exec
+SELECT true;
+
+-- name: SkipVetMultiLine :exec
+-- @sqlc-vet-disable always-fail
+-- @sqlc-vet-disable no-exec
+SELECT true;
+
+-- name: SkipVet_always_fail :exec
+-- @sqlc-vet-disable always-fail
+SELECT true;
+
+-- name: SkipVet_no_exec :exec
+-- @sqlc-vet-disable no-exec
+SELECT true;
+
+-- name: SkipVetInvalidRule :exec
+-- @sqlc-vet-disable always-fail
+-- @sqlc-vet-disable block-delete
+-- @sqlc-vet-disable no-exec
SELECT true;
\ No newline at end of file
diff --git a/internal/endtoend/testdata/vet_disable/sqlc.yaml b/internal/endtoend/testdata/vet_disable/sqlc.yaml
index ff7c1b5200..1e53bd7f2f 100644
--- a/internal/endtoend/testdata/vet_disable/sqlc.yaml
+++ b/internal/endtoend/testdata/vet_disable/sqlc.yaml
@@ -9,7 +9,13 @@ sql:
out: "db"
rules:
- always-fail
+ - no-exec
rules:
- name: always-fail
message: "Fail"
rule: "true"
+
+ - name: no-exec
+ message: "don't use exec"
+ rule: |
+ query.cmd == "exec"
diff --git a/internal/endtoend/testdata/vet_disable/stderr.txt b/internal/endtoend/testdata/vet_disable/stderr.txt
index 9acbb8b34b..3d9a6169f8 100644
--- a/internal/endtoend/testdata/vet_disable/stderr.txt
+++ b/internal/endtoend/testdata/vet_disable/stderr.txt
@@ -1 +1,5 @@
-query.sql: RunVet: always-fail: Fail
+query.sql: RunVetAll: always-fail: Fail
+query.sql: RunVetAll: no-exec: don't use exec
+query.sql: SkipVet_always_fail: no-exec: don't use exec
+query.sql: SkipVet_no_exec: always-fail: Fail
+query.sql: SkipVetInvalidRule: rule-check error: rule "block-delete" does not exist in the config file
\ No newline at end of file
diff --git a/internal/endtoend/testdata/vet_explain/mysql/db/db.go b/internal/endtoend/testdata/vet_explain/mysql/db/db.go
index d92149041c..27fdcc4164 100644
--- a/internal/endtoend/testdata/vet_explain/mysql/db/db.go
+++ b/internal/endtoend/testdata/vet_explain/mysql/db/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package test
diff --git a/internal/endtoend/testdata/vet_explain/mysql/db/models.go b/internal/endtoend/testdata/vet_explain/mysql/db/models.go
index e6900e0068..fcbc25122e 100644
--- a/internal/endtoend/testdata/vet_explain/mysql/db/models.go
+++ b/internal/endtoend/testdata/vet_explain/mysql/db/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package test
@@ -99,7 +99,7 @@ func (ns NullDebugCset) Value() (driver.Value, error) {
type Debug struct {
ID int64
- Csmallint int32
+ Csmallint int16
Cint int32
Cinteger int32
Cdecimal string
@@ -110,7 +110,7 @@ type Debug struct {
Cdouble float64
Cdec string
Cfixed string
- Ctinyint int32
+ Ctinyint int8
Cbool bool
Cmediumint int32
Cbit interface{}
@@ -118,7 +118,7 @@ type Debug struct {
Cdatetime time.Time
Ctimestamp time.Time
Ctime time.Time
- Cyear int32
+ Cyear int16
Cchar string
Cvarchar string
Cbinary []byte
diff --git a/internal/endtoend/testdata/vet_explain/mysql/db/query.sql.go b/internal/endtoend/testdata/vet_explain/mysql/db/query.sql.go
index 0243ea0cb0..dc295cd4e0 100644
--- a/internal/endtoend/testdata/vet_explain/mysql/db/query.sql.go
+++ b/internal/endtoend/testdata/vet_explain/mysql/db/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package test
@@ -316,7 +316,7 @@ SELECT id FROM debug
WHERE Csmallint = ? LIMIT 1
`
-func (q *Queries) SelectByCsmallint(ctx context.Context, csmallint int32) (int64, error) {
+func (q *Queries) SelectByCsmallint(ctx context.Context, csmallint int16) (int64, error) {
row := q.db.QueryRowContext(ctx, selectByCsmallint, csmallint)
var id int64
err := row.Scan(&id)
@@ -376,7 +376,7 @@ SELECT id FROM debug
WHERE Ctinyint = ? LIMIT 1
`
-func (q *Queries) SelectByCtinyint(ctx context.Context, ctinyint int32) (int64, error) {
+func (q *Queries) SelectByCtinyint(ctx context.Context, ctinyint int8) (int64, error) {
row := q.db.QueryRowContext(ctx, selectByCtinyint, ctinyint)
var id int64
err := row.Scan(&id)
@@ -424,7 +424,7 @@ SELECT id FROM debug
WHERE Cyear = ? LIMIT 1
`
-func (q *Queries) SelectByCyear(ctx context.Context, cyear int32) (int64, error) {
+func (q *Queries) SelectByCyear(ctx context.Context, cyear int16) (int64, error) {
row := q.db.QueryRowContext(ctx, selectByCyear, cyear)
var id int64
err := row.Scan(&id)
diff --git a/internal/endtoend/testdata/vet_failures/query.sql b/internal/endtoend/testdata/vet_failures/query.sql
index 718f3395c0..75e38b2caf 100644
--- a/internal/endtoend/testdata/vet_failures/query.sql
+++ b/internal/endtoend/testdata/vet_failures/query.sql
@@ -1,9 +1,3 @@
-CREATE TABLE authors (
- id BIGSERIAL PRIMARY KEY,
- name text NOT NULL,
- bio text
-);
-
-- name: GetAuthor :one
SELECT * FROM authors
WHERE id = $1 LIMIT 1;
diff --git a/internal/endtoend/testdata/vet_failures/sqlc.yaml b/internal/endtoend/testdata/vet_failures/sqlc.yaml
index 10d5246f8b..b1cff78c30 100644
--- a/internal/endtoend/testdata/vet_failures/sqlc.yaml
+++ b/internal/endtoend/testdata/vet_failures/sqlc.yaml
@@ -1,6 +1,6 @@
version: 2
sql:
- - schema: "query.sql"
+ - schema: "schema.sql"
queries: "query.sql"
engine: "postgresql"
gen:
diff --git a/internal/endtoend/testdata/virtual_table/sqlite/go/db.go b/internal/endtoend/testdata/virtual_table/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/virtual_table/sqlite/go/db.go
+++ b/internal/endtoend/testdata/virtual_table/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/virtual_table/sqlite/go/models.go b/internal/endtoend/testdata/virtual_table/sqlite/go/models.go
index 42442aebee..880fb287f7 100644
--- a/internal/endtoend/testdata/virtual_table/sqlite/go/models.go
+++ b/internal/endtoend/testdata/virtual_table/sqlite/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/virtual_table/sqlite/go/query.sql.go b/internal/endtoend/testdata/virtual_table/sqlite/go/query.sql.go
index 2753bc042c..fcfdc7b5c0 100644
--- a/internal/endtoend/testdata/virtual_table/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/virtual_table/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_test/gen/env.json b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_test/gen/env.json
index cf39d6065c..8c776c74b9 100644
--- a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_test/gen/env.json
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_test/gen/env.json
@@ -1,6 +1,6 @@
{
"env": [
- "SQLC_VERSION=v1.24.0",
+ "SQLC_VERSION=v1.29.0",
"SQLC_DUMMY_VALUE=true"
]
}
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/query.sql b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/query.sql
new file mode 100644
index 0000000000..75e38b2caf
--- /dev/null
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/query.sql
@@ -0,0 +1,19 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING *;
+
+-- name: DeleteAuthor :exec
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/schema.sql b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/schema.sql
new file mode 100644
index 0000000000..b4fad78497
--- /dev/null
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/sqlc.json b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/sqlc.json
new file mode 100644
index 0000000000..bb84bddebf
--- /dev/null
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/sqlc.json
@@ -0,0 +1,25 @@
+{
+ "version": "2",
+ "sql": [
+ {
+ "schema": "schema.sql",
+ "queries": "query.sql",
+ "engine": "postgresql",
+ "codegen": [
+ {
+ "out": "gen",
+ "plugin": "test"
+ }
+ ]
+ }
+ ],
+ "plugins": [
+ {
+ "name": "test",
+ "wasm": {
+ "url": "https://github.com/sqlc-dev/sqlc-gen-unsafe-paths/releases/download/v0.1.1/sqlc-gen-unsafe-paths.wasm",
+ "sha256": "e53ac951dd41b1e4c365e757d9735886f7c8e92f2056ce0be9a5cfcf677c45d9"
+ }
+ }
+ ]
+}
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr.txt b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr.txt
new file mode 100644
index 0000000000..8d664b0612
--- /dev/null
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr.txt
@@ -0,0 +1,2 @@
+# package test
+error generating code: invalid file output path: /tmp/unsafe.txt
diff --git a/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr_windows.txt b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr_windows.txt
new file mode 100644
index 0000000000..33d32af53a
--- /dev/null
+++ b/internal/endtoend/testdata/wasm_plugin_sqlc_gen_unsafe_paths/stderr_windows.txt
@@ -0,0 +1,2 @@
+# package test
+error generating code: invalid file output path: D:/tmp/unsafe.txt
diff --git a/internal/endtoend/testdata/where_collate/sqlite/go/db.go b/internal/endtoend/testdata/where_collate/sqlite/go/db.go
index 7cd3a57354..a92cd6e8eb 100644
--- a/internal/endtoend/testdata/where_collate/sqlite/go/db.go
+++ b/internal/endtoend/testdata/where_collate/sqlite/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
diff --git a/internal/endtoend/testdata/where_collate/sqlite/go/models.go b/internal/endtoend/testdata/where_collate/sqlite/go/models.go
index d3e115c148..ad19637871 100644
--- a/internal/endtoend/testdata/where_collate/sqlite/go/models.go
+++ b/internal/endtoend/testdata/where_collate/sqlite/go/models.go
@@ -1,11 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package querytest
-import ()
-
type Account struct {
ID string
Name string
diff --git a/internal/endtoend/testdata/where_collate/sqlite/go/query.sql.go b/internal/endtoend/testdata/where_collate/sqlite/go/query.sql.go
index a9c742c65a..28ce00a979 100644
--- a/internal/endtoend/testdata/where_collate/sqlite/go/query.sql.go
+++ b/internal/endtoend/testdata/where_collate/sqlite/go/query.sql.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
// source: query.sql
package querytest
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/db/db.go b/internal/endtoend/testdata/wrap_errors/mysql/db/db.go
new file mode 100644
index 0000000000..e2b0a86b13
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/db/models.go b/internal/endtoend/testdata/wrap_errors/mysql/db/models.go
new file mode 100644
index 0000000000..c665426db7
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/db/models.go
@@ -0,0 +1,15 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/db/query.sql.go b/internal/endtoend/testdata/wrap_errors/mysql/db/query.sql.go
new file mode 100644
index 0000000000..380dc952de
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/db/query.sql.go
@@ -0,0 +1,123 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+ "fmt"
+)
+
+const createAuthor = `-- name: CreateAuthor :execlastid
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+`
+
+func (q *Queries) CreateAuthor(ctx context.Context) (int64, error) {
+ result, err := q.db.ExecContext(ctx, createAuthor)
+ if err != nil {
+ return 0, fmt.Errorf("query CreateAuthor: %w", err)
+ }
+ return result.LastInsertId()
+}
+
+const deleteAuthorExec = `-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExec(ctx context.Context) error {
+ _, err := q.db.ExecContext(ctx, deleteAuthorExec)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExec: %w", err)
+ }
+ return err
+}
+
+const deleteAuthorExecLastID = `-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecLastID(ctx context.Context) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecLastID)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecLastID: %w", err)
+ }
+ return result.LastInsertId()
+}
+
+const deleteAuthorExecResult = `-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecResult(ctx context.Context) (sql.Result, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecResult)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExecResult: %w", err)
+ }
+ return result, err
+}
+
+const deleteAuthorExecRows = `-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecRows(ctx context.Context) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecRows)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecRows: %w", err)
+ }
+ return result.RowsAffected()
+}
+
+const getAuthor = `-- name: GetAuthor :one
+SELECT id, name, bio FROM authors
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthor(ctx context.Context) (Author, error) {
+ row := q.db.QueryRowContext(ctx, getAuthor)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query GetAuthor: %w", err)
+ }
+ return i, err
+}
+
+const listAuthors = `-- name: ListAuthors :many
+SELECT id, name, bio FROM authors
+ORDER BY name
+`
+
+func (q *Queries) ListAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthors)
+ if err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/query.sql b/internal/endtoend/testdata/wrap_errors/mysql/query.sql
new file mode 100644
index 0000000000..3f9971d942
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/query.sql
@@ -0,0 +1,30 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :execlastid
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+);
+
+-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/schema.sql b/internal/endtoend/testdata/wrap_errors/mysql/schema.sql
new file mode 100644
index 0000000000..8d65cdb7b5
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGINT PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/wrap_errors/mysql/sqlc.yaml b/internal/endtoend/testdata/wrap_errors/mysql/sqlc.yaml
new file mode 100644
index 0000000000..5b3b1ddc10
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/mysql/sqlc.yaml
@@ -0,0 +1,10 @@
+version: 2
+sql:
+ - schema: "schema.sql"
+ queries: "query.sql"
+ engine: "mysql"
+ gen:
+ go:
+ package: "authors"
+ out: "db"
+ wrap_errors: true
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/db.go b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/db.go
new file mode 100644
index 0000000000..7cdd263bbf
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/db.go
@@ -0,0 +1,32 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "context"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgconn"
+)
+
+type DBTX interface {
+ Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
+ Query(context.Context, string, ...interface{}) (pgx.Rows, error)
+ QueryRow(context.Context, string, ...interface{}) pgx.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx pgx.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/models.go b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/models.go
new file mode 100644
index 0000000000..a786490b52
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/models.go
@@ -0,0 +1,15 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "github.com/jackc/pgx/v5/pgtype"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio pgtype.Text
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/query.sql.go b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/query.sql.go
new file mode 100644
index 0000000000..00f5b4aab4
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/db/query.sql.go
@@ -0,0 +1,122 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package authors
+
+import (
+ "context"
+ "fmt"
+
+ "github.com/jackc/pgx/v5/pgconn"
+ "github.com/jackc/pgx/v5/pgtype"
+)
+
+const createAuthor = `-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING id, name, bio
+`
+
+type CreateAuthorParams struct {
+ Name string
+ Bio pgtype.Text
+}
+
+func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (Author, error) {
+ row := q.db.QueryRow(ctx, createAuthor, arg.Name, arg.Bio)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query CreateAuthor: %w", err)
+ }
+ return i, err
+}
+
+const deleteAuthorExec = `-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExec(ctx context.Context, id int64) error {
+ _, err := q.db.Exec(ctx, deleteAuthorExec, id)
+ if err != nil {
+ return fmt.Errorf("query DeleteAuthorExec: %w", err)
+ }
+ return nil
+}
+
+const deleteAuthorExecLastID = `-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1
+`
+
+const deleteAuthorExecResult = `-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecResult(ctx context.Context, id int64) (pgconn.CommandTag, error) {
+ result, err := q.db.Exec(ctx, deleteAuthorExecResult, id)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExecResult: %w", err)
+ }
+ return result, err
+}
+
+const deleteAuthorExecRows = `-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecRows(ctx context.Context, id int64) (int64, error) {
+ result, err := q.db.Exec(ctx, deleteAuthorExecRows, id)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecRows: %w", err)
+ }
+ return result.RowsAffected(), nil
+}
+
+const getAuthor = `-- name: GetAuthor :one
+SELECT id, name, bio FROM authors
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthor(ctx context.Context, id int64) (Author, error) {
+ row := q.db.QueryRow(ctx, getAuthor, id)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query GetAuthor: %w", err)
+ }
+ return i, err
+}
+
+const listAuthors = `-- name: ListAuthors :many
+SELECT id, name, bio FROM authors
+ORDER BY name
+`
+
+func (q *Queries) ListAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.Query(ctx, listAuthors)
+ if err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ items = append(items, i)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/query.sql b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/query.sql
new file mode 100644
index 0000000000..e0310a2257
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/query.sql
@@ -0,0 +1,31 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING *;
+
+-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/schema.sql b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/schema.sql
new file mode 100644
index 0000000000..b4fad78497
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/pgx/sqlc.yaml b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/sqlc.yaml
new file mode 100644
index 0000000000..5a2adcda8e
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/pgx/sqlc.yaml
@@ -0,0 +1,11 @@
+version: 2
+sql:
+ - schema: "schema.sql"
+ queries: "query.sql"
+ engine: "postgresql"
+ gen:
+ go:
+ package: "authors"
+ sql_package: "pgx/v5"
+ out: "db"
+ wrap_errors: true
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/db.go b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/db.go
new file mode 100644
index 0000000000..e2b0a86b13
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/models.go b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/models.go
new file mode 100644
index 0000000000..c665426db7
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/models.go
@@ -0,0 +1,15 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/query.sql.go b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/query.sql.go
new file mode 100644
index 0000000000..c2da6db2c5
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/db/query.sql.go
@@ -0,0 +1,131 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+ "fmt"
+)
+
+const createAuthor = `-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING id, name, bio
+`
+
+type CreateAuthorParams struct {
+ Name string
+ Bio sql.NullString
+}
+
+func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (Author, error) {
+ row := q.db.QueryRowContext(ctx, createAuthor, arg.Name, arg.Bio)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query CreateAuthor: %w", err)
+ }
+ return i, err
+}
+
+const deleteAuthorExec = `-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExec(ctx context.Context, id int64) error {
+ _, err := q.db.ExecContext(ctx, deleteAuthorExec, id)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExec: %w", err)
+ }
+ return err
+}
+
+const deleteAuthorExecLastID = `-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecLastID(ctx context.Context, id int64) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecLastID, id)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecLastID: %w", err)
+ }
+ return result.LastInsertId()
+}
+
+const deleteAuthorExecResult = `-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecResult(ctx context.Context, id int64) (sql.Result, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecResult, id)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExecResult: %w", err)
+ }
+ return result, err
+}
+
+const deleteAuthorExecRows = `-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1
+`
+
+func (q *Queries) DeleteAuthorExecRows(ctx context.Context, id int64) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecRows, id)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecRows: %w", err)
+ }
+ return result.RowsAffected()
+}
+
+const getAuthor = `-- name: GetAuthor :one
+SELECT id, name, bio FROM authors
+WHERE id = $1 LIMIT 1
+`
+
+func (q *Queries) GetAuthor(ctx context.Context, id int64) (Author, error) {
+ row := q.db.QueryRowContext(ctx, getAuthor, id)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query GetAuthor: %w", err)
+ }
+ return i, err
+}
+
+const listAuthors = `-- name: ListAuthors :many
+SELECT id, name, bio FROM authors
+ORDER BY name
+`
+
+func (q *Queries) ListAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthors)
+ if err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/query.sql b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/query.sql
new file mode 100644
index 0000000000..e0310a2257
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/query.sql
@@ -0,0 +1,31 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = $1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :one
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ $1, $2
+)
+RETURNING *;
+
+-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = $1;
+
+-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = $1;
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/schema.sql b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/schema.sql
new file mode 100644
index 0000000000..b4fad78497
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGSERIAL PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/sqlc.yaml b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/sqlc.yaml
new file mode 100644
index 0000000000..6827bf778a
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/postgresql/stdlib/sqlc.yaml
@@ -0,0 +1,10 @@
+version: 2
+sql:
+ - schema: "schema.sql"
+ queries: "query.sql"
+ engine: "postgresql"
+ gen:
+ go:
+ package: "authors"
+ out: "db"
+ wrap_errors: true
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/db/db.go b/internal/endtoend/testdata/wrap_errors/sqlite/db/db.go
new file mode 100644
index 0000000000..e2b0a86b13
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/db/db.go
@@ -0,0 +1,31 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+)
+
+type DBTX interface {
+ ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
+ PrepareContext(context.Context, string) (*sql.Stmt, error)
+ QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
+ QueryRowContext(context.Context, string, ...interface{}) *sql.Row
+}
+
+func New(db DBTX) *Queries {
+ return &Queries{db: db}
+}
+
+type Queries struct {
+ db DBTX
+}
+
+func (q *Queries) WithTx(tx *sql.Tx) *Queries {
+ return &Queries{
+ db: tx,
+ }
+}
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/db/models.go b/internal/endtoend/testdata/wrap_errors/sqlite/db/models.go
new file mode 100644
index 0000000000..c665426db7
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/db/models.go
@@ -0,0 +1,15 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+
+package authors
+
+import (
+ "database/sql"
+)
+
+type Author struct {
+ ID int64
+ Name string
+ Bio sql.NullString
+}
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/db/query.sql.go b/internal/endtoend/testdata/wrap_errors/sqlite/db/query.sql.go
new file mode 100644
index 0000000000..7f5111c266
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/db/query.sql.go
@@ -0,0 +1,128 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package authors
+
+import (
+ "context"
+ "database/sql"
+ "fmt"
+)
+
+const createAuthor = `-- name: CreateAuthor :execlastid
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ ?1, ?2
+)
+`
+
+type CreateAuthorParams struct {
+ Name string
+ Bio sql.NullString
+}
+
+func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (int64, error) {
+ result, err := q.db.ExecContext(ctx, createAuthor, arg.Name, arg.Bio)
+ if err != nil {
+ return 0, fmt.Errorf("query CreateAuthor: %w", err)
+ }
+ return result.LastInsertId()
+}
+
+const deleteAuthorExec = `-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = ?1
+`
+
+func (q *Queries) DeleteAuthorExec(ctx context.Context, id int64) error {
+ _, err := q.db.ExecContext(ctx, deleteAuthorExec, id)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExec: %w", err)
+ }
+ return err
+}
+
+const deleteAuthorExecLastID = `-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = ?1
+`
+
+func (q *Queries) DeleteAuthorExecLastID(ctx context.Context, id int64) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecLastID, id)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecLastID: %w", err)
+ }
+ return result.LastInsertId()
+}
+
+const deleteAuthorExecResult = `-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = ?1
+`
+
+func (q *Queries) DeleteAuthorExecResult(ctx context.Context, id int64) (sql.Result, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecResult, id)
+ if err != nil {
+ err = fmt.Errorf("query DeleteAuthorExecResult: %w", err)
+ }
+ return result, err
+}
+
+const deleteAuthorExecRows = `-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = ?1
+`
+
+func (q *Queries) DeleteAuthorExecRows(ctx context.Context, id int64) (int64, error) {
+ result, err := q.db.ExecContext(ctx, deleteAuthorExecRows, id)
+ if err != nil {
+ return 0, fmt.Errorf("query DeleteAuthorExecRows: %w", err)
+ }
+ return result.RowsAffected()
+}
+
+const getAuthor = `-- name: GetAuthor :one
+SELECT id, name, bio FROM authors
+WHERE id = ?1 LIMIT 1
+`
+
+func (q *Queries) GetAuthor(ctx context.Context, id int64) (Author, error) {
+ row := q.db.QueryRowContext(ctx, getAuthor, id)
+ var i Author
+ err := row.Scan(&i.ID, &i.Name, &i.Bio)
+ if err != nil {
+ err = fmt.Errorf("query GetAuthor: %w", err)
+ }
+ return i, err
+}
+
+const listAuthors = `-- name: ListAuthors :many
+SELECT id, name, bio FROM authors
+ORDER BY name
+`
+
+func (q *Queries) ListAuthors(ctx context.Context) ([]Author, error) {
+ rows, err := q.db.QueryContext(ctx, listAuthors)
+ if err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ defer rows.Close()
+ var items []Author
+ for rows.Next() {
+ var i Author
+ if err := rows.Scan(&i.ID, &i.Name, &i.Bio); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ items = append(items, i)
+ }
+ if err := rows.Close(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ if err := rows.Err(); err != nil {
+ return nil, fmt.Errorf("query ListAuthors: %w", err)
+ }
+ return items, nil
+}
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/query.sql b/internal/endtoend/testdata/wrap_errors/sqlite/query.sql
new file mode 100644
index 0000000000..2db6403c8b
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/query.sql
@@ -0,0 +1,30 @@
+-- name: GetAuthor :one
+SELECT * FROM authors
+WHERE id = ?1 LIMIT 1;
+
+-- name: ListAuthors :many
+SELECT * FROM authors
+ORDER BY name;
+
+-- name: CreateAuthor :execlastid
+INSERT INTO authors (
+ name, bio
+) VALUES (
+ ?1, ?2
+);
+
+-- name: DeleteAuthorExec :exec
+DELETE FROM authors
+WHERE id = ?1;
+
+-- name: DeleteAuthorExecRows :execrows
+DELETE FROM authors
+WHERE id = ?1;
+
+-- name: DeleteAuthorExecLastID :execlastid
+DELETE FROM authors
+WHERE id = ?1;
+
+-- name: DeleteAuthorExecResult :execresult
+DELETE FROM authors
+WHERE id = ?1;
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/schema.sql b/internal/endtoend/testdata/wrap_errors/sqlite/schema.sql
new file mode 100644
index 0000000000..8d65cdb7b5
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/schema.sql
@@ -0,0 +1,5 @@
+CREATE TABLE authors (
+ id BIGINT PRIMARY KEY,
+ name text NOT NULL,
+ bio text
+);
diff --git a/internal/endtoend/testdata/wrap_errors/sqlite/sqlc.yaml b/internal/endtoend/testdata/wrap_errors/sqlite/sqlc.yaml
new file mode 100644
index 0000000000..de726297c7
--- /dev/null
+++ b/internal/endtoend/testdata/wrap_errors/sqlite/sqlc.yaml
@@ -0,0 +1,10 @@
+version: 2
+sql:
+ - schema: "schema.sql"
+ queries: "query.sql"
+ engine: "sqlite"
+ gen:
+ go:
+ package: "authors"
+ out: "db"
+ wrap_errors: true
diff --git a/internal/endtoend/testdata/yaml_overrides/go/db.go b/internal/endtoend/testdata/yaml_overrides/go/db.go
index 79c7745389..133b5bc74a 100644
--- a/internal/endtoend/testdata/yaml_overrides/go/db.go
+++ b/internal/endtoend/testdata/yaml_overrides/go/db.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/yaml_overrides/go/models.go b/internal/endtoend/testdata/yaml_overrides/go/models.go
index cce7085fb0..47140f9fad 100644
--- a/internal/endtoend/testdata/yaml_overrides/go/models.go
+++ b/internal/endtoend/testdata/yaml_overrides/go/models.go
@@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
-// sqlc v1.24.0
+// sqlc v1.29.0
package override
diff --git a/internal/endtoend/testdata/yaml_overrides/go/query.sql.go b/internal/endtoend/testdata/yaml_overrides/go/query.sql.go
new file mode 100644
index 0000000000..5a9ac42c22
--- /dev/null
+++ b/internal/endtoend/testdata/yaml_overrides/go/query.sql.go
@@ -0,0 +1,21 @@
+// Code generated by sqlc. DO NOT EDIT.
+// versions:
+// sqlc v1.29.0
+// source: query.sql
+
+package override
+
+import (
+ "context"
+)
+
+const test = `-- name: Test :one
+SELECT 1
+`
+
+func (q *Queries) Test(ctx context.Context) (int32, error) {
+ row := q.db.QueryRowContext(ctx, test)
+ var column_1 int32
+ err := row.Scan(&column_1)
+ return column_1, err
+}
diff --git a/internal/endtoend/testdata/yaml_overrides/sql/query.sql b/internal/endtoend/testdata/yaml_overrides/sql/query.sql
index e0ac49d1ec..9da604b57e 100644
--- a/internal/endtoend/testdata/yaml_overrides/sql/query.sql
+++ b/internal/endtoend/testdata/yaml_overrides/sql/query.sql
@@ -1 +1,2 @@
+-- name: Test :one
SELECT 1;
diff --git a/internal/endtoend/vet_test.go b/internal/endtoend/vet_test.go
index 55b2b89112..011c032c2e 100644
--- a/internal/endtoend/vet_test.go
+++ b/internal/endtoend/vet_test.go
@@ -1,5 +1,4 @@
//go:build examples
-// +build examples
package main
@@ -9,10 +8,12 @@ import (
"fmt"
"os"
"path/filepath"
+ "strings"
"testing"
"github.com/sqlc-dev/sqlc/internal/cmd"
"github.com/sqlc-dev/sqlc/internal/sqltest"
+ "github.com/sqlc-dev/sqlc/internal/sqltest/local"
)
func findSchema(t *testing.T, path string) (string, bool) {
@@ -31,11 +32,6 @@ func TestExamplesVet(t *testing.T) {
t.Parallel()
ctx := context.Background()
- authToken := os.Getenv("SQLC_AUTH_TOKEN")
- if authToken == "" {
- t.Skip("missing auth token")
- }
-
examples, err := filepath.Abs(filepath.Join("..", "..", "examples"))
if err != nil {
t.Fatal(err)
@@ -62,6 +58,14 @@ func TestExamplesVet(t *testing.T) {
defer db.Close()
defer cleanup()
}
+ if s, found := findSchema(t, filepath.Join(path, "mysql")); found {
+ uri := local.MySQL(t, []string{s})
+ os.Setenv(fmt.Sprintf("VET_TEST_EXAMPLES_MYSQL_%s", strings.ToUpper(tc)), uri)
+ }
+ if s, found := findSchema(t, filepath.Join(path, "postgresql")); found {
+ uri := local.PostgreSQL(t, []string{s})
+ os.Setenv(fmt.Sprintf("VET_TEST_EXAMPLES_POSTGRES_%s", strings.ToUpper(tc)), uri)
+ }
}
var stderr bytes.Buffer
diff --git a/internal/engine/dolphin/convert.go b/internal/engine/dolphin/convert.go
index d6f1a4e4a2..6d95a75064 100644
--- a/internal/engine/dolphin/convert.go
+++ b/internal/engine/dolphin/convert.go
@@ -915,10 +915,6 @@ func (c *cc) convertHavingClause(n *pcast.HavingClause) ast.Node {
return c.convert(n.Expr)
}
-func (c *cc) convertIndexAdviseStmt(n *pcast.IndexAdviseStmt) ast.Node {
- return todo(n)
-}
-
func (c *cc) convertIndexLockAndAlgorithm(n *pcast.IndexLockAndAlgorithm) ast.Node {
return todo(n)
}
@@ -1025,18 +1021,7 @@ func (c *cc) convertOrderByClause(n *pcast.OrderByClause) ast.Node {
}
list := &ast.List{Items: []ast.Node{}}
for _, item := range n.Items {
- switch item.Expr.(type) {
- case *pcast.CaseExpr:
- list.Items = append(list.Items, &ast.CaseWhen{
- Expr: c.convert(item.Expr),
- Location: item.Expr.OriginTextPosition(),
- })
- case *pcast.ColumnNameExpr:
- list.Items = append(list.Items, &ast.CaseExpr{
- Xpr: c.convert(item.Expr),
- Location: item.Expr.OriginTextPosition(),
- })
- }
+ list.Items = append(list.Items, c.convert(item.Expr))
}
return list
}
@@ -1649,9 +1634,6 @@ func (c *cc) convert(node pcast.Node) ast.Node {
case *pcast.HavingClause:
return c.convertHavingClause(n)
- case *pcast.IndexAdviseStmt:
- return c.convertIndexAdviseStmt(n)
-
case *pcast.IndexLockAndAlgorithm:
return c.convertIndexLockAndAlgorithm(n)
diff --git a/internal/engine/dolphin/stdlib.go b/internal/engine/dolphin/stdlib.go
index 37de5d7cb6..41469ca49d 100644
--- a/internal/engine/dolphin/stdlib.go
+++ b/internal/engine/dolphin/stdlib.go
@@ -2388,6 +2388,15 @@ func defaultSchema(name string) *catalog.Schema {
Args: []*catalog.Argument{},
ReturnType: &ast.TypeName{Name: "datetime"},
},
+ {
+ Name: "NEXTVAL",
+ Args: []*catalog.Argument{
+ {
+ Type: &ast.TypeName{Name: "any"},
+ },
+ },
+ ReturnType: &ast.TypeName{Name: "int"},
+ },
{
Name: "NOW",
Args: []*catalog.Argument{
diff --git a/internal/engine/postgresql/analyzer/analyze.go b/internal/engine/postgresql/analyzer/analyze.go
index 7a3a53892c..5a08fa98ec 100644
--- a/internal/engine/postgresql/analyzer/analyze.go
+++ b/internal/engine/postgresql/analyzer/analyze.go
@@ -13,8 +13,8 @@ import (
core "github.com/sqlc-dev/sqlc/internal/analysis"
"github.com/sqlc-dev/sqlc/internal/config"
+ "github.com/sqlc-dev/sqlc/internal/dbmanager"
"github.com/sqlc-dev/sqlc/internal/opts"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
"github.com/sqlc-dev/sqlc/internal/shfmt"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
"github.com/sqlc-dev/sqlc/internal/sql/named"
@@ -23,7 +23,7 @@ import (
type Analyzer struct {
db config.Database
- client pb.QuickClient
+ client dbmanager.Client
pool *pgxpool.Pool
dbg opts.Debug
replacer *shfmt.Replacer
@@ -32,7 +32,7 @@ type Analyzer struct {
tables sync.Map
}
-func New(client pb.QuickClient, db config.Database) *Analyzer {
+func New(client dbmanager.Client, db config.Database) *Analyzer {
return &Analyzer{
db: db,
dbg: opts.DebugFromEnv(),
@@ -201,7 +201,7 @@ func (a *Analyzer) Analyze(ctx context.Context, n ast.Node, query string, migrat
if a.client == nil {
return nil, fmt.Errorf("client is nil")
}
- edb, err := a.client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
+ edb, err := a.client.CreateDatabase(ctx, &dbmanager.CreateDatabaseRequest{
Engine: "postgresql",
Migrations: migrations,
})
@@ -253,8 +253,7 @@ func (a *Analyzer) Analyze(ctx context.Context, n ast.Node, query string, migrat
if err != nil {
return nil, err
}
- // TODO: Why are these dims different?
- dt, isArray, _ := parseType(col.DataType)
+ dt, isArray, dims := parseType(col.DataType)
notNull := col.NotNull
name := field.Name
result.Columns = append(result.Columns, &core.Column{
@@ -263,7 +262,7 @@ func (a *Analyzer) Analyze(ctx context.Context, n ast.Node, query string, migrat
DataType: dt,
NotNull: notNull,
IsArray: isArray,
- ArrayDims: int32(col.ArrayDims),
+ ArrayDims: int32(max(col.ArrayDims, dims)),
Table: &core.Identifier{
Schema: tbl.SchemaName,
Name: tbl.TableName,
diff --git a/internal/engine/postgresql/convert.go b/internal/engine/postgresql/convert.go
index 38a5e62a26..f56a572c16 100644
--- a/internal/engine/postgresql/convert.go
+++ b/internal/engine/postgresql/convert.go
@@ -1,12 +1,9 @@
-//go:build !windows && cgo
-// +build !windows,cgo
-
package postgresql
import (
"fmt"
- pg "github.com/pganalyze/pg_query_go/v4"
+ pg "github.com/pganalyze/pg_query_go/v6"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
)
@@ -186,7 +183,6 @@ func convertAggref(n *pg.Aggref) *ast.Aggref {
Aggtype: ast.Oid(n.Aggtype),
Aggcollid: ast.Oid(n.Aggcollid),
Inputcollid: ast.Oid(n.Inputcollid),
- Aggtranstype: ast.Oid(n.Aggtranstype),
Aggargtypes: convertSlice(n.Aggargtypes),
Aggdirectargs: convertSlice(n.Aggdirectargs),
Args: convertSlice(n.Args),
@@ -1666,7 +1662,6 @@ func convertGrantRoleStmt(n *pg.GrantRoleStmt) *ast.GrantRoleStmt {
GrantedRoles: convertSlice(n.GrantedRoles),
GranteeRoles: convertSlice(n.GranteeRoles),
IsGrant: n.IsGrant,
- AdminOpt: n.AdminOpt,
Grantor: convertRoleSpec(n.Grantor),
Behavior: ast.DropBehavior(n.Behavior),
}
@@ -1696,7 +1691,6 @@ func convertGroupingFunc(n *pg.GroupingFunc) *ast.GroupingFunc {
Xpr: convertNode(n.Xpr),
Args: convertSlice(n.Args),
Refs: convertSlice(n.Refs),
- Cols: convertSlice(n.Cols),
Agglevelsup: ast.Index(n.Agglevelsup),
Location: int(n.Location),
}
@@ -1757,7 +1751,6 @@ func convertIndexStmt(n *pg.IndexStmt) *ast.IndexStmt {
ExcludeOpNames: convertSlice(n.ExcludeOpNames),
Idxcomment: makeString(n.Idxcomment),
IndexOid: ast.Oid(n.IndexOid),
- OldNode: ast.Oid(n.OldNode),
Unique: n.Unique,
Primary: n.Primary,
Isconstraint: n.Isconstraint,
@@ -2019,7 +2012,6 @@ func convertOpExpr(n *pg.OpExpr) *ast.OpExpr {
return &ast.OpExpr{
Xpr: convertNode(n.Xpr),
Opno: ast.Oid(n.Opno),
- Opfuncid: ast.Oid(n.Opfuncid),
Opresulttype: ast.Oid(n.Opresulttype),
Opretset: n.Opretset,
Opcollid: ast.Oid(n.Opcollid),
@@ -2111,7 +2103,7 @@ func convertPartitionSpec(n *pg.PartitionSpec) *ast.PartitionSpec {
return nil
}
return &ast.PartitionSpec{
- Strategy: makeString(n.Strategy),
+ Strategy: makeString(n.Strategy.String()),
PartParams: convertSlice(n.PartParams),
Location: int(n.Location),
}
@@ -2269,11 +2261,6 @@ func convertRangeTblEntry(n *pg.RangeTblEntry) *ast.RangeTblEntry {
Lateral: n.Lateral,
Inh: n.Inh,
InFromCl: n.InFromCl,
- RequiredPerms: ast.AclMode(n.RequiredPerms),
- CheckAsUser: ast.Oid(n.CheckAsUser),
- SelectedCols: makeUint32Slice(n.SelectedCols),
- InsertedCols: makeUint32Slice(n.InsertedCols),
- UpdatedCols: makeUint32Slice(n.UpdatedCols),
SecurityQuals: convertSlice(n.SecurityQuals),
}
}
@@ -2501,7 +2488,6 @@ func convertScalarArrayOpExpr(n *pg.ScalarArrayOpExpr) *ast.ScalarArrayOpExpr {
return &ast.ScalarArrayOpExpr{
Xpr: convertNode(n.Xpr),
Opno: ast.Oid(n.Opno),
- Opfuncid: ast.Oid(n.Opfuncid),
UseOr: n.UseOr,
Inputcollid: ast.Oid(n.Inputcollid),
Args: convertSlice(n.Args),
diff --git a/internal/engine/postgresql/parse.go b/internal/engine/postgresql/parse.go
index 296a14e858..40af125962 100644
--- a/internal/engine/postgresql/parse.go
+++ b/internal/engine/postgresql/parse.go
@@ -1,6 +1,3 @@
-//go:build !windows && cgo
-// +build !windows,cgo
-
package postgresql
import (
@@ -9,9 +6,9 @@ import (
"io"
"strings"
- nodes "github.com/pganalyze/pg_query_go/v4"
- "github.com/pganalyze/pg_query_go/v4/parser"
+ nodes "github.com/pganalyze/pg_query_go/v6"
+ "github.com/sqlc-dev/sqlc/internal/engine/postgresql/parser"
"github.com/sqlc-dev/sqlc/internal/source"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
"github.com/sqlc-dev/sqlc/internal/sql/sqlerr"
@@ -154,7 +151,7 @@ func (p *Parser) Parse(r io.Reader) ([]ast.Statement, error) {
if err != nil {
return nil, err
}
- tree, err := nodes.Parse(string(contents))
+ tree, err := Parse(string(contents))
if err != nil {
pErr := normalizeErr(err)
return nil, pErr
@@ -274,7 +271,7 @@ func translate(node *nodes.Node) (ast.Node, error) {
case nodes.AlterTableType_AT_AddColumn:
d, ok := altercmd.Def.Node.(*nodes.Node_ColumnDef)
if !ok {
- return nil, fmt.Errorf("expected alter table defintion to be a ColumnDef")
+ return nil, fmt.Errorf("expected alter table definition to be a ColumnDef")
}
rel, err := parseRelationFromNodes(d.ColumnDef.TypeName.Names)
@@ -293,7 +290,7 @@ func translate(node *nodes.Node) (ast.Node, error) {
case nodes.AlterTableType_AT_AlterColumnType:
d, ok := altercmd.Def.Node.(*nodes.Node_ColumnDef)
if !ok {
- return nil, fmt.Errorf("expected alter table defintion to be a ColumnDef")
+ return nil, fmt.Errorf("expected alter table definition to be a ColumnDef")
}
col := ""
if altercmd.Name != "" {
@@ -620,7 +617,7 @@ func translate(node *nodes.Node) (ast.Node, error) {
MissingOk: n.MissingOk,
}, nil
- case nodes.ObjectType_OBJECT_TABLE:
+ case nodes.ObjectType_OBJECT_TABLE, nodes.ObjectType_OBJECT_MATVIEW, nodes.ObjectType_OBJECT_VIEW:
rel := parseRelationFromRangeVar(n.Relation)
return &ast.RenameTableStmt{
Table: rel.TableName(),
diff --git a/internal/engine/postgresql/parse_default.go b/internal/engine/postgresql/parse_default.go
new file mode 100644
index 0000000000..272f189649
--- /dev/null
+++ b/internal/engine/postgresql/parse_default.go
@@ -0,0 +1,10 @@
+//go:build !windows && cgo
+
+package postgresql
+
+import (
+ nodes "github.com/pganalyze/pg_query_go/v6"
+)
+
+var Parse = nodes.Parse
+var Fingerprint = nodes.Fingerprint
diff --git a/internal/engine/postgresql/parse_disabled.go b/internal/engine/postgresql/parse_disabled.go
deleted file mode 100644
index b07817b431..0000000000
--- a/internal/engine/postgresql/parse_disabled.go
+++ /dev/null
@@ -1,35 +0,0 @@
-//go:build windows || !cgo
-// +build windows !cgo
-
-package postgresql
-
-import (
- "errors"
- "io"
- "runtime"
-
- "github.com/sqlc-dev/sqlc/internal/source"
- "github.com/sqlc-dev/sqlc/internal/sql/ast"
-)
-
-func NewParser() *Parser {
- return &Parser{}
-}
-
-type Parser struct {
-}
-
-func (p *Parser) Parse(r io.Reader) ([]ast.Statement, error) {
- if runtime.GOOS == "windows" {
- return nil, errors.New("the PostgreSQL engine does not support Windows.")
- }
- return nil, errors.New("the PostgreSQL engine requires cgo. Please set CGO_ENABLED=1.")
-}
-
-// https://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-COMMENTS
-func (p *Parser) CommentSyntax() source.CommentSyntax {
- return source.CommentSyntax{
- Dash: true,
- SlashStar: true,
- }
-}
diff --git a/internal/engine/postgresql/parse_wasi.go b/internal/engine/postgresql/parse_wasi.go
new file mode 100644
index 0000000000..377b812cdb
--- /dev/null
+++ b/internal/engine/postgresql/parse_wasi.go
@@ -0,0 +1,10 @@
+//go:build windows || !cgo
+
+package postgresql
+
+import (
+ nodes "github.com/wasilibs/go-pgquery"
+)
+
+var Parse = nodes.Parse
+var Fingerprint = nodes.Fingerprint
diff --git a/internal/engine/postgresql/parser/parser_default.go b/internal/engine/postgresql/parser/parser_default.go
new file mode 100644
index 0000000000..706c3bb097
--- /dev/null
+++ b/internal/engine/postgresql/parser/parser_default.go
@@ -0,0 +1,7 @@
+//go:build !windows && cgo
+
+package parser
+
+import "github.com/pganalyze/pg_query_go/v6/parser"
+
+type Error = parser.Error
diff --git a/internal/engine/postgresql/parser/parser_wasi.go b/internal/engine/postgresql/parser/parser_wasi.go
new file mode 100644
index 0000000000..e172d36c72
--- /dev/null
+++ b/internal/engine/postgresql/parser/parser_wasi.go
@@ -0,0 +1,7 @@
+//go:build windows || !cgo
+
+package parser
+
+import "github.com/wasilibs/go-pgquery/parser"
+
+type Error = parser.Error
diff --git a/internal/engine/postgresql/utils.go b/internal/engine/postgresql/utils.go
index d0ddc392a1..b8d49b1a97 100644
--- a/internal/engine/postgresql/utils.go
+++ b/internal/engine/postgresql/utils.go
@@ -1,10 +1,7 @@
-//go:build !windows && cgo
-// +build !windows,cgo
-
package postgresql
import (
- nodes "github.com/pganalyze/pg_query_go/v4"
+ nodes "github.com/pganalyze/pg_query_go/v6"
)
func isArray(n *nodes.TypeName) bool {
diff --git a/internal/engine/sqlite/convert.go b/internal/engine/sqlite/convert.go
index 9d8649d215..e86dd8ac82 100644
--- a/internal/engine/sqlite/convert.go
+++ b/internal/engine/sqlite/convert.go
@@ -6,8 +6,7 @@ import (
"strconv"
"strings"
- "github.com/antlr/antlr4/runtime/Go/antlr/v4"
-
+ "github.com/antlr4-go/antlr/v4"
"github.com/sqlc-dev/sqlc/internal/debug"
"github.com/sqlc-dev/sqlc/internal/engine/sqlite/parser"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
@@ -204,7 +203,7 @@ type Delete_stmt interface {
func (c *cc) convertDelete_stmtContext(n Delete_stmt) ast.Node {
if qualifiedName, ok := n.Qualified_table_name().(*parser.Qualified_table_nameContext); ok {
- tableName := qualifiedName.Table_name().GetText()
+ tableName := identifier(qualifiedName.Table_name().GetText())
relation := &ast.RangeVar{
Relname: &tableName,
}
@@ -855,7 +854,7 @@ func (c *cc) convertReturning_caluseContext(n parser.IReturning_clauseContext) *
}
func (c *cc) convertInsert_stmtContext(n *parser.Insert_stmtContext) ast.Node {
- tableName := n.Table_name().GetText()
+ tableName := identifier(n.Table_name().GetText())
rel := &ast.RangeVar{
Relname: &tableName,
}
@@ -876,7 +875,25 @@ func (c *cc) convertInsert_stmtContext(n *parser.Insert_stmtContext) ast.Node {
ReturningList: c.convertReturning_caluseContext(n.Returning_clause()),
}
- if n.Select_stmt() != nil {
+ // Check if this is a DEFAULT VALUES insert
+ hasDefaultValues := false
+ for _, child := range n.GetChildren() {
+ if term, ok := child.(antlr.TerminalNode); ok {
+ if term.GetSymbol().GetTokenType() == parser.SQLiteParserDEFAULT_ {
+ hasDefaultValues = true
+ break
+ }
+ }
+ }
+
+ if hasDefaultValues {
+ // For DEFAULT VALUES, create an empty select statement
+ insert.SelectStmt = &ast.SelectStmt{
+ FromClause: &ast.List{},
+ TargetList: &ast.List{},
+ ValuesLists: &ast.List{Items: []ast.Node{&ast.List{}}}, // Single empty values list
+ }
+ } else if n.Select_stmt() != nil {
if ss, ok := c.convert(n.Select_stmt()).(*ast.SelectStmt); ok {
ss.ValuesLists = &ast.List{}
insert.SelectStmt = ss
@@ -937,7 +954,7 @@ func (c *cc) convertTablesOrSubquery(n []parser.ITable_or_subqueryContext) []ast
}
if from.Table_name() != nil {
- rel := from.Table_name().GetText()
+ rel := identifier(from.Table_name().GetText())
rv := &ast.RangeVar{
Relname: &rel,
Location: from.GetStart().GetStart(),
diff --git a/internal/engine/sqlite/parse.go b/internal/engine/sqlite/parse.go
index 56005dd2ee..13425b156e 100644
--- a/internal/engine/sqlite/parse.go
+++ b/internal/engine/sqlite/parse.go
@@ -5,8 +5,7 @@ import (
"fmt"
"io"
- "github.com/antlr/antlr4/runtime/Go/antlr/v4"
-
+ "github.com/antlr4-go/antlr/v4"
"github.com/sqlc-dev/sqlc/internal/engine/sqlite/parser"
"github.com/sqlc-dev/sqlc/internal/source"
"github.com/sqlc-dev/sqlc/internal/sql/ast"
@@ -70,6 +69,7 @@ func (p *Parser) Parse(r io.Reader) ([]ast.Statement, error) {
converter := &cc{}
out := converter.convert(stmt)
if _, ok := out.(*ast.TODO); ok {
+ loc = stmt.GetStop().GetStop() + 2
continue
}
len := (stmt.GetStop().GetStop() + 1) - loc
diff --git a/internal/engine/sqlite/parser/Makefile b/internal/engine/sqlite/parser/Makefile
index b925a1f6c1..bacae8a36b 100644
--- a/internal/engine/sqlite/parser/Makefile
+++ b/internal/engine/sqlite/parser/Makefile
@@ -1,7 +1,7 @@
-sqlite_parser.go: SQLiteLexer.g4 SQLiteParser.g4 antlr-4.12.0-complete.jar
- java -jar antlr-4.12.0-complete.jar -Dlanguage=Go SQLiteLexer.g4 SQLiteParser.g4
+sqlite_parser.go: SQLiteLexer.g4 SQLiteParser.g4 antlr-4.13.1-complete.jar
+ java -jar antlr-4.13.1-complete.jar -Dlanguage=Go SQLiteLexer.g4 SQLiteParser.g4
-antlr-4.12.0-complete.jar:
- curl -O https://www.antlr.org/download/antlr-4.12.0-complete.jar
+antlr-4.13.1-complete.jar:
+ curl -O https://www.antlr.org/download/antlr-4.13.1-complete.jar
diff --git a/internal/engine/sqlite/parser/SQLiteParser.g4 b/internal/engine/sqlite/parser/SQLiteParser.g4
index 49434e8bd3..14ca873687 100644
--- a/internal/engine/sqlite/parser/SQLiteParser.g4
+++ b/internal/engine/sqlite/parser/SQLiteParser.g4
@@ -359,9 +359,9 @@ insert_stmt:
COMMA OPEN_PAR expr ( COMMA expr)* CLOSE_PAR
)*
| select_stmt
+ | DEFAULT_ VALUES_
) upsert_clause? returning_clause?
)
- | DEFAULT_ VALUES_
;
upsert_clause:
diff --git a/internal/engine/sqlite/parser/SQLiteParser.interp b/internal/engine/sqlite/parser/SQLiteParser.interp
index d035d5ac01..7a268aa1a8 100644
--- a/internal/engine/sqlite/parser/SQLiteParser.interp
+++ b/internal/engine/sqlite/parser/SQLiteParser.interp
@@ -517,4 +517,4 @@ any_name
atn:
-[4, 1, 197, 2178, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, 31, 2, 32, 7, 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, 52, 7, 52, 2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, 57, 2, 58, 7, 58, 2, 59, 7, 59, 2, 60, 7, 60, 2, 61, 7, 61, 2, 62, 7, 62, 2, 63, 7, 63, 2, 64, 7, 64, 2, 65, 7, 65, 2, 66, 7, 66, 2, 67, 7, 67, 2, 68, 7, 68, 2, 69, 7, 69, 2, 70, 7, 70, 2, 71, 7, 71, 2, 72, 7, 72, 2, 73, 7, 73, 2, 74, 7, 74, 2, 75, 7, 75, 2, 76, 7, 76, 2, 77, 7, 77, 2, 78, 7, 78, 2, 79, 7, 79, 2, 80, 7, 80, 2, 81, 7, 81, 2, 82, 7, 82, 2, 83, 7, 83, 2, 84, 7, 84, 2, 85, 7, 85, 2, 86, 7, 86, 2, 87, 7, 87, 2, 88, 7, 88, 2, 89, 7, 89, 2, 90, 7, 90, 2, 91, 7, 91, 2, 92, 7, 92, 2, 93, 7, 93, 2, 94, 7, 94, 2, 95, 7, 95, 2, 96, 7, 96, 2, 97, 7, 97, 2, 98, 7, 98, 2, 99, 7, 99, 2, 100, 7, 100, 2, 101, 7, 101, 2, 102, 7, 102, 2, 103, 7, 103, 2, 104, 7, 104, 2, 105, 7, 105, 2, 106, 7, 106, 2, 107, 7, 107, 2, 108, 7, 108, 2, 109, 7, 109, 2, 110, 7, 110, 2, 111, 7, 111, 2, 112, 7, 112, 2, 113, 7, 113, 2, 114, 7, 114, 1, 0, 5, 0, 232, 8, 0, 10, 0, 12, 0, 235, 9, 0, 1, 0, 1, 0, 1, 1, 5, 1, 240, 8, 1, 10, 1, 12, 1, 243, 9, 1, 1, 1, 1, 1, 4, 1, 247, 8, 1, 11, 1, 12, 1, 248, 1, 1, 5, 1, 252, 8, 1, 10, 1, 12, 1, 255, 9, 1, 1, 1, 5, 1, 258, 8, 1, 10, 1, 12, 1, 261, 9, 1, 1, 2, 1, 2, 1, 2, 3, 2, 266, 8, 2, 3, 2, 268, 8, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 3, 2, 294, 8, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 301, 8, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 308, 8, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 314, 8, 3, 1, 3, 1, 3, 3, 3, 318, 8, 3, 1, 3, 1, 3, 1, 3, 3, 3, 323, 8, 3, 1, 3, 3, 3, 326, 8, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 3, 4, 333, 8, 4, 1, 4, 3, 4, 336, 8, 4, 1, 5, 1, 5, 3, 5, 340, 8, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 3, 6, 348, 8, 6, 1, 6, 1, 6, 3, 6, 352, 8, 6, 3, 6, 354, 8, 6, 1, 7, 1, 7, 3, 7, 358, 8, 7, 1, 8, 1, 8, 3, 8, 362, 8, 8, 1, 8, 1, 8, 3, 8, 366, 8, 8, 1, 8, 3, 8, 369, 8, 8, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 3, 10, 376, 8, 10, 1, 10, 1, 10, 1, 11, 1, 11, 3, 11, 382, 8, 11, 1, 11, 1, 11, 1, 11, 1, 11, 3, 11, 388, 8, 11, 1, 11, 1, 11, 1, 11, 3, 11, 393, 8, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 5, 11, 402, 8, 11, 10, 11, 12, 11, 405, 9, 11, 1, 11, 1, 11, 1, 11, 3, 11, 410, 8, 11, 1, 12, 1, 12, 3, 12, 414, 8, 12, 1, 12, 1, 12, 3, 12, 418, 8, 12, 1, 12, 3, 12, 421, 8, 12, 1, 13, 1, 13, 1, 13, 3, 13, 426, 8, 13, 1, 14, 1, 14, 3, 14, 430, 8, 14, 1, 14, 1, 14, 1, 14, 1, 14, 3, 14, 436, 8, 14, 1, 14, 1, 14, 1, 14, 3, 14, 441, 8, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 5, 14, 448, 8, 14, 10, 14, 12, 14, 451, 9, 14, 1, 14, 1, 14, 5, 14, 455, 8, 14, 10, 14, 12, 14, 458, 9, 14, 1, 14, 1, 14, 1, 14, 1, 14, 5, 14, 464, 8, 14, 10, 14, 12, 14, 467, 9, 14, 3, 14, 469, 8, 14, 1, 14, 1, 14, 3, 14, 473, 8, 14, 1, 15, 1, 15, 3, 15, 477, 8, 15, 1, 15, 5, 15, 480, 8, 15, 10, 15, 12, 15, 483, 9, 15, 1, 16, 4, 16, 486, 8, 16, 11, 16, 12, 16, 487, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 3, 16, 500, 8, 16, 1, 17, 1, 17, 3, 17, 504, 8, 17, 1, 17, 1, 17, 1, 17, 3, 17, 509, 8, 17, 1, 17, 3, 17, 512, 8, 17, 1, 17, 3, 17, 515, 8, 17, 1, 17, 1, 17, 1, 17, 3, 17, 520, 8, 17, 1, 17, 3, 17, 523, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 537, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 544, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 551, 8, 17, 3, 17, 553, 8, 17, 1, 18, 3, 18, 556, 8, 18, 1, 18, 1, 18, 1, 19, 1, 19, 3, 19, 562, 8, 19, 1, 19, 1, 19, 1, 19, 3, 19, 567, 8, 19, 1, 19, 1, 19, 1, 19, 1, 19, 5, 19, 573, 8, 19, 10, 19, 12, 19, 576, 9, 19, 1, 19, 1, 19, 3, 19, 580, 8, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 5, 19, 593, 8, 19, 10, 19, 12, 19, 596, 9, 19, 1, 19, 1, 19, 1, 19, 3, 19, 601, 8, 19, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 5, 20, 609, 8, 20, 10, 20, 12, 20, 612, 9, 20, 1, 20, 1, 20, 3, 20, 616, 8, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 3, 20, 626, 8, 20, 1, 20, 1, 20, 5, 20, 630, 8, 20, 10, 20, 12, 20, 633, 9, 20, 1, 20, 3, 20, 636, 8, 20, 1, 20, 1, 20, 1, 20, 3, 20, 641, 8, 20, 3, 20, 643, 8, 20, 1, 21, 1, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 651, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 657, 8, 22, 1, 22, 1, 22, 1, 22, 3, 22, 662, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 669, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 5, 22, 678, 8, 22, 10, 22, 12, 22, 681, 9, 22, 3, 22, 683, 8, 22, 3, 22, 685, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 692, 8, 22, 1, 22, 1, 22, 3, 22, 696, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 703, 8, 22, 1, 22, 1, 22, 4, 22, 707, 8, 22, 11, 22, 12, 22, 708, 1, 22, 1, 22, 1, 23, 1, 23, 3, 23, 715, 8, 23, 1, 23, 1, 23, 1, 23, 1, 23, 3, 23, 721, 8, 23, 1, 23, 1, 23, 1, 23, 3, 23, 726, 8, 23, 1, 23, 1, 23, 1, 23, 1, 23, 1, 23, 5, 23, 733, 8, 23, 10, 23, 12, 23, 736, 9, 23, 1, 23, 1, 23, 3, 23, 740, 8, 23, 1, 23, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 3, 24, 751, 8, 24, 1, 24, 1, 24, 1, 24, 3, 24, 756, 8, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 5, 24, 765, 8, 24, 10, 24, 12, 24, 768, 9, 24, 1, 24, 1, 24, 3, 24, 772, 8, 24, 1, 25, 1, 25, 3, 25, 776, 8, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 5, 25, 790, 8, 25, 10, 25, 12, 25, 793, 9, 25, 1, 26, 1, 26, 1, 26, 1, 26, 1, 26, 5, 26, 800, 8, 26, 10, 26, 12, 26, 803, 9, 26, 1, 26, 1, 26, 3, 26, 807, 8, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 3, 27, 815, 8, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 5, 28, 825, 8, 28, 10, 28, 12, 28, 828, 9, 28, 1, 28, 1, 28, 3, 28, 832, 8, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 843, 8, 29, 1, 29, 3, 29, 846, 8, 29, 3, 29, 848, 8, 29, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 854, 8, 29, 1, 29, 3, 29, 857, 8, 29, 3, 29, 859, 8, 29, 5, 29, 861, 8, 29, 10, 29, 12, 29, 864, 9, 29, 1, 30, 3, 30, 867, 8, 30, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 3, 30, 874, 8, 30, 1, 30, 3, 30, 877, 8, 30, 1, 31, 3, 31, 880, 8, 31, 1, 31, 1, 31, 1, 31, 1, 31, 1, 31, 3, 31, 887, 8, 31, 1, 31, 3, 31, 890, 8, 31, 1, 31, 3, 31, 893, 8, 31, 1, 31, 3, 31, 896, 8, 31, 1, 32, 1, 32, 3, 32, 900, 8, 32, 1, 32, 1, 32, 1, 33, 1, 33, 1, 33, 1, 33, 3, 33, 908, 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 913, 8, 33, 1, 33, 1, 33, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 924, 8, 34, 1, 34, 1, 34, 1, 34, 3, 34, 929, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 938, 8, 34, 1, 34, 1, 34, 1, 34, 5, 34, 943, 8, 34, 10, 34, 12, 34, 946, 9, 34, 1, 34, 3, 34, 949, 8, 34, 1, 34, 1, 34, 3, 34, 953, 8, 34, 1, 34, 3, 34, 956, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 962, 8, 34, 10, 34, 12, 34, 965, 9, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 977, 8, 34, 1, 34, 3, 34, 980, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 988, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 4, 34, 995, 8, 34, 11, 34, 12, 34, 996, 1, 34, 1, 34, 3, 34, 1001, 8, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1006, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1035, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1042, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1053, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1062, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 1070, 8, 34, 10, 34, 12, 34, 1073, 9, 34, 3, 34, 1075, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1081, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1087, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 1094, 8, 34, 10, 34, 12, 34, 1097, 9, 34, 3, 34, 1099, 8, 34, 1, 34, 1, 34, 3, 34, 1103, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1110, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1116, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1123, 8, 34, 5, 34, 1125, 8, 34, 10, 34, 12, 34, 1128, 9, 34, 1, 35, 1, 35, 1, 35, 1, 35, 1, 35, 1, 35, 3, 35, 1136, 8, 35, 1, 35, 1, 35, 1, 36, 1, 36, 1, 37, 3, 37, 1143, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1150, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1156, 8, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1161, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1167, 8, 37, 10, 37, 12, 37, 1170, 9, 37, 1, 37, 1, 37, 3, 37, 1174, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1181, 8, 37, 10, 37, 12, 37, 1184, 9, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1192, 8, 37, 10, 37, 12, 37, 1195, 9, 37, 1, 37, 1, 37, 5, 37, 1199, 8, 37, 10, 37, 12, 37, 1202, 9, 37, 1, 37, 3, 37, 1205, 8, 37, 1, 37, 3, 37, 1208, 8, 37, 1, 37, 3, 37, 1211, 8, 37, 1, 37, 1, 37, 3, 37, 1215, 8, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1223, 8, 38, 10, 38, 12, 38, 1226, 9, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1231, 8, 38, 3, 38, 1233, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1241, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1248, 8, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1253, 8, 38, 10, 38, 12, 38, 1256, 9, 38, 1, 38, 1, 38, 3, 38, 1260, 8, 38, 3, 38, 1262, 8, 38, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1268, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1277, 8, 39, 1, 40, 1, 40, 1, 40, 3, 40, 1282, 8, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 3, 41, 1289, 8, 41, 1, 41, 1, 41, 3, 41, 1293, 8, 41, 3, 41, 1295, 8, 41, 1, 42, 3, 42, 1298, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 5, 42, 1304, 8, 42, 10, 42, 12, 42, 1307, 9, 42, 1, 42, 3, 42, 1310, 8, 42, 1, 42, 3, 42, 1313, 8, 42, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 5, 43, 1320, 8, 43, 10, 43, 12, 43, 1323, 9, 43, 1, 44, 1, 44, 3, 44, 1327, 8, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1332, 8, 44, 10, 44, 12, 44, 1335, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1341, 8, 44, 10, 44, 12, 44, 1344, 9, 44, 1, 44, 3, 44, 1347, 8, 44, 3, 44, 1349, 8, 44, 1, 44, 1, 44, 3, 44, 1353, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1360, 8, 44, 10, 44, 12, 44, 1363, 9, 44, 1, 44, 1, 44, 3, 44, 1367, 8, 44, 3, 44, 1369, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1380, 8, 44, 10, 44, 12, 44, 1383, 9, 44, 3, 44, 1385, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1392, 8, 44, 10, 44, 12, 44, 1395, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1403, 8, 44, 10, 44, 12, 44, 1406, 9, 44, 1, 44, 1, 44, 5, 44, 1410, 8, 44, 10, 44, 12, 44, 1413, 9, 44, 3, 44, 1415, 8, 44, 1, 45, 1, 45, 1, 46, 3, 46, 1420, 8, 46, 1, 46, 1, 46, 3, 46, 1424, 8, 46, 1, 46, 3, 46, 1427, 8, 46, 1, 47, 3, 47, 1430, 8, 47, 1, 47, 1, 47, 1, 47, 3, 47, 1435, 8, 47, 1, 47, 1, 47, 3, 47, 1439, 8, 47, 1, 47, 4, 47, 1442, 8, 47, 11, 47, 12, 47, 1443, 1, 47, 3, 47, 1447, 8, 47, 1, 47, 3, 47, 1450, 8, 47, 1, 48, 1, 48, 1, 48, 3, 48, 1455, 8, 48, 1, 48, 1, 48, 3, 48, 1459, 8, 48, 1, 48, 3, 48, 1462, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1469, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1474, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1481, 8, 48, 10, 48, 12, 48, 1484, 9, 48, 1, 48, 1, 48, 3, 48, 1488, 8, 48, 1, 48, 3, 48, 1491, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1497, 8, 48, 10, 48, 12, 48, 1500, 9, 48, 1, 48, 3, 48, 1503, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1511, 8, 48, 1, 48, 3, 48, 1514, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1519, 8, 48, 1, 48, 1, 48, 3, 48, 1523, 8, 48, 1, 48, 3, 48, 1526, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1533, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1538, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1545, 8, 48, 10, 48, 12, 48, 1548, 9, 48, 1, 48, 1, 48, 3, 48, 1552, 8, 48, 1, 48, 3, 48, 1555, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1561, 8, 48, 10, 48, 12, 48, 1564, 9, 48, 1, 48, 3, 48, 1567, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1575, 8, 48, 1, 48, 3, 48, 1578, 8, 48, 3, 48, 1580, 8, 48, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 3, 49, 1589, 8, 49, 1, 49, 3, 49, 1592, 8, 49, 3, 49, 1594, 8, 49, 1, 50, 1, 50, 3, 50, 1598, 8, 50, 1, 50, 1, 50, 3, 50, 1602, 8, 50, 1, 50, 3, 50, 1605, 8, 50, 1, 50, 1, 50, 1, 50, 3, 50, 1610, 8, 50, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 5, 51, 1619, 8, 51, 10, 51, 12, 51, 1622, 9, 51, 1, 51, 1, 51, 3, 51, 1626, 8, 51, 1, 52, 1, 52, 3, 52, 1630, 8, 52, 1, 52, 1, 52, 3, 52, 1634, 8, 52, 1, 53, 3, 53, 1637, 8, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1642, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1648, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1655, 8, 53, 1, 53, 1, 53, 1, 53, 5, 53, 1660, 8, 53, 10, 53, 12, 53, 1663, 9, 53, 1, 53, 1, 53, 3, 53, 1667, 8, 53, 1, 53, 3, 53, 1670, 8, 53, 1, 54, 1, 54, 1, 54, 1, 54, 5, 54, 1676, 8, 54, 10, 54, 12, 54, 1679, 9, 54, 1, 54, 1, 54, 1, 55, 3, 55, 1684, 8, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1689, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1695, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1702, 8, 55, 1, 55, 1, 55, 1, 55, 5, 55, 1707, 8, 55, 10, 55, 12, 55, 1710, 9, 55, 1, 55, 1, 55, 3, 55, 1714, 8, 55, 1, 55, 3, 55, 1717, 8, 55, 1, 55, 3, 55, 1720, 8, 55, 1, 56, 1, 56, 1, 56, 3, 56, 1725, 8, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1730, 8, 56, 1, 56, 1, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1737, 8, 56, 1, 57, 1, 57, 3, 57, 1741, 8, 57, 1, 57, 1, 57, 3, 57, 1745, 8, 57, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 59, 1, 59, 3, 59, 1755, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1762, 8, 59, 10, 59, 12, 59, 1765, 9, 59, 3, 59, 1767, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1774, 8, 59, 10, 59, 12, 59, 1777, 9, 59, 1, 59, 3, 59, 1780, 8, 59, 1, 59, 1, 59, 1, 60, 1, 60, 1, 60, 1, 60, 3, 60, 1788, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1795, 8, 60, 10, 60, 12, 60, 1798, 9, 60, 3, 60, 1800, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1807, 8, 60, 10, 60, 12, 60, 1810, 9, 60, 3, 60, 1812, 8, 60, 1, 60, 3, 60, 1815, 8, 60, 1, 60, 3, 60, 1818, 8, 60, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 3, 61, 1828, 8, 61, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 3, 62, 1837, 8, 62, 1, 63, 1, 63, 1, 63, 1, 63, 1, 63, 5, 63, 1844, 8, 63, 10, 63, 12, 63, 1847, 9, 63, 1, 63, 3, 63, 1850, 8, 63, 1, 63, 1, 63, 1, 64, 1, 64, 1, 64, 3, 64, 1857, 8, 64, 1, 64, 1, 64, 1, 64, 5, 64, 1862, 8, 64, 10, 64, 12, 64, 1865, 9, 64, 1, 64, 3, 64, 1868, 8, 64, 1, 64, 1, 64, 3, 64, 1872, 8, 64, 1, 65, 1, 65, 1, 65, 1, 65, 1, 65, 5, 65, 1879, 8, 65, 10, 65, 12, 65, 1882, 9, 65, 1, 65, 3, 65, 1885, 8, 65, 1, 65, 1, 65, 3, 65, 1889, 8, 65, 1, 65, 1, 65, 1, 65, 3, 65, 1894, 8, 65, 1, 66, 1, 66, 3, 66, 1898, 8, 66, 1, 66, 1, 66, 1, 66, 5, 66, 1903, 8, 66, 10, 66, 12, 66, 1906, 9, 66, 1, 67, 1, 67, 1, 67, 1, 67, 1, 67, 5, 67, 1913, 8, 67, 10, 67, 12, 67, 1916, 9, 67, 1, 68, 1, 68, 1, 68, 1, 68, 3, 68, 1922, 8, 68, 1, 69, 1, 69, 1, 69, 3, 69, 1927, 8, 69, 1, 69, 3, 69, 1930, 8, 69, 1, 69, 1, 69, 3, 69, 1934, 8, 69, 1, 70, 1, 70, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 3, 71, 1948, 8, 71, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 3, 72, 1960, 8, 72, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 3, 73, 1969, 8, 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1978, 8, 74, 1, 74, 1, 74, 3, 74, 1982, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1992, 8, 74, 1, 74, 3, 74, 1995, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2004, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2013, 8, 74, 1, 74, 3, 74, 2016, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2022, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2036, 8, 74, 1, 74, 1, 74, 3, 74, 2040, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2051, 8, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2056, 8, 74, 1, 75, 1, 75, 1, 75, 1, 76, 1, 76, 1, 76, 1, 77, 1, 77, 1, 77, 4, 77, 2067, 8, 77, 11, 77, 12, 77, 2068, 1, 78, 1, 78, 1, 78, 4, 78, 2074, 8, 78, 11, 78, 12, 78, 2075, 1, 79, 1, 79, 1, 79, 1, 79, 1, 80, 1, 80, 3, 80, 2084, 8, 80, 1, 80, 1, 80, 1, 80, 3, 80, 2089, 8, 80, 5, 80, 2091, 8, 80, 10, 80, 12, 80, 2094, 9, 80, 1, 81, 1, 81, 1, 82, 1, 82, 1, 83, 1, 83, 1, 84, 1, 84, 1, 85, 1, 85, 3, 85, 2106, 8, 85, 1, 86, 1, 86, 1, 87, 1, 87, 1, 88, 1, 88, 1, 89, 1, 89, 1, 90, 1, 90, 1, 90, 3, 90, 2119, 8, 90, 1, 90, 1, 90, 1, 91, 1, 91, 1, 92, 1, 92, 1, 93, 1, 93, 1, 94, 1, 94, 1, 95, 1, 95, 1, 96, 1, 96, 1, 97, 1, 97, 1, 98, 1, 98, 1, 99, 1, 99, 1, 100, 1, 100, 1, 101, 1, 101, 1, 102, 1, 102, 1, 103, 1, 103, 1, 104, 1, 104, 1, 105, 1, 105, 1, 106, 1, 106, 1, 107, 1, 107, 1, 108, 1, 108, 1, 109, 1, 109, 1, 110, 1, 110, 1, 111, 1, 111, 1, 112, 1, 112, 1, 113, 1, 113, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 3, 114, 2176, 8, 114, 1, 114, 2, 449, 487, 1, 68, 115, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 0, 30, 3, 0, 60, 60, 71, 71, 84, 84, 2, 0, 49, 49, 68, 68, 1, 0, 136, 137, 2, 0, 149, 149, 174, 174, 2, 0, 8, 8, 11, 11, 2, 0, 61, 61, 144, 144, 2, 0, 58, 58, 106, 106, 2, 0, 60, 60, 84, 84, 5, 0, 27, 27, 74, 74, 83, 83, 124, 124, 128, 128, 4, 0, 86, 86, 135, 135, 141, 141, 148, 148, 1, 0, 9, 10, 2, 0, 7, 7, 14, 15, 1, 0, 16, 19, 1, 0, 20, 23, 4, 0, 79, 79, 99, 99, 101, 101, 120, 120, 3, 0, 27, 27, 74, 74, 128, 128, 5, 0, 54, 56, 106, 106, 175, 176, 189, 189, 192, 193, 2, 0, 31, 31, 64, 64, 3, 0, 78, 78, 98, 98, 127, 127, 3, 0, 130, 130, 157, 157, 182, 182, 2, 0, 5, 5, 108, 108, 1, 0, 179, 180, 2, 0, 36, 36, 62, 62, 2, 0, 154, 154, 165, 165, 2, 0, 162, 162, 169, 169, 2, 0, 163, 163, 170, 171, 2, 0, 164, 164, 166, 166, 3, 0, 8, 8, 11, 12, 104, 104, 2, 0, 188, 188, 192, 192, 1, 0, 27, 183, 2484, 0, 233, 1, 0, 0, 0, 2, 241, 1, 0, 0, 0, 4, 267, 1, 0, 0, 0, 6, 295, 1, 0, 0, 0, 8, 327, 1, 0, 0, 0, 10, 337, 1, 0, 0, 0, 12, 345, 1, 0, 0, 0, 14, 355, 1, 0, 0, 0, 16, 359, 1, 0, 0, 0, 18, 370, 1, 0, 0, 0, 20, 373, 1, 0, 0, 0, 22, 379, 1, 0, 0, 0, 24, 413, 1, 0, 0, 0, 26, 425, 1, 0, 0, 0, 28, 427, 1, 0, 0, 0, 30, 474, 1, 0, 0, 0, 32, 485, 1, 0, 0, 0, 34, 503, 1, 0, 0, 0, 36, 555, 1, 0, 0, 0, 38, 561, 1, 0, 0, 0, 40, 602, 1, 0, 0, 0, 42, 644, 1, 0, 0, 0, 44, 648, 1, 0, 0, 0, 46, 712, 1, 0, 0, 0, 48, 744, 1, 0, 0, 0, 50, 773, 1, 0, 0, 0, 52, 794, 1, 0, 0, 0, 54, 808, 1, 0, 0, 0, 56, 819, 1, 0, 0, 0, 58, 838, 1, 0, 0, 0, 60, 866, 1, 0, 0, 0, 62, 879, 1, 0, 0, 0, 64, 897, 1, 0, 0, 0, 66, 903, 1, 0, 0, 0, 68, 1005, 1, 0, 0, 0, 70, 1129, 1, 0, 0, 0, 72, 1139, 1, 0, 0, 0, 74, 1214, 1, 0, 0, 0, 76, 1216, 1, 0, 0, 0, 78, 1263, 1, 0, 0, 0, 80, 1281, 1, 0, 0, 0, 82, 1283, 1, 0, 0, 0, 84, 1297, 1, 0, 0, 0, 86, 1314, 1, 0, 0, 0, 88, 1414, 1, 0, 0, 0, 90, 1416, 1, 0, 0, 0, 92, 1419, 1, 0, 0, 0, 94, 1429, 1, 0, 0, 0, 96, 1579, 1, 0, 0, 0, 98, 1593, 1, 0, 0, 0, 100, 1609, 1, 0, 0, 0, 102, 1625, 1, 0, 0, 0, 104, 1633, 1, 0, 0, 0, 106, 1636, 1, 0, 0, 0, 108, 1671, 1, 0, 0, 0, 110, 1683, 1, 0, 0, 0, 112, 1724, 1, 0, 0, 0, 114, 1738, 1, 0, 0, 0, 116, 1746, 1, 0, 0, 0, 118, 1752, 1, 0, 0, 0, 120, 1783, 1, 0, 0, 0, 122, 1819, 1, 0, 0, 0, 124, 1829, 1, 0, 0, 0, 126, 1838, 1, 0, 0, 0, 128, 1853, 1, 0, 0, 0, 130, 1873, 1, 0, 0, 0, 132, 1895, 1, 0, 0, 0, 134, 1907, 1, 0, 0, 0, 136, 1917, 1, 0, 0, 0, 138, 1923, 1, 0, 0, 0, 140, 1935, 1, 0, 0, 0, 142, 1947, 1, 0, 0, 0, 144, 1959, 1, 0, 0, 0, 146, 1968, 1, 0, 0, 0, 148, 2055, 1, 0, 0, 0, 150, 2057, 1, 0, 0, 0, 152, 2060, 1, 0, 0, 0, 154, 2063, 1, 0, 0, 0, 156, 2070, 1, 0, 0, 0, 158, 2077, 1, 0, 0, 0, 160, 2081, 1, 0, 0, 0, 162, 2095, 1, 0, 0, 0, 164, 2097, 1, 0, 0, 0, 166, 2099, 1, 0, 0, 0, 168, 2101, 1, 0, 0, 0, 170, 2105, 1, 0, 0, 0, 172, 2107, 1, 0, 0, 0, 174, 2109, 1, 0, 0, 0, 176, 2111, 1, 0, 0, 0, 178, 2113, 1, 0, 0, 0, 180, 2118, 1, 0, 0, 0, 182, 2122, 1, 0, 0, 0, 184, 2124, 1, 0, 0, 0, 186, 2126, 1, 0, 0, 0, 188, 2128, 1, 0, 0, 0, 190, 2130, 1, 0, 0, 0, 192, 2132, 1, 0, 0, 0, 194, 2134, 1, 0, 0, 0, 196, 2136, 1, 0, 0, 0, 198, 2138, 1, 0, 0, 0, 200, 2140, 1, 0, 0, 0, 202, 2142, 1, 0, 0, 0, 204, 2144, 1, 0, 0, 0, 206, 2146, 1, 0, 0, 0, 208, 2148, 1, 0, 0, 0, 210, 2150, 1, 0, 0, 0, 212, 2152, 1, 0, 0, 0, 214, 2154, 1, 0, 0, 0, 216, 2156, 1, 0, 0, 0, 218, 2158, 1, 0, 0, 0, 220, 2160, 1, 0, 0, 0, 222, 2162, 1, 0, 0, 0, 224, 2164, 1, 0, 0, 0, 226, 2166, 1, 0, 0, 0, 228, 2175, 1, 0, 0, 0, 230, 232, 3, 2, 1, 0, 231, 230, 1, 0, 0, 0, 232, 235, 1, 0, 0, 0, 233, 231, 1, 0, 0, 0, 233, 234, 1, 0, 0, 0, 234, 236, 1, 0, 0, 0, 235, 233, 1, 0, 0, 0, 236, 237, 5, 0, 0, 1, 237, 1, 1, 0, 0, 0, 238, 240, 5, 1, 0, 0, 239, 238, 1, 0, 0, 0, 240, 243, 1, 0, 0, 0, 241, 239, 1, 0, 0, 0, 241, 242, 1, 0, 0, 0, 242, 244, 1, 0, 0, 0, 243, 241, 1, 0, 0, 0, 244, 253, 3, 4, 2, 0, 245, 247, 5, 1, 0, 0, 246, 245, 1, 0, 0, 0, 247, 248, 1, 0, 0, 0, 248, 246, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 250, 1, 0, 0, 0, 250, 252, 3, 4, 2, 0, 251, 246, 1, 0, 0, 0, 252, 255, 1, 0, 0, 0, 253, 251, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254, 259, 1, 0, 0, 0, 255, 253, 1, 0, 0, 0, 256, 258, 5, 1, 0, 0, 257, 256, 1, 0, 0, 0, 258, 261, 1, 0, 0, 0, 259, 257, 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 3, 1, 0, 0, 0, 261, 259, 1, 0, 0, 0, 262, 265, 5, 73, 0, 0, 263, 264, 5, 116, 0, 0, 264, 266, 5, 113, 0, 0, 265, 263, 1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266, 268, 1, 0, 0, 0, 267, 262, 1, 0, 0, 0, 267, 268, 1, 0, 0, 0, 268, 293, 1, 0, 0, 0, 269, 294, 3, 6, 3, 0, 270, 294, 3, 8, 4, 0, 271, 294, 3, 10, 5, 0, 272, 294, 3, 12, 6, 0, 273, 294, 3, 14, 7, 0, 274, 294, 3, 22, 11, 0, 275, 294, 3, 28, 14, 0, 276, 294, 3, 44, 22, 0, 277, 294, 3, 46, 23, 0, 278, 294, 3, 48, 24, 0, 279, 294, 3, 60, 30, 0, 280, 294, 3, 62, 31, 0, 281, 294, 3, 64, 32, 0, 282, 294, 3, 66, 33, 0, 283, 294, 3, 74, 37, 0, 284, 294, 3, 78, 39, 0, 285, 294, 3, 82, 41, 0, 286, 294, 3, 20, 10, 0, 287, 294, 3, 16, 8, 0, 288, 294, 3, 18, 9, 0, 289, 294, 3, 84, 42, 0, 290, 294, 3, 106, 53, 0, 291, 294, 3, 110, 55, 0, 292, 294, 3, 114, 57, 0, 293, 269, 1, 0, 0, 0, 293, 270, 1, 0, 0, 0, 293, 271, 1, 0, 0, 0, 293, 272, 1, 0, 0, 0, 293, 273, 1, 0, 0, 0, 293, 274, 1, 0, 0, 0, 293, 275, 1, 0, 0, 0, 293, 276, 1, 0, 0, 0, 293, 277, 1, 0, 0, 0, 293, 278, 1, 0, 0, 0, 293, 279, 1, 0, 0, 0, 293, 280, 1, 0, 0, 0, 293, 281, 1, 0, 0, 0, 293, 282, 1, 0, 0, 0, 293, 283, 1, 0, 0, 0, 293, 284, 1, 0, 0, 0, 293, 285, 1, 0, 0, 0, 293, 286, 1, 0, 0, 0, 293, 287, 1, 0, 0, 0, 293, 288, 1, 0, 0, 0, 293, 289, 1, 0, 0, 0, 293, 290, 1, 0, 0, 0, 293, 291, 1, 0, 0, 0, 293, 292, 1, 0, 0, 0, 294, 5, 1, 0, 0, 0, 295, 296, 5, 32, 0, 0, 296, 300, 5, 135, 0, 0, 297, 298, 3, 182, 91, 0, 298, 299, 5, 2, 0, 0, 299, 301, 1, 0, 0, 0, 300, 297, 1, 0, 0, 0, 300, 301, 1, 0, 0, 0, 301, 302, 1, 0, 0, 0, 302, 325, 3, 184, 92, 0, 303, 313, 5, 123, 0, 0, 304, 305, 5, 139, 0, 0, 305, 314, 3, 188, 94, 0, 306, 308, 5, 48, 0, 0, 307, 306, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 309, 1, 0, 0, 0, 309, 310, 3, 190, 95, 0, 310, 311, 5, 139, 0, 0, 311, 312, 3, 190, 95, 0, 312, 314, 1, 0, 0, 0, 313, 304, 1, 0, 0, 0, 313, 307, 1, 0, 0, 0, 314, 326, 1, 0, 0, 0, 315, 317, 5, 29, 0, 0, 316, 318, 5, 48, 0, 0, 317, 316, 1, 0, 0, 0, 317, 318, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 326, 3, 30, 15, 0, 320, 322, 5, 65, 0, 0, 321, 323, 5, 48, 0, 0, 322, 321, 1, 0, 0, 0, 322, 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 326, 3, 190, 95, 0, 325, 303, 1, 0, 0, 0, 325, 315, 1, 0, 0, 0, 325, 320, 1, 0, 0, 0, 326, 7, 1, 0, 0, 0, 327, 335, 5, 33, 0, 0, 328, 336, 3, 182, 91, 0, 329, 330, 3, 182, 91, 0, 330, 331, 5, 2, 0, 0, 331, 333, 1, 0, 0, 0, 332, 329, 1, 0, 0, 0, 332, 333, 1, 0, 0, 0, 333, 334, 1, 0, 0, 0, 334, 336, 3, 186, 93, 0, 335, 328, 1, 0, 0, 0, 335, 332, 1, 0, 0, 0, 335, 336, 1, 0, 0, 0, 336, 9, 1, 0, 0, 0, 337, 339, 5, 37, 0, 0, 338, 340, 5, 57, 0, 0, 339, 338, 1, 0, 0, 0, 339, 340, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 342, 3, 68, 34, 0, 342, 343, 5, 35, 0, 0, 343, 344, 3, 182, 91, 0, 344, 11, 1, 0, 0, 0, 345, 347, 5, 40, 0, 0, 346, 348, 7, 0, 0, 0, 347, 346, 1, 0, 0, 0, 347, 348, 1, 0, 0, 0, 348, 353, 1, 0, 0, 0, 349, 351, 5, 140, 0, 0, 350, 352, 3, 212, 106, 0, 351, 350, 1, 0, 0, 0, 351, 352, 1, 0, 0, 0, 352, 354, 1, 0, 0, 0, 353, 349, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 13, 1, 0, 0, 0, 355, 357, 7, 1, 0, 0, 356, 358, 5, 140, 0, 0, 357, 356, 1, 0, 0, 0, 357, 358, 1, 0, 0, 0, 358, 15, 1, 0, 0, 0, 359, 361, 5, 128, 0, 0, 360, 362, 5, 140, 0, 0, 361, 360, 1, 0, 0, 0, 361, 362, 1, 0, 0, 0, 362, 368, 1, 0, 0, 0, 363, 365, 5, 139, 0, 0, 364, 366, 5, 131, 0, 0, 365, 364, 1, 0, 0, 0, 365, 366, 1, 0, 0, 0, 366, 367, 1, 0, 0, 0, 367, 369, 3, 206, 103, 0, 368, 363, 1, 0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 17, 1, 0, 0, 0, 370, 371, 5, 131, 0, 0, 371, 372, 3, 206, 103, 0, 372, 19, 1, 0, 0, 0, 373, 375, 5, 122, 0, 0, 374, 376, 5, 131, 0, 0, 375, 374, 1, 0, 0, 0, 375, 376, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 378, 3, 206, 103, 0, 378, 21, 1, 0, 0, 0, 379, 381, 5, 52, 0, 0, 380, 382, 5, 143, 0, 0, 381, 380, 1, 0, 0, 0, 381, 382, 1, 0, 0, 0, 382, 383, 1, 0, 0, 0, 383, 387, 5, 86, 0, 0, 384, 385, 5, 82, 0, 0, 385, 386, 5, 104, 0, 0, 386, 388, 5, 72, 0, 0, 387, 384, 1, 0, 0, 0, 387, 388, 1, 0, 0, 0, 388, 392, 1, 0, 0, 0, 389, 390, 3, 182, 91, 0, 390, 391, 5, 2, 0, 0, 391, 393, 1, 0, 0, 0, 392, 389, 1, 0, 0, 0, 392, 393, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394, 395, 3, 196, 98, 0, 395, 396, 5, 109, 0, 0, 396, 397, 3, 184, 92, 0, 397, 398, 5, 3, 0, 0, 398, 403, 3, 24, 12, 0, 399, 400, 5, 5, 0, 0, 400, 402, 3, 24, 12, 0, 401, 399, 1, 0, 0, 0, 402, 405, 1, 0, 0, 0, 403, 401, 1, 0, 0, 0, 403, 404, 1, 0, 0, 0, 404, 406, 1, 0, 0, 0, 405, 403, 1, 0, 0, 0, 406, 409, 5, 4, 0, 0, 407, 408, 5, 151, 0, 0, 408, 410, 3, 68, 34, 0, 409, 407, 1, 0, 0, 0, 409, 410, 1, 0, 0, 0, 410, 23, 1, 0, 0, 0, 411, 414, 3, 190, 95, 0, 412, 414, 3, 68, 34, 0, 413, 411, 1, 0, 0, 0, 413, 412, 1, 0, 0, 0, 414, 417, 1, 0, 0, 0, 415, 416, 5, 47, 0, 0, 416, 418, 3, 192, 96, 0, 417, 415, 1, 0, 0, 0, 417, 418, 1, 0, 0, 0, 418, 420, 1, 0, 0, 0, 419, 421, 3, 140, 70, 0, 420, 419, 1, 0, 0, 0, 420, 421, 1, 0, 0, 0, 421, 25, 1, 0, 0, 0, 422, 423, 5, 153, 0, 0, 423, 426, 5, 188, 0, 0, 424, 426, 5, 134, 0, 0, 425, 422, 1, 0, 0, 0, 425, 424, 1, 0, 0, 0, 426, 27, 1, 0, 0, 0, 427, 429, 5, 52, 0, 0, 428, 430, 7, 2, 0, 0, 429, 428, 1, 0, 0, 0, 429, 430, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, 431, 435, 5, 135, 0, 0, 432, 433, 5, 82, 0, 0, 433, 434, 5, 104, 0, 0, 434, 436, 5, 72, 0, 0, 435, 432, 1, 0, 0, 0, 435, 436, 1, 0, 0, 0, 436, 440, 1, 0, 0, 0, 437, 438, 3, 182, 91, 0, 438, 439, 5, 2, 0, 0, 439, 441, 1, 0, 0, 0, 440, 437, 1, 0, 0, 0, 440, 441, 1, 0, 0, 0, 441, 442, 1, 0, 0, 0, 442, 472, 3, 184, 92, 0, 443, 444, 5, 3, 0, 0, 444, 449, 3, 30, 15, 0, 445, 446, 5, 5, 0, 0, 446, 448, 3, 30, 15, 0, 447, 445, 1, 0, 0, 0, 448, 451, 1, 0, 0, 0, 449, 450, 1, 0, 0, 0, 449, 447, 1, 0, 0, 0, 450, 456, 1, 0, 0, 0, 451, 449, 1, 0, 0, 0, 452, 453, 5, 5, 0, 0, 453, 455, 3, 38, 19, 0, 454, 452, 1, 0, 0, 0, 455, 458, 1, 0, 0, 0, 456, 454, 1, 0, 0, 0, 456, 457, 1, 0, 0, 0, 457, 459, 1, 0, 0, 0, 458, 456, 1, 0, 0, 0, 459, 468, 5, 4, 0, 0, 460, 465, 3, 26, 13, 0, 461, 462, 5, 5, 0, 0, 462, 464, 3, 26, 13, 0, 463, 461, 1, 0, 0, 0, 464, 467, 1, 0, 0, 0, 465, 463, 1, 0, 0, 0, 465, 466, 1, 0, 0, 0, 466, 469, 1, 0, 0, 0, 467, 465, 1, 0, 0, 0, 468, 460, 1, 0, 0, 0, 468, 469, 1, 0, 0, 0, 469, 473, 1, 0, 0, 0, 470, 471, 5, 35, 0, 0, 471, 473, 3, 84, 42, 0, 472, 443, 1, 0, 0, 0, 472, 470, 1, 0, 0, 0, 473, 29, 1, 0, 0, 0, 474, 476, 3, 190, 95, 0, 475, 477, 3, 32, 16, 0, 476, 475, 1, 0, 0, 0, 476, 477, 1, 0, 0, 0, 477, 481, 1, 0, 0, 0, 478, 480, 3, 34, 17, 0, 479, 478, 1, 0, 0, 0, 480, 483, 1, 0, 0, 0, 481, 479, 1, 0, 0, 0, 481, 482, 1, 0, 0, 0, 482, 31, 1, 0, 0, 0, 483, 481, 1, 0, 0, 0, 484, 486, 3, 176, 88, 0, 485, 484, 1, 0, 0, 0, 486, 487, 1, 0, 0, 0, 487, 488, 1, 0, 0, 0, 487, 485, 1, 0, 0, 0, 488, 499, 1, 0, 0, 0, 489, 490, 5, 3, 0, 0, 490, 491, 3, 36, 18, 0, 491, 492, 5, 4, 0, 0, 492, 500, 1, 0, 0, 0, 493, 494, 5, 3, 0, 0, 494, 495, 3, 36, 18, 0, 495, 496, 5, 5, 0, 0, 496, 497, 3, 36, 18, 0, 497, 498, 5, 4, 0, 0, 498, 500, 1, 0, 0, 0, 499, 489, 1, 0, 0, 0, 499, 493, 1, 0, 0, 0, 499, 500, 1, 0, 0, 0, 500, 33, 1, 0, 0, 0, 501, 502, 5, 51, 0, 0, 502, 504, 3, 176, 88, 0, 503, 501, 1, 0, 0, 0, 503, 504, 1, 0, 0, 0, 504, 552, 1, 0, 0, 0, 505, 506, 5, 115, 0, 0, 506, 508, 5, 97, 0, 0, 507, 509, 3, 140, 70, 0, 508, 507, 1, 0, 0, 0, 508, 509, 1, 0, 0, 0, 509, 511, 1, 0, 0, 0, 510, 512, 3, 42, 21, 0, 511, 510, 1, 0, 0, 0, 511, 512, 1, 0, 0, 0, 512, 514, 1, 0, 0, 0, 513, 515, 5, 38, 0, 0, 514, 513, 1, 0, 0, 0, 514, 515, 1, 0, 0, 0, 515, 553, 1, 0, 0, 0, 516, 517, 5, 104, 0, 0, 517, 520, 5, 106, 0, 0, 518, 520, 5, 143, 0, 0, 519, 516, 1, 0, 0, 0, 519, 518, 1, 0, 0, 0, 520, 522, 1, 0, 0, 0, 521, 523, 3, 42, 21, 0, 522, 521, 1, 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 553, 1, 0, 0, 0, 524, 525, 5, 46, 0, 0, 525, 526, 5, 3, 0, 0, 526, 527, 3, 68, 34, 0, 527, 528, 5, 4, 0, 0, 528, 553, 1, 0, 0, 0, 529, 536, 5, 58, 0, 0, 530, 537, 3, 36, 18, 0, 531, 537, 3, 72, 36, 0, 532, 533, 5, 3, 0, 0, 533, 534, 3, 68, 34, 0, 534, 535, 5, 4, 0, 0, 535, 537, 1, 0, 0, 0, 536, 530, 1, 0, 0, 0, 536, 531, 1, 0, 0, 0, 536, 532, 1, 0, 0, 0, 537, 553, 1, 0, 0, 0, 538, 539, 5, 47, 0, 0, 539, 553, 3, 192, 96, 0, 540, 553, 3, 40, 20, 0, 541, 542, 5, 172, 0, 0, 542, 544, 5, 173, 0, 0, 543, 541, 1, 0, 0, 0, 543, 544, 1, 0, 0, 0, 544, 545, 1, 0, 0, 0, 545, 546, 5, 35, 0, 0, 546, 547, 5, 3, 0, 0, 547, 548, 3, 68, 34, 0, 548, 550, 5, 4, 0, 0, 549, 551, 7, 3, 0, 0, 550, 549, 1, 0, 0, 0, 550, 551, 1, 0, 0, 0, 551, 553, 1, 0, 0, 0, 552, 505, 1, 0, 0, 0, 552, 519, 1, 0, 0, 0, 552, 524, 1, 0, 0, 0, 552, 529, 1, 0, 0, 0, 552, 538, 1, 0, 0, 0, 552, 540, 1, 0, 0, 0, 552, 543, 1, 0, 0, 0, 553, 35, 1, 0, 0, 0, 554, 556, 7, 4, 0, 0, 555, 554, 1, 0, 0, 0, 555, 556, 1, 0, 0, 0, 556, 557, 1, 0, 0, 0, 557, 558, 5, 189, 0, 0, 558, 37, 1, 0, 0, 0, 559, 560, 5, 51, 0, 0, 560, 562, 3, 176, 88, 0, 561, 559, 1, 0, 0, 0, 561, 562, 1, 0, 0, 0, 562, 600, 1, 0, 0, 0, 563, 564, 5, 115, 0, 0, 564, 567, 5, 97, 0, 0, 565, 567, 5, 143, 0, 0, 566, 563, 1, 0, 0, 0, 566, 565, 1, 0, 0, 0, 567, 568, 1, 0, 0, 0, 568, 569, 5, 3, 0, 0, 569, 574, 3, 24, 12, 0, 570, 571, 5, 5, 0, 0, 571, 573, 3, 24, 12, 0, 572, 570, 1, 0, 0, 0, 573, 576, 1, 0, 0, 0, 574, 572, 1, 0, 0, 0, 574, 575, 1, 0, 0, 0, 575, 577, 1, 0, 0, 0, 576, 574, 1, 0, 0, 0, 577, 579, 5, 4, 0, 0, 578, 580, 3, 42, 21, 0, 579, 578, 1, 0, 0, 0, 579, 580, 1, 0, 0, 0, 580, 601, 1, 0, 0, 0, 581, 582, 5, 46, 0, 0, 582, 583, 5, 3, 0, 0, 583, 584, 3, 68, 34, 0, 584, 585, 5, 4, 0, 0, 585, 601, 1, 0, 0, 0, 586, 587, 5, 76, 0, 0, 587, 588, 5, 97, 0, 0, 588, 589, 5, 3, 0, 0, 589, 594, 3, 190, 95, 0, 590, 591, 5, 5, 0, 0, 591, 593, 3, 190, 95, 0, 592, 590, 1, 0, 0, 0, 593, 596, 1, 0, 0, 0, 594, 592, 1, 0, 0, 0, 594, 595, 1, 0, 0, 0, 595, 597, 1, 0, 0, 0, 596, 594, 1, 0, 0, 0, 597, 598, 5, 4, 0, 0, 598, 599, 3, 40, 20, 0, 599, 601, 1, 0, 0, 0, 600, 566, 1, 0, 0, 0, 600, 581, 1, 0, 0, 0, 600, 586, 1, 0, 0, 0, 601, 39, 1, 0, 0, 0, 602, 603, 5, 119, 0, 0, 603, 615, 3, 194, 97, 0, 604, 605, 5, 3, 0, 0, 605, 610, 3, 190, 95, 0, 606, 607, 5, 5, 0, 0, 607, 609, 3, 190, 95, 0, 608, 606, 1, 0, 0, 0, 609, 612, 1, 0, 0, 0, 610, 608, 1, 0, 0, 0, 610, 611, 1, 0, 0, 0, 611, 613, 1, 0, 0, 0, 612, 610, 1, 0, 0, 0, 613, 614, 5, 4, 0, 0, 614, 616, 1, 0, 0, 0, 615, 604, 1, 0, 0, 0, 615, 616, 1, 0, 0, 0, 616, 631, 1, 0, 0, 0, 617, 618, 5, 109, 0, 0, 618, 625, 7, 5, 0, 0, 619, 620, 5, 133, 0, 0, 620, 626, 7, 6, 0, 0, 621, 626, 5, 43, 0, 0, 622, 626, 5, 125, 0, 0, 623, 624, 5, 103, 0, 0, 624, 626, 5, 28, 0, 0, 625, 619, 1, 0, 0, 0, 625, 621, 1, 0, 0, 0, 625, 622, 1, 0, 0, 0, 625, 623, 1, 0, 0, 0, 626, 630, 1, 0, 0, 0, 627, 628, 5, 101, 0, 0, 628, 630, 3, 176, 88, 0, 629, 617, 1, 0, 0, 0, 629, 627, 1, 0, 0, 0, 630, 633, 1, 0, 0, 0, 631, 629, 1, 0, 0, 0, 631, 632, 1, 0, 0, 0, 632, 642, 1, 0, 0, 0, 633, 631, 1, 0, 0, 0, 634, 636, 5, 104, 0, 0, 635, 634, 1, 0, 0, 0, 635, 636, 1, 0, 0, 0, 636, 637, 1, 0, 0, 0, 637, 640, 5, 59, 0, 0, 638, 639, 5, 88, 0, 0, 639, 641, 7, 7, 0, 0, 640, 638, 1, 0, 0, 0, 640, 641, 1, 0, 0, 0, 641, 643, 1, 0, 0, 0, 642, 635, 1, 0, 0, 0, 642, 643, 1, 0, 0, 0, 643, 41, 1, 0, 0, 0, 644, 645, 5, 109, 0, 0, 645, 646, 5, 50, 0, 0, 646, 647, 7, 8, 0, 0, 647, 43, 1, 0, 0, 0, 648, 650, 5, 52, 0, 0, 649, 651, 7, 2, 0, 0, 650, 649, 1, 0, 0, 0, 650, 651, 1, 0, 0, 0, 651, 652, 1, 0, 0, 0, 652, 656, 5, 141, 0, 0, 653, 654, 5, 82, 0, 0, 654, 655, 5, 104, 0, 0, 655, 657, 5, 72, 0, 0, 656, 653, 1, 0, 0, 0, 656, 657, 1, 0, 0, 0, 657, 661, 1, 0, 0, 0, 658, 659, 3, 182, 91, 0, 659, 660, 5, 2, 0, 0, 660, 662, 1, 0, 0, 0, 661, 658, 1, 0, 0, 0, 661, 662, 1, 0, 0, 0, 662, 663, 1, 0, 0, 0, 663, 668, 3, 198, 99, 0, 664, 669, 5, 39, 0, 0, 665, 669, 5, 30, 0, 0, 666, 667, 5, 91, 0, 0, 667, 669, 5, 107, 0, 0, 668, 664, 1, 0, 0, 0, 668, 665, 1, 0, 0, 0, 668, 666, 1, 0, 0, 0, 668, 669, 1, 0, 0, 0, 669, 684, 1, 0, 0, 0, 670, 685, 5, 61, 0, 0, 671, 685, 5, 90, 0, 0, 672, 682, 5, 144, 0, 0, 673, 674, 5, 107, 0, 0, 674, 679, 3, 190, 95, 0, 675, 676, 5, 5, 0, 0, 676, 678, 3, 190, 95, 0, 677, 675, 1, 0, 0, 0, 678, 681, 1, 0, 0, 0, 679, 677, 1, 0, 0, 0, 679, 680, 1, 0, 0, 0, 680, 683, 1, 0, 0, 0, 681, 679, 1, 0, 0, 0, 682, 673, 1, 0, 0, 0, 682, 683, 1, 0, 0, 0, 683, 685, 1, 0, 0, 0, 684, 670, 1, 0, 0, 0, 684, 671, 1, 0, 0, 0, 684, 672, 1, 0, 0, 0, 685, 686, 1, 0, 0, 0, 686, 687, 5, 109, 0, 0, 687, 691, 3, 184, 92, 0, 688, 689, 5, 75, 0, 0, 689, 690, 5, 66, 0, 0, 690, 692, 5, 129, 0, 0, 691, 688, 1, 0, 0, 0, 691, 692, 1, 0, 0, 0, 692, 695, 1, 0, 0, 0, 693, 694, 5, 150, 0, 0, 694, 696, 3, 68, 34, 0, 695, 693, 1, 0, 0, 0, 695, 696, 1, 0, 0, 0, 696, 697, 1, 0, 0, 0, 697, 706, 5, 40, 0, 0, 698, 703, 3, 106, 53, 0, 699, 703, 3, 74, 37, 0, 700, 703, 3, 60, 30, 0, 701, 703, 3, 84, 42, 0, 702, 698, 1, 0, 0, 0, 702, 699, 1, 0, 0, 0, 702, 700, 1, 0, 0, 0, 702, 701, 1, 0, 0, 0, 703, 704, 1, 0, 0, 0, 704, 705, 5, 1, 0, 0, 705, 707, 1, 0, 0, 0, 706, 702, 1, 0, 0, 0, 707, 708, 1, 0, 0, 0, 708, 706, 1, 0, 0, 0, 708, 709, 1, 0, 0, 0, 709, 710, 1, 0, 0, 0, 710, 711, 5, 68, 0, 0, 711, 45, 1, 0, 0, 0, 712, 714, 5, 52, 0, 0, 713, 715, 7, 2, 0, 0, 714, 713, 1, 0, 0, 0, 714, 715, 1, 0, 0, 0, 715, 716, 1, 0, 0, 0, 716, 720, 5, 148, 0, 0, 717, 718, 5, 82, 0, 0, 718, 719, 5, 104, 0, 0, 719, 721, 5, 72, 0, 0, 720, 717, 1, 0, 0, 0, 720, 721, 1, 0, 0, 0, 721, 725, 1, 0, 0, 0, 722, 723, 3, 182, 91, 0, 723, 724, 5, 2, 0, 0, 724, 726, 1, 0, 0, 0, 725, 722, 1, 0, 0, 0, 725, 726, 1, 0, 0, 0, 726, 727, 1, 0, 0, 0, 727, 739, 3, 200, 100, 0, 728, 729, 5, 3, 0, 0, 729, 734, 3, 190, 95, 0, 730, 731, 5, 5, 0, 0, 731, 733, 3, 190, 95, 0, 732, 730, 1, 0, 0, 0, 733, 736, 1, 0, 0, 0, 734, 732, 1, 0, 0, 0, 734, 735, 1, 0, 0, 0, 735, 737, 1, 0, 0, 0, 736, 734, 1, 0, 0, 0, 737, 738, 5, 4, 0, 0, 738, 740, 1, 0, 0, 0, 739, 728, 1, 0, 0, 0, 739, 740, 1, 0, 0, 0, 740, 741, 1, 0, 0, 0, 741, 742, 5, 35, 0, 0, 742, 743, 3, 84, 42, 0, 743, 47, 1, 0, 0, 0, 744, 745, 5, 52, 0, 0, 745, 746, 5, 149, 0, 0, 746, 750, 5, 135, 0, 0, 747, 748, 5, 82, 0, 0, 748, 749, 5, 104, 0, 0, 749, 751, 5, 72, 0, 0, 750, 747, 1, 0, 0, 0, 750, 751, 1, 0, 0, 0, 751, 755, 1, 0, 0, 0, 752, 753, 3, 182, 91, 0, 753, 754, 5, 2, 0, 0, 754, 756, 1, 0, 0, 0, 755, 752, 1, 0, 0, 0, 755, 756, 1, 0, 0, 0, 756, 757, 1, 0, 0, 0, 757, 758, 3, 184, 92, 0, 758, 759, 5, 145, 0, 0, 759, 771, 3, 202, 101, 0, 760, 761, 5, 3, 0, 0, 761, 766, 3, 170, 85, 0, 762, 763, 5, 5, 0, 0, 763, 765, 3, 170, 85, 0, 764, 762, 1, 0, 0, 0, 765, 768, 1, 0, 0, 0, 766, 764, 1, 0, 0, 0, 766, 767, 1, 0, 0, 0, 767, 769, 1, 0, 0, 0, 768, 766, 1, 0, 0, 0, 769, 770, 5, 4, 0, 0, 770, 772, 1, 0, 0, 0, 771, 760, 1, 0, 0, 0, 771, 772, 1, 0, 0, 0, 772, 49, 1, 0, 0, 0, 773, 775, 5, 152, 0, 0, 774, 776, 5, 118, 0, 0, 775, 774, 1, 0, 0, 0, 775, 776, 1, 0, 0, 0, 776, 777, 1, 0, 0, 0, 777, 778, 3, 52, 26, 0, 778, 779, 5, 35, 0, 0, 779, 780, 5, 3, 0, 0, 780, 781, 3, 84, 42, 0, 781, 791, 5, 4, 0, 0, 782, 783, 5, 5, 0, 0, 783, 784, 3, 52, 26, 0, 784, 785, 5, 35, 0, 0, 785, 786, 5, 3, 0, 0, 786, 787, 3, 84, 42, 0, 787, 788, 5, 4, 0, 0, 788, 790, 1, 0, 0, 0, 789, 782, 1, 0, 0, 0, 790, 793, 1, 0, 0, 0, 791, 789, 1, 0, 0, 0, 791, 792, 1, 0, 0, 0, 792, 51, 1, 0, 0, 0, 793, 791, 1, 0, 0, 0, 794, 806, 3, 184, 92, 0, 795, 796, 5, 3, 0, 0, 796, 801, 3, 190, 95, 0, 797, 798, 5, 5, 0, 0, 798, 800, 3, 190, 95, 0, 799, 797, 1, 0, 0, 0, 800, 803, 1, 0, 0, 0, 801, 799, 1, 0, 0, 0, 801, 802, 1, 0, 0, 0, 802, 804, 1, 0, 0, 0, 803, 801, 1, 0, 0, 0, 804, 805, 5, 4, 0, 0, 805, 807, 1, 0, 0, 0, 806, 795, 1, 0, 0, 0, 806, 807, 1, 0, 0, 0, 807, 53, 1, 0, 0, 0, 808, 809, 3, 52, 26, 0, 809, 810, 5, 35, 0, 0, 810, 811, 5, 3, 0, 0, 811, 812, 3, 162, 81, 0, 812, 814, 5, 142, 0, 0, 813, 815, 5, 31, 0, 0, 814, 813, 1, 0, 0, 0, 814, 815, 1, 0, 0, 0, 815, 816, 1, 0, 0, 0, 816, 817, 3, 164, 82, 0, 817, 818, 5, 4, 0, 0, 818, 55, 1, 0, 0, 0, 819, 831, 3, 184, 92, 0, 820, 821, 5, 3, 0, 0, 821, 826, 3, 190, 95, 0, 822, 823, 5, 5, 0, 0, 823, 825, 3, 190, 95, 0, 824, 822, 1, 0, 0, 0, 825, 828, 1, 0, 0, 0, 826, 824, 1, 0, 0, 0, 826, 827, 1, 0, 0, 0, 827, 829, 1, 0, 0, 0, 828, 826, 1, 0, 0, 0, 829, 830, 5, 4, 0, 0, 830, 832, 1, 0, 0, 0, 831, 820, 1, 0, 0, 0, 831, 832, 1, 0, 0, 0, 832, 833, 1, 0, 0, 0, 833, 834, 5, 35, 0, 0, 834, 835, 5, 3, 0, 0, 835, 836, 3, 84, 42, 0, 836, 837, 5, 4, 0, 0, 837, 57, 1, 0, 0, 0, 838, 847, 5, 126, 0, 0, 839, 848, 5, 7, 0, 0, 840, 845, 3, 68, 34, 0, 841, 843, 5, 35, 0, 0, 842, 841, 1, 0, 0, 0, 842, 843, 1, 0, 0, 0, 843, 844, 1, 0, 0, 0, 844, 846, 3, 172, 86, 0, 845, 842, 1, 0, 0, 0, 845, 846, 1, 0, 0, 0, 846, 848, 1, 0, 0, 0, 847, 839, 1, 0, 0, 0, 847, 840, 1, 0, 0, 0, 848, 862, 1, 0, 0, 0, 849, 858, 5, 5, 0, 0, 850, 859, 5, 7, 0, 0, 851, 856, 3, 68, 34, 0, 852, 854, 5, 35, 0, 0, 853, 852, 1, 0, 0, 0, 853, 854, 1, 0, 0, 0, 854, 855, 1, 0, 0, 0, 855, 857, 3, 172, 86, 0, 856, 853, 1, 0, 0, 0, 856, 857, 1, 0, 0, 0, 857, 859, 1, 0, 0, 0, 858, 850, 1, 0, 0, 0, 858, 851, 1, 0, 0, 0, 859, 861, 1, 0, 0, 0, 860, 849, 1, 0, 0, 0, 861, 864, 1, 0, 0, 0, 862, 860, 1, 0, 0, 0, 862, 863, 1, 0, 0, 0, 863, 59, 1, 0, 0, 0, 864, 862, 1, 0, 0, 0, 865, 867, 3, 50, 25, 0, 866, 865, 1, 0, 0, 0, 866, 867, 1, 0, 0, 0, 867, 868, 1, 0, 0, 0, 868, 869, 5, 61, 0, 0, 869, 870, 5, 77, 0, 0, 870, 873, 3, 112, 56, 0, 871, 872, 5, 151, 0, 0, 872, 874, 3, 68, 34, 0, 873, 871, 1, 0, 0, 0, 873, 874, 1, 0, 0, 0, 874, 876, 1, 0, 0, 0, 875, 877, 3, 58, 29, 0, 876, 875, 1, 0, 0, 0, 876, 877, 1, 0, 0, 0, 877, 61, 1, 0, 0, 0, 878, 880, 3, 50, 25, 0, 879, 878, 1, 0, 0, 0, 879, 880, 1, 0, 0, 0, 880, 881, 1, 0, 0, 0, 881, 882, 5, 61, 0, 0, 882, 883, 5, 77, 0, 0, 883, 886, 3, 112, 56, 0, 884, 885, 5, 151, 0, 0, 885, 887, 3, 68, 34, 0, 886, 884, 1, 0, 0, 0, 886, 887, 1, 0, 0, 0, 887, 892, 1, 0, 0, 0, 888, 890, 3, 134, 67, 0, 889, 888, 1, 0, 0, 0, 889, 890, 1, 0, 0, 0, 890, 891, 1, 0, 0, 0, 891, 893, 3, 136, 68, 0, 892, 889, 1, 0, 0, 0, 892, 893, 1, 0, 0, 0, 893, 895, 1, 0, 0, 0, 894, 896, 3, 58, 29, 0, 895, 894, 1, 0, 0, 0, 895, 896, 1, 0, 0, 0, 896, 63, 1, 0, 0, 0, 897, 899, 5, 63, 0, 0, 898, 900, 5, 57, 0, 0, 899, 898, 1, 0, 0, 0, 899, 900, 1, 0, 0, 0, 900, 901, 1, 0, 0, 0, 901, 902, 3, 182, 91, 0, 902, 65, 1, 0, 0, 0, 903, 904, 5, 65, 0, 0, 904, 907, 7, 9, 0, 0, 905, 906, 5, 82, 0, 0, 906, 908, 5, 72, 0, 0, 907, 905, 1, 0, 0, 0, 907, 908, 1, 0, 0, 0, 908, 912, 1, 0, 0, 0, 909, 910, 3, 182, 91, 0, 910, 911, 5, 2, 0, 0, 911, 913, 1, 0, 0, 0, 912, 909, 1, 0, 0, 0, 912, 913, 1, 0, 0, 0, 913, 914, 1, 0, 0, 0, 914, 915, 3, 228, 114, 0, 915, 67, 1, 0, 0, 0, 916, 917, 6, 34, -1, 0, 917, 1006, 3, 72, 36, 0, 918, 1006, 5, 190, 0, 0, 919, 1006, 5, 191, 0, 0, 920, 921, 3, 182, 91, 0, 921, 922, 5, 2, 0, 0, 922, 924, 1, 0, 0, 0, 923, 920, 1, 0, 0, 0, 923, 924, 1, 0, 0, 0, 924, 925, 1, 0, 0, 0, 925, 926, 3, 184, 92, 0, 926, 927, 5, 2, 0, 0, 927, 929, 1, 0, 0, 0, 928, 923, 1, 0, 0, 0, 928, 929, 1, 0, 0, 0, 929, 930, 1, 0, 0, 0, 930, 1006, 3, 190, 95, 0, 931, 932, 3, 166, 83, 0, 932, 933, 3, 68, 34, 21, 933, 1006, 1, 0, 0, 0, 934, 935, 3, 180, 90, 0, 935, 948, 5, 3, 0, 0, 936, 938, 5, 64, 0, 0, 937, 936, 1, 0, 0, 0, 937, 938, 1, 0, 0, 0, 938, 939, 1, 0, 0, 0, 939, 944, 3, 68, 34, 0, 940, 941, 5, 5, 0, 0, 941, 943, 3, 68, 34, 0, 942, 940, 1, 0, 0, 0, 943, 946, 1, 0, 0, 0, 944, 942, 1, 0, 0, 0, 944, 945, 1, 0, 0, 0, 945, 949, 1, 0, 0, 0, 946, 944, 1, 0, 0, 0, 947, 949, 5, 7, 0, 0, 948, 937, 1, 0, 0, 0, 948, 947, 1, 0, 0, 0, 948, 949, 1, 0, 0, 0, 949, 950, 1, 0, 0, 0, 950, 952, 5, 4, 0, 0, 951, 953, 3, 116, 58, 0, 952, 951, 1, 0, 0, 0, 952, 953, 1, 0, 0, 0, 953, 955, 1, 0, 0, 0, 954, 956, 3, 120, 60, 0, 955, 954, 1, 0, 0, 0, 955, 956, 1, 0, 0, 0, 956, 1006, 1, 0, 0, 0, 957, 958, 5, 3, 0, 0, 958, 963, 3, 68, 34, 0, 959, 960, 5, 5, 0, 0, 960, 962, 3, 68, 34, 0, 961, 959, 1, 0, 0, 0, 962, 965, 1, 0, 0, 0, 963, 961, 1, 0, 0, 0, 963, 964, 1, 0, 0, 0, 964, 966, 1, 0, 0, 0, 965, 963, 1, 0, 0, 0, 966, 967, 5, 4, 0, 0, 967, 1006, 1, 0, 0, 0, 968, 969, 5, 45, 0, 0, 969, 970, 5, 3, 0, 0, 970, 971, 3, 68, 34, 0, 971, 972, 5, 35, 0, 0, 972, 973, 3, 32, 16, 0, 973, 974, 5, 4, 0, 0, 974, 1006, 1, 0, 0, 0, 975, 977, 5, 104, 0, 0, 976, 975, 1, 0, 0, 0, 976, 977, 1, 0, 0, 0, 977, 978, 1, 0, 0, 0, 978, 980, 5, 72, 0, 0, 979, 976, 1, 0, 0, 0, 979, 980, 1, 0, 0, 0, 980, 981, 1, 0, 0, 0, 981, 982, 5, 3, 0, 0, 982, 983, 3, 84, 42, 0, 983, 984, 5, 4, 0, 0, 984, 1006, 1, 0, 0, 0, 985, 987, 5, 44, 0, 0, 986, 988, 3, 68, 34, 0, 987, 986, 1, 0, 0, 0, 987, 988, 1, 0, 0, 0, 988, 994, 1, 0, 0, 0, 989, 990, 5, 150, 0, 0, 990, 991, 3, 68, 34, 0, 991, 992, 5, 138, 0, 0, 992, 993, 3, 68, 34, 0, 993, 995, 1, 0, 0, 0, 994, 989, 1, 0, 0, 0, 995, 996, 1, 0, 0, 0, 996, 994, 1, 0, 0, 0, 996, 997, 1, 0, 0, 0, 997, 1000, 1, 0, 0, 0, 998, 999, 5, 67, 0, 0, 999, 1001, 3, 68, 34, 0, 1000, 998, 1, 0, 0, 0, 1000, 1001, 1, 0, 0, 0, 1001, 1002, 1, 0, 0, 0, 1002, 1003, 5, 68, 0, 0, 1003, 1006, 1, 0, 0, 0, 1004, 1006, 3, 70, 35, 0, 1005, 916, 1, 0, 0, 0, 1005, 918, 1, 0, 0, 0, 1005, 919, 1, 0, 0, 0, 1005, 928, 1, 0, 0, 0, 1005, 931, 1, 0, 0, 0, 1005, 934, 1, 0, 0, 0, 1005, 957, 1, 0, 0, 0, 1005, 968, 1, 0, 0, 0, 1005, 979, 1, 0, 0, 0, 1005, 985, 1, 0, 0, 0, 1005, 1004, 1, 0, 0, 0, 1006, 1126, 1, 0, 0, 0, 1007, 1008, 10, 20, 0, 0, 1008, 1009, 5, 13, 0, 0, 1009, 1125, 3, 68, 34, 21, 1010, 1011, 10, 19, 0, 0, 1011, 1012, 7, 10, 0, 0, 1012, 1125, 3, 68, 34, 20, 1013, 1014, 10, 18, 0, 0, 1014, 1015, 7, 11, 0, 0, 1015, 1125, 3, 68, 34, 19, 1016, 1017, 10, 17, 0, 0, 1017, 1018, 7, 4, 0, 0, 1018, 1125, 3, 68, 34, 18, 1019, 1020, 10, 16, 0, 0, 1020, 1021, 7, 12, 0, 0, 1021, 1125, 3, 68, 34, 17, 1022, 1023, 10, 15, 0, 0, 1023, 1024, 7, 13, 0, 0, 1024, 1125, 3, 68, 34, 16, 1025, 1041, 10, 14, 0, 0, 1026, 1042, 5, 6, 0, 0, 1027, 1042, 5, 24, 0, 0, 1028, 1042, 5, 25, 0, 0, 1029, 1042, 5, 26, 0, 0, 1030, 1042, 5, 94, 0, 0, 1031, 1032, 5, 94, 0, 0, 1032, 1042, 5, 104, 0, 0, 1033, 1035, 5, 104, 0, 0, 1034, 1033, 1, 0, 0, 0, 1034, 1035, 1, 0, 0, 0, 1035, 1036, 1, 0, 0, 0, 1036, 1042, 5, 85, 0, 0, 1037, 1042, 5, 99, 0, 0, 1038, 1042, 5, 79, 0, 0, 1039, 1042, 5, 101, 0, 0, 1040, 1042, 5, 120, 0, 0, 1041, 1026, 1, 0, 0, 0, 1041, 1027, 1, 0, 0, 0, 1041, 1028, 1, 0, 0, 0, 1041, 1029, 1, 0, 0, 0, 1041, 1030, 1, 0, 0, 0, 1041, 1031, 1, 0, 0, 0, 1041, 1034, 1, 0, 0, 0, 1041, 1037, 1, 0, 0, 0, 1041, 1038, 1, 0, 0, 0, 1041, 1039, 1, 0, 0, 0, 1041, 1040, 1, 0, 0, 0, 1042, 1043, 1, 0, 0, 0, 1043, 1125, 3, 68, 34, 15, 1044, 1045, 10, 12, 0, 0, 1045, 1046, 5, 34, 0, 0, 1046, 1125, 3, 68, 34, 13, 1047, 1048, 10, 11, 0, 0, 1048, 1049, 5, 110, 0, 0, 1049, 1125, 3, 68, 34, 12, 1050, 1052, 10, 4, 0, 0, 1051, 1053, 5, 104, 0, 0, 1052, 1051, 1, 0, 0, 0, 1052, 1053, 1, 0, 0, 0, 1053, 1054, 1, 0, 0, 0, 1054, 1055, 5, 41, 0, 0, 1055, 1056, 3, 68, 34, 0, 1056, 1057, 5, 34, 0, 0, 1057, 1058, 3, 68, 34, 5, 1058, 1125, 1, 0, 0, 0, 1059, 1061, 10, 13, 0, 0, 1060, 1062, 5, 104, 0, 0, 1061, 1060, 1, 0, 0, 0, 1061, 1062, 1, 0, 0, 0, 1062, 1063, 1, 0, 0, 0, 1063, 1102, 5, 85, 0, 0, 1064, 1074, 5, 3, 0, 0, 1065, 1075, 3, 84, 42, 0, 1066, 1071, 3, 68, 34, 0, 1067, 1068, 5, 5, 0, 0, 1068, 1070, 3, 68, 34, 0, 1069, 1067, 1, 0, 0, 0, 1070, 1073, 1, 0, 0, 0, 1071, 1069, 1, 0, 0, 0, 1071, 1072, 1, 0, 0, 0, 1072, 1075, 1, 0, 0, 0, 1073, 1071, 1, 0, 0, 0, 1074, 1065, 1, 0, 0, 0, 1074, 1066, 1, 0, 0, 0, 1074, 1075, 1, 0, 0, 0, 1075, 1076, 1, 0, 0, 0, 1076, 1103, 5, 4, 0, 0, 1077, 1078, 3, 182, 91, 0, 1078, 1079, 5, 2, 0, 0, 1079, 1081, 1, 0, 0, 0, 1080, 1077, 1, 0, 0, 0, 1080, 1081, 1, 0, 0, 0, 1081, 1082, 1, 0, 0, 0, 1082, 1103, 3, 184, 92, 0, 1083, 1084, 3, 182, 91, 0, 1084, 1085, 5, 2, 0, 0, 1085, 1087, 1, 0, 0, 0, 1086, 1083, 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087, 1088, 1, 0, 0, 0, 1088, 1089, 3, 226, 113, 0, 1089, 1098, 5, 3, 0, 0, 1090, 1095, 3, 68, 34, 0, 1091, 1092, 5, 5, 0, 0, 1092, 1094, 3, 68, 34, 0, 1093, 1091, 1, 0, 0, 0, 1094, 1097, 1, 0, 0, 0, 1095, 1093, 1, 0, 0, 0, 1095, 1096, 1, 0, 0, 0, 1096, 1099, 1, 0, 0, 0, 1097, 1095, 1, 0, 0, 0, 1098, 1090, 1, 0, 0, 0, 1098, 1099, 1, 0, 0, 0, 1099, 1100, 1, 0, 0, 0, 1100, 1101, 5, 4, 0, 0, 1101, 1103, 1, 0, 0, 0, 1102, 1064, 1, 0, 0, 0, 1102, 1080, 1, 0, 0, 0, 1102, 1086, 1, 0, 0, 0, 1103, 1125, 1, 0, 0, 0, 1104, 1105, 10, 7, 0, 0, 1105, 1106, 5, 47, 0, 0, 1106, 1125, 3, 192, 96, 0, 1107, 1109, 10, 6, 0, 0, 1108, 1110, 5, 104, 0, 0, 1109, 1108, 1, 0, 0, 0, 1109, 1110, 1, 0, 0, 0, 1110, 1111, 1, 0, 0, 0, 1111, 1112, 7, 14, 0, 0, 1112, 1115, 3, 68, 34, 0, 1113, 1114, 5, 69, 0, 0, 1114, 1116, 3, 68, 34, 0, 1115, 1113, 1, 0, 0, 0, 1115, 1116, 1, 0, 0, 0, 1116, 1125, 1, 0, 0, 0, 1117, 1122, 10, 5, 0, 0, 1118, 1123, 5, 95, 0, 0, 1119, 1123, 5, 105, 0, 0, 1120, 1121, 5, 104, 0, 0, 1121, 1123, 5, 106, 0, 0, 1122, 1118, 1, 0, 0, 0, 1122, 1119, 1, 0, 0, 0, 1122, 1120, 1, 0, 0, 0, 1123, 1125, 1, 0, 0, 0, 1124, 1007, 1, 0, 0, 0, 1124, 1010, 1, 0, 0, 0, 1124, 1013, 1, 0, 0, 0, 1124, 1016, 1, 0, 0, 0, 1124, 1019, 1, 0, 0, 0, 1124, 1022, 1, 0, 0, 0, 1124, 1025, 1, 0, 0, 0, 1124, 1044, 1, 0, 0, 0, 1124, 1047, 1, 0, 0, 0, 1124, 1050, 1, 0, 0, 0, 1124, 1059, 1, 0, 0, 0, 1124, 1104, 1, 0, 0, 0, 1124, 1107, 1, 0, 0, 0, 1124, 1117, 1, 0, 0, 0, 1125, 1128, 1, 0, 0, 0, 1126, 1124, 1, 0, 0, 0, 1126, 1127, 1, 0, 0, 0, 1127, 69, 1, 0, 0, 0, 1128, 1126, 1, 0, 0, 0, 1129, 1130, 5, 117, 0, 0, 1130, 1135, 5, 3, 0, 0, 1131, 1136, 5, 83, 0, 0, 1132, 1133, 7, 15, 0, 0, 1133, 1134, 5, 5, 0, 0, 1134, 1136, 3, 168, 84, 0, 1135, 1131, 1, 0, 0, 0, 1135, 1132, 1, 0, 0, 0, 1136, 1137, 1, 0, 0, 0, 1137, 1138, 5, 4, 0, 0, 1138, 71, 1, 0, 0, 0, 1139, 1140, 7, 16, 0, 0, 1140, 73, 1, 0, 0, 0, 1141, 1143, 3, 50, 25, 0, 1142, 1141, 1, 0, 0, 0, 1142, 1143, 1, 0, 0, 0, 1143, 1149, 1, 0, 0, 0, 1144, 1150, 5, 90, 0, 0, 1145, 1150, 5, 124, 0, 0, 1146, 1147, 5, 90, 0, 0, 1147, 1148, 5, 110, 0, 0, 1148, 1150, 7, 8, 0, 0, 1149, 1144, 1, 0, 0, 0, 1149, 1145, 1, 0, 0, 0, 1149, 1146, 1, 0, 0, 0, 1150, 1151, 1, 0, 0, 0, 1151, 1155, 5, 93, 0, 0, 1152, 1153, 3, 182, 91, 0, 1153, 1154, 5, 2, 0, 0, 1154, 1156, 1, 0, 0, 0, 1155, 1152, 1, 0, 0, 0, 1155, 1156, 1, 0, 0, 0, 1156, 1157, 1, 0, 0, 0, 1157, 1160, 3, 184, 92, 0, 1158, 1159, 5, 35, 0, 0, 1159, 1161, 3, 208, 104, 0, 1160, 1158, 1, 0, 0, 0, 1160, 1161, 1, 0, 0, 0, 1161, 1173, 1, 0, 0, 0, 1162, 1163, 5, 3, 0, 0, 1163, 1168, 3, 190, 95, 0, 1164, 1165, 5, 5, 0, 0, 1165, 1167, 3, 190, 95, 0, 1166, 1164, 1, 0, 0, 0, 1167, 1170, 1, 0, 0, 0, 1168, 1166, 1, 0, 0, 0, 1168, 1169, 1, 0, 0, 0, 1169, 1171, 1, 0, 0, 0, 1170, 1168, 1, 0, 0, 0, 1171, 1172, 5, 4, 0, 0, 1172, 1174, 1, 0, 0, 0, 1173, 1162, 1, 0, 0, 0, 1173, 1174, 1, 0, 0, 0, 1174, 1204, 1, 0, 0, 0, 1175, 1176, 5, 147, 0, 0, 1176, 1177, 5, 3, 0, 0, 1177, 1182, 3, 68, 34, 0, 1178, 1179, 5, 5, 0, 0, 1179, 1181, 3, 68, 34, 0, 1180, 1178, 1, 0, 0, 0, 1181, 1184, 1, 0, 0, 0, 1182, 1180, 1, 0, 0, 0, 1182, 1183, 1, 0, 0, 0, 1183, 1185, 1, 0, 0, 0, 1184, 1182, 1, 0, 0, 0, 1185, 1200, 5, 4, 0, 0, 1186, 1187, 5, 5, 0, 0, 1187, 1188, 5, 3, 0, 0, 1188, 1193, 3, 68, 34, 0, 1189, 1190, 5, 5, 0, 0, 1190, 1192, 3, 68, 34, 0, 1191, 1189, 1, 0, 0, 0, 1192, 1195, 1, 0, 0, 0, 1193, 1191, 1, 0, 0, 0, 1193, 1194, 1, 0, 0, 0, 1194, 1196, 1, 0, 0, 0, 1195, 1193, 1, 0, 0, 0, 1196, 1197, 5, 4, 0, 0, 1197, 1199, 1, 0, 0, 0, 1198, 1186, 1, 0, 0, 0, 1199, 1202, 1, 0, 0, 0, 1200, 1198, 1, 0, 0, 0, 1200, 1201, 1, 0, 0, 0, 1201, 1205, 1, 0, 0, 0, 1202, 1200, 1, 0, 0, 0, 1203, 1205, 3, 84, 42, 0, 1204, 1175, 1, 0, 0, 0, 1204, 1203, 1, 0, 0, 0, 1205, 1207, 1, 0, 0, 0, 1206, 1208, 3, 76, 38, 0, 1207, 1206, 1, 0, 0, 0, 1207, 1208, 1, 0, 0, 0, 1208, 1210, 1, 0, 0, 0, 1209, 1211, 3, 58, 29, 0, 1210, 1209, 1, 0, 0, 0, 1210, 1211, 1, 0, 0, 0, 1211, 1215, 1, 0, 0, 0, 1212, 1213, 5, 58, 0, 0, 1213, 1215, 5, 147, 0, 0, 1214, 1142, 1, 0, 0, 0, 1214, 1212, 1, 0, 0, 0, 1215, 75, 1, 0, 0, 0, 1216, 1217, 5, 109, 0, 0, 1217, 1232, 5, 50, 0, 0, 1218, 1219, 5, 3, 0, 0, 1219, 1224, 3, 24, 12, 0, 1220, 1221, 5, 5, 0, 0, 1221, 1223, 3, 24, 12, 0, 1222, 1220, 1, 0, 0, 0, 1223, 1226, 1, 0, 0, 0, 1224, 1222, 1, 0, 0, 0, 1224, 1225, 1, 0, 0, 0, 1225, 1227, 1, 0, 0, 0, 1226, 1224, 1, 0, 0, 0, 1227, 1230, 5, 4, 0, 0, 1228, 1229, 5, 151, 0, 0, 1229, 1231, 3, 68, 34, 0, 1230, 1228, 1, 0, 0, 0, 1230, 1231, 1, 0, 0, 0, 1231, 1233, 1, 0, 0, 0, 1232, 1218, 1, 0, 0, 0, 1232, 1233, 1, 0, 0, 0, 1233, 1234, 1, 0, 0, 0, 1234, 1261, 5, 186, 0, 0, 1235, 1262, 5, 187, 0, 0, 1236, 1237, 5, 144, 0, 0, 1237, 1240, 5, 133, 0, 0, 1238, 1241, 3, 190, 95, 0, 1239, 1241, 3, 108, 54, 0, 1240, 1238, 1, 0, 0, 0, 1240, 1239, 1, 0, 0, 0, 1241, 1242, 1, 0, 0, 0, 1242, 1243, 5, 6, 0, 0, 1243, 1254, 3, 68, 34, 0, 1244, 1247, 5, 5, 0, 0, 1245, 1248, 3, 190, 95, 0, 1246, 1248, 3, 108, 54, 0, 1247, 1245, 1, 0, 0, 0, 1247, 1246, 1, 0, 0, 0, 1248, 1249, 1, 0, 0, 0, 1249, 1250, 5, 6, 0, 0, 1250, 1251, 3, 68, 34, 0, 1251, 1253, 1, 0, 0, 0, 1252, 1244, 1, 0, 0, 0, 1253, 1256, 1, 0, 0, 0, 1254, 1252, 1, 0, 0, 0, 1254, 1255, 1, 0, 0, 0, 1255, 1259, 1, 0, 0, 0, 1256, 1254, 1, 0, 0, 0, 1257, 1258, 5, 151, 0, 0, 1258, 1260, 3, 68, 34, 0, 1259, 1257, 1, 0, 0, 0, 1259, 1260, 1, 0, 0, 0, 1260, 1262, 1, 0, 0, 0, 1261, 1235, 1, 0, 0, 0, 1261, 1236, 1, 0, 0, 0, 1262, 77, 1, 0, 0, 0, 1263, 1267, 5, 114, 0, 0, 1264, 1265, 3, 182, 91, 0, 1265, 1266, 5, 2, 0, 0, 1266, 1268, 1, 0, 0, 0, 1267, 1264, 1, 0, 0, 0, 1267, 1268, 1, 0, 0, 0, 1268, 1269, 1, 0, 0, 0, 1269, 1276, 3, 204, 102, 0, 1270, 1271, 5, 6, 0, 0, 1271, 1277, 3, 80, 40, 0, 1272, 1273, 5, 3, 0, 0, 1273, 1274, 3, 80, 40, 0, 1274, 1275, 5, 4, 0, 0, 1275, 1277, 1, 0, 0, 0, 1276, 1270, 1, 0, 0, 0, 1276, 1272, 1, 0, 0, 0, 1276, 1277, 1, 0, 0, 0, 1277, 79, 1, 0, 0, 0, 1278, 1282, 3, 36, 18, 0, 1279, 1282, 3, 176, 88, 0, 1280, 1282, 5, 192, 0, 0, 1281, 1278, 1, 0, 0, 0, 1281, 1279, 1, 0, 0, 0, 1281, 1280, 1, 0, 0, 0, 1282, 81, 1, 0, 0, 0, 1283, 1294, 5, 121, 0, 0, 1284, 1295, 3, 192, 96, 0, 1285, 1286, 3, 182, 91, 0, 1286, 1287, 5, 2, 0, 0, 1287, 1289, 1, 0, 0, 0, 1288, 1285, 1, 0, 0, 0, 1288, 1289, 1, 0, 0, 0, 1289, 1292, 1, 0, 0, 0, 1290, 1293, 3, 184, 92, 0, 1291, 1293, 3, 196, 98, 0, 1292, 1290, 1, 0, 0, 0, 1292, 1291, 1, 0, 0, 0, 1293, 1295, 1, 0, 0, 0, 1294, 1284, 1, 0, 0, 0, 1294, 1288, 1, 0, 0, 0, 1294, 1295, 1, 0, 0, 0, 1295, 83, 1, 0, 0, 0, 1296, 1298, 3, 132, 66, 0, 1297, 1296, 1, 0, 0, 0, 1297, 1298, 1, 0, 0, 0, 1298, 1299, 1, 0, 0, 0, 1299, 1305, 3, 88, 44, 0, 1300, 1301, 3, 104, 52, 0, 1301, 1302, 3, 88, 44, 0, 1302, 1304, 1, 0, 0, 0, 1303, 1300, 1, 0, 0, 0, 1304, 1307, 1, 0, 0, 0, 1305, 1303, 1, 0, 0, 0, 1305, 1306, 1, 0, 0, 0, 1306, 1309, 1, 0, 0, 0, 1307, 1305, 1, 0, 0, 0, 1308, 1310, 3, 134, 67, 0, 1309, 1308, 1, 0, 0, 0, 1309, 1310, 1, 0, 0, 0, 1310, 1312, 1, 0, 0, 0, 1311, 1313, 3, 136, 68, 0, 1312, 1311, 1, 0, 0, 0, 1312, 1313, 1, 0, 0, 0, 1313, 85, 1, 0, 0, 0, 1314, 1321, 3, 96, 48, 0, 1315, 1316, 3, 100, 50, 0, 1316, 1317, 3, 96, 48, 0, 1317, 1318, 3, 102, 51, 0, 1318, 1320, 1, 0, 0, 0, 1319, 1315, 1, 0, 0, 0, 1320, 1323, 1, 0, 0, 0, 1321, 1319, 1, 0, 0, 0, 1321, 1322, 1, 0, 0, 0, 1322, 87, 1, 0, 0, 0, 1323, 1321, 1, 0, 0, 0, 1324, 1326, 5, 132, 0, 0, 1325, 1327, 7, 17, 0, 0, 1326, 1325, 1, 0, 0, 0, 1326, 1327, 1, 0, 0, 0, 1327, 1328, 1, 0, 0, 0, 1328, 1333, 3, 98, 49, 0, 1329, 1330, 5, 5, 0, 0, 1330, 1332, 3, 98, 49, 0, 1331, 1329, 1, 0, 0, 0, 1332, 1335, 1, 0, 0, 0, 1333, 1331, 1, 0, 0, 0, 1333, 1334, 1, 0, 0, 0, 1334, 1348, 1, 0, 0, 0, 1335, 1333, 1, 0, 0, 0, 1336, 1346, 5, 77, 0, 0, 1337, 1342, 3, 96, 48, 0, 1338, 1339, 5, 5, 0, 0, 1339, 1341, 3, 96, 48, 0, 1340, 1338, 1, 0, 0, 0, 1341, 1344, 1, 0, 0, 0, 1342, 1340, 1, 0, 0, 0, 1342, 1343, 1, 0, 0, 0, 1343, 1347, 1, 0, 0, 0, 1344, 1342, 1, 0, 0, 0, 1345, 1347, 3, 86, 43, 0, 1346, 1337, 1, 0, 0, 0, 1346, 1345, 1, 0, 0, 0, 1347, 1349, 1, 0, 0, 0, 1348, 1336, 1, 0, 0, 0, 1348, 1349, 1, 0, 0, 0, 1349, 1352, 1, 0, 0, 0, 1350, 1351, 5, 151, 0, 0, 1351, 1353, 3, 68, 34, 0, 1352, 1350, 1, 0, 0, 0, 1352, 1353, 1, 0, 0, 0, 1353, 1368, 1, 0, 0, 0, 1354, 1355, 5, 80, 0, 0, 1355, 1356, 5, 42, 0, 0, 1356, 1361, 3, 68, 34, 0, 1357, 1358, 5, 5, 0, 0, 1358, 1360, 3, 68, 34, 0, 1359, 1357, 1, 0, 0, 0, 1360, 1363, 1, 0, 0, 0, 1361, 1359, 1, 0, 0, 0, 1361, 1362, 1, 0, 0, 0, 1362, 1366, 1, 0, 0, 0, 1363, 1361, 1, 0, 0, 0, 1364, 1365, 5, 81, 0, 0, 1365, 1367, 3, 68, 34, 0, 1366, 1364, 1, 0, 0, 0, 1366, 1367, 1, 0, 0, 0, 1367, 1369, 1, 0, 0, 0, 1368, 1354, 1, 0, 0, 0, 1368, 1369, 1, 0, 0, 0, 1369, 1384, 1, 0, 0, 0, 1370, 1371, 5, 177, 0, 0, 1371, 1372, 3, 214, 107, 0, 1372, 1373, 5, 35, 0, 0, 1373, 1381, 3, 118, 59, 0, 1374, 1375, 5, 5, 0, 0, 1375, 1376, 3, 214, 107, 0, 1376, 1377, 5, 35, 0, 0, 1377, 1378, 3, 118, 59, 0, 1378, 1380, 1, 0, 0, 0, 1379, 1374, 1, 0, 0, 0, 1380, 1383, 1, 0, 0, 0, 1381, 1379, 1, 0, 0, 0, 1381, 1382, 1, 0, 0, 0, 1382, 1385, 1, 0, 0, 0, 1383, 1381, 1, 0, 0, 0, 1384, 1370, 1, 0, 0, 0, 1384, 1385, 1, 0, 0, 0, 1385, 1415, 1, 0, 0, 0, 1386, 1387, 5, 147, 0, 0, 1387, 1388, 5, 3, 0, 0, 1388, 1393, 3, 68, 34, 0, 1389, 1390, 5, 5, 0, 0, 1390, 1392, 3, 68, 34, 0, 1391, 1389, 1, 0, 0, 0, 1392, 1395, 1, 0, 0, 0, 1393, 1391, 1, 0, 0, 0, 1393, 1394, 1, 0, 0, 0, 1394, 1396, 1, 0, 0, 0, 1395, 1393, 1, 0, 0, 0, 1396, 1411, 5, 4, 0, 0, 1397, 1398, 5, 5, 0, 0, 1398, 1399, 5, 3, 0, 0, 1399, 1404, 3, 68, 34, 0, 1400, 1401, 5, 5, 0, 0, 1401, 1403, 3, 68, 34, 0, 1402, 1400, 1, 0, 0, 0, 1403, 1406, 1, 0, 0, 0, 1404, 1402, 1, 0, 0, 0, 1404, 1405, 1, 0, 0, 0, 1405, 1407, 1, 0, 0, 0, 1406, 1404, 1, 0, 0, 0, 1407, 1408, 5, 4, 0, 0, 1408, 1410, 1, 0, 0, 0, 1409, 1397, 1, 0, 0, 0, 1410, 1413, 1, 0, 0, 0, 1411, 1409, 1, 0, 0, 0, 1411, 1412, 1, 0, 0, 0, 1412, 1415, 1, 0, 0, 0, 1413, 1411, 1, 0, 0, 0, 1414, 1324, 1, 0, 0, 0, 1414, 1386, 1, 0, 0, 0, 1415, 89, 1, 0, 0, 0, 1416, 1417, 3, 84, 42, 0, 1417, 91, 1, 0, 0, 0, 1418, 1420, 3, 132, 66, 0, 1419, 1418, 1, 0, 0, 0, 1419, 1420, 1, 0, 0, 0, 1420, 1421, 1, 0, 0, 0, 1421, 1423, 3, 88, 44, 0, 1422, 1424, 3, 134, 67, 0, 1423, 1422, 1, 0, 0, 0, 1423, 1424, 1, 0, 0, 0, 1424, 1426, 1, 0, 0, 0, 1425, 1427, 3, 136, 68, 0, 1426, 1425, 1, 0, 0, 0, 1426, 1427, 1, 0, 0, 0, 1427, 93, 1, 0, 0, 0, 1428, 1430, 3, 132, 66, 0, 1429, 1428, 1, 0, 0, 0, 1429, 1430, 1, 0, 0, 0, 1430, 1431, 1, 0, 0, 0, 1431, 1441, 3, 88, 44, 0, 1432, 1434, 5, 142, 0, 0, 1433, 1435, 5, 31, 0, 0, 1434, 1433, 1, 0, 0, 0, 1434, 1435, 1, 0, 0, 0, 1435, 1439, 1, 0, 0, 0, 1436, 1439, 5, 92, 0, 0, 1437, 1439, 5, 70, 0, 0, 1438, 1432, 1, 0, 0, 0, 1438, 1436, 1, 0, 0, 0, 1438, 1437, 1, 0, 0, 0, 1439, 1440, 1, 0, 0, 0, 1440, 1442, 3, 88, 44, 0, 1441, 1438, 1, 0, 0, 0, 1442, 1443, 1, 0, 0, 0, 1443, 1441, 1, 0, 0, 0, 1443, 1444, 1, 0, 0, 0, 1444, 1446, 1, 0, 0, 0, 1445, 1447, 3, 134, 67, 0, 1446, 1445, 1, 0, 0, 0, 1446, 1447, 1, 0, 0, 0, 1447, 1449, 1, 0, 0, 0, 1448, 1450, 3, 136, 68, 0, 1449, 1448, 1, 0, 0, 0, 1449, 1450, 1, 0, 0, 0, 1450, 95, 1, 0, 0, 0, 1451, 1452, 3, 182, 91, 0, 1452, 1453, 5, 2, 0, 0, 1453, 1455, 1, 0, 0, 0, 1454, 1451, 1, 0, 0, 0, 1454, 1455, 1, 0, 0, 0, 1455, 1456, 1, 0, 0, 0, 1456, 1461, 3, 184, 92, 0, 1457, 1459, 5, 35, 0, 0, 1458, 1457, 1, 0, 0, 0, 1458, 1459, 1, 0, 0, 0, 1459, 1460, 1, 0, 0, 0, 1460, 1462, 3, 208, 104, 0, 1461, 1458, 1, 0, 0, 0, 1461, 1462, 1, 0, 0, 0, 1462, 1468, 1, 0, 0, 0, 1463, 1464, 5, 87, 0, 0, 1464, 1465, 5, 42, 0, 0, 1465, 1469, 3, 196, 98, 0, 1466, 1467, 5, 104, 0, 0, 1467, 1469, 5, 87, 0, 0, 1468, 1463, 1, 0, 0, 0, 1468, 1466, 1, 0, 0, 0, 1468, 1469, 1, 0, 0, 0, 1469, 1580, 1, 0, 0, 0, 1470, 1471, 3, 182, 91, 0, 1471, 1472, 5, 2, 0, 0, 1472, 1474, 1, 0, 0, 0, 1473, 1470, 1, 0, 0, 0, 1473, 1474, 1, 0, 0, 0, 1474, 1475, 1, 0, 0, 0, 1475, 1476, 3, 226, 113, 0, 1476, 1477, 5, 3, 0, 0, 1477, 1482, 3, 68, 34, 0, 1478, 1479, 5, 5, 0, 0, 1479, 1481, 3, 68, 34, 0, 1480, 1478, 1, 0, 0, 0, 1481, 1484, 1, 0, 0, 0, 1482, 1480, 1, 0, 0, 0, 1482, 1483, 1, 0, 0, 0, 1483, 1485, 1, 0, 0, 0, 1484, 1482, 1, 0, 0, 0, 1485, 1490, 5, 4, 0, 0, 1486, 1488, 5, 35, 0, 0, 1487, 1486, 1, 0, 0, 0, 1487, 1488, 1, 0, 0, 0, 1488, 1489, 1, 0, 0, 0, 1489, 1491, 3, 208, 104, 0, 1490, 1487, 1, 0, 0, 0, 1490, 1491, 1, 0, 0, 0, 1491, 1580, 1, 0, 0, 0, 1492, 1502, 5, 3, 0, 0, 1493, 1498, 3, 96, 48, 0, 1494, 1495, 5, 5, 0, 0, 1495, 1497, 3, 96, 48, 0, 1496, 1494, 1, 0, 0, 0, 1497, 1500, 1, 0, 0, 0, 1498, 1496, 1, 0, 0, 0, 1498, 1499, 1, 0, 0, 0, 1499, 1503, 1, 0, 0, 0, 1500, 1498, 1, 0, 0, 0, 1501, 1503, 3, 86, 43, 0, 1502, 1493, 1, 0, 0, 0, 1502, 1501, 1, 0, 0, 0, 1503, 1504, 1, 0, 0, 0, 1504, 1505, 5, 4, 0, 0, 1505, 1580, 1, 0, 0, 0, 1506, 1507, 5, 3, 0, 0, 1507, 1508, 3, 84, 42, 0, 1508, 1513, 5, 4, 0, 0, 1509, 1511, 5, 35, 0, 0, 1510, 1509, 1, 0, 0, 0, 1510, 1511, 1, 0, 0, 0, 1511, 1512, 1, 0, 0, 0, 1512, 1514, 3, 208, 104, 0, 1513, 1510, 1, 0, 0, 0, 1513, 1514, 1, 0, 0, 0, 1514, 1580, 1, 0, 0, 0, 1515, 1516, 3, 182, 91, 0, 1516, 1517, 5, 2, 0, 0, 1517, 1519, 1, 0, 0, 0, 1518, 1515, 1, 0, 0, 0, 1518, 1519, 1, 0, 0, 0, 1519, 1520, 1, 0, 0, 0, 1520, 1525, 3, 184, 92, 0, 1521, 1523, 5, 35, 0, 0, 1522, 1521, 1, 0, 0, 0, 1522, 1523, 1, 0, 0, 0, 1523, 1524, 1, 0, 0, 0, 1524, 1526, 3, 210, 105, 0, 1525, 1522, 1, 0, 0, 0, 1525, 1526, 1, 0, 0, 0, 1526, 1532, 1, 0, 0, 0, 1527, 1528, 5, 87, 0, 0, 1528, 1529, 5, 42, 0, 0, 1529, 1533, 3, 196, 98, 0, 1530, 1531, 5, 104, 0, 0, 1531, 1533, 5, 87, 0, 0, 1532, 1527, 1, 0, 0, 0, 1532, 1530, 1, 0, 0, 0, 1532, 1533, 1, 0, 0, 0, 1533, 1580, 1, 0, 0, 0, 1534, 1535, 3, 182, 91, 0, 1535, 1536, 5, 2, 0, 0, 1536, 1538, 1, 0, 0, 0, 1537, 1534, 1, 0, 0, 0, 1537, 1538, 1, 0, 0, 0, 1538, 1539, 1, 0, 0, 0, 1539, 1540, 3, 226, 113, 0, 1540, 1541, 5, 3, 0, 0, 1541, 1546, 3, 68, 34, 0, 1542, 1543, 5, 5, 0, 0, 1543, 1545, 3, 68, 34, 0, 1544, 1542, 1, 0, 0, 0, 1545, 1548, 1, 0, 0, 0, 1546, 1544, 1, 0, 0, 0, 1546, 1547, 1, 0, 0, 0, 1547, 1549, 1, 0, 0, 0, 1548, 1546, 1, 0, 0, 0, 1549, 1554, 5, 4, 0, 0, 1550, 1552, 5, 35, 0, 0, 1551, 1550, 1, 0, 0, 0, 1551, 1552, 1, 0, 0, 0, 1552, 1553, 1, 0, 0, 0, 1553, 1555, 3, 210, 105, 0, 1554, 1551, 1, 0, 0, 0, 1554, 1555, 1, 0, 0, 0, 1555, 1580, 1, 0, 0, 0, 1556, 1566, 5, 3, 0, 0, 1557, 1562, 3, 96, 48, 0, 1558, 1559, 5, 5, 0, 0, 1559, 1561, 3, 96, 48, 0, 1560, 1558, 1, 0, 0, 0, 1561, 1564, 1, 0, 0, 0, 1562, 1560, 1, 0, 0, 0, 1562, 1563, 1, 0, 0, 0, 1563, 1567, 1, 0, 0, 0, 1564, 1562, 1, 0, 0, 0, 1565, 1567, 3, 86, 43, 0, 1566, 1557, 1, 0, 0, 0, 1566, 1565, 1, 0, 0, 0, 1567, 1568, 1, 0, 0, 0, 1568, 1569, 5, 4, 0, 0, 1569, 1580, 1, 0, 0, 0, 1570, 1571, 5, 3, 0, 0, 1571, 1572, 3, 84, 42, 0, 1572, 1577, 5, 4, 0, 0, 1573, 1575, 5, 35, 0, 0, 1574, 1573, 1, 0, 0, 0, 1574, 1575, 1, 0, 0, 0, 1575, 1576, 1, 0, 0, 0, 1576, 1578, 3, 210, 105, 0, 1577, 1574, 1, 0, 0, 0, 1577, 1578, 1, 0, 0, 0, 1578, 1580, 1, 0, 0, 0, 1579, 1454, 1, 0, 0, 0, 1579, 1473, 1, 0, 0, 0, 1579, 1492, 1, 0, 0, 0, 1579, 1506, 1, 0, 0, 0, 1579, 1518, 1, 0, 0, 0, 1579, 1537, 1, 0, 0, 0, 1579, 1556, 1, 0, 0, 0, 1579, 1570, 1, 0, 0, 0, 1580, 97, 1, 0, 0, 0, 1581, 1594, 5, 7, 0, 0, 1582, 1583, 3, 184, 92, 0, 1583, 1584, 5, 2, 0, 0, 1584, 1585, 5, 7, 0, 0, 1585, 1594, 1, 0, 0, 0, 1586, 1591, 3, 68, 34, 0, 1587, 1589, 5, 35, 0, 0, 1588, 1587, 1, 0, 0, 0, 1588, 1589, 1, 0, 0, 0, 1589, 1590, 1, 0, 0, 0, 1590, 1592, 3, 172, 86, 0, 1591, 1588, 1, 0, 0, 0, 1591, 1592, 1, 0, 0, 0, 1592, 1594, 1, 0, 0, 0, 1593, 1581, 1, 0, 0, 0, 1593, 1582, 1, 0, 0, 0, 1593, 1586, 1, 0, 0, 0, 1594, 99, 1, 0, 0, 0, 1595, 1610, 5, 5, 0, 0, 1596, 1598, 5, 102, 0, 0, 1597, 1596, 1, 0, 0, 0, 1597, 1598, 1, 0, 0, 0, 1598, 1604, 1, 0, 0, 0, 1599, 1601, 7, 18, 0, 0, 1600, 1602, 5, 112, 0, 0, 1601, 1600, 1, 0, 0, 0, 1601, 1602, 1, 0, 0, 0, 1602, 1605, 1, 0, 0, 0, 1603, 1605, 5, 89, 0, 0, 1604, 1599, 1, 0, 0, 0, 1604, 1603, 1, 0, 0, 0, 1604, 1605, 1, 0, 0, 0, 1605, 1606, 1, 0, 0, 0, 1606, 1610, 5, 96, 0, 0, 1607, 1608, 5, 53, 0, 0, 1608, 1610, 5, 96, 0, 0, 1609, 1595, 1, 0, 0, 0, 1609, 1597, 1, 0, 0, 0, 1609, 1607, 1, 0, 0, 0, 1610, 101, 1, 0, 0, 0, 1611, 1612, 5, 109, 0, 0, 1612, 1626, 3, 68, 34, 0, 1613, 1614, 5, 145, 0, 0, 1614, 1615, 5, 3, 0, 0, 1615, 1620, 3, 190, 95, 0, 1616, 1617, 5, 5, 0, 0, 1617, 1619, 3, 190, 95, 0, 1618, 1616, 1, 0, 0, 0, 1619, 1622, 1, 0, 0, 0, 1620, 1618, 1, 0, 0, 0, 1620, 1621, 1, 0, 0, 0, 1621, 1623, 1, 0, 0, 0, 1622, 1620, 1, 0, 0, 0, 1623, 1624, 5, 4, 0, 0, 1624, 1626, 1, 0, 0, 0, 1625, 1611, 1, 0, 0, 0, 1625, 1613, 1, 0, 0, 0, 1625, 1626, 1, 0, 0, 0, 1626, 103, 1, 0, 0, 0, 1627, 1629, 5, 142, 0, 0, 1628, 1630, 5, 31, 0, 0, 1629, 1628, 1, 0, 0, 0, 1629, 1630, 1, 0, 0, 0, 1630, 1634, 1, 0, 0, 0, 1631, 1634, 5, 92, 0, 0, 1632, 1634, 5, 70, 0, 0, 1633, 1627, 1, 0, 0, 0, 1633, 1631, 1, 0, 0, 0, 1633, 1632, 1, 0, 0, 0, 1634, 105, 1, 0, 0, 0, 1635, 1637, 3, 50, 25, 0, 1636, 1635, 1, 0, 0, 0, 1636, 1637, 1, 0, 0, 0, 1637, 1638, 1, 0, 0, 0, 1638, 1641, 5, 144, 0, 0, 1639, 1640, 5, 110, 0, 0, 1640, 1642, 7, 8, 0, 0, 1641, 1639, 1, 0, 0, 0, 1641, 1642, 1, 0, 0, 0, 1642, 1643, 1, 0, 0, 0, 1643, 1644, 3, 112, 56, 0, 1644, 1647, 5, 133, 0, 0, 1645, 1648, 3, 190, 95, 0, 1646, 1648, 3, 108, 54, 0, 1647, 1645, 1, 0, 0, 0, 1647, 1646, 1, 0, 0, 0, 1648, 1649, 1, 0, 0, 0, 1649, 1650, 5, 6, 0, 0, 1650, 1661, 3, 68, 34, 0, 1651, 1654, 5, 5, 0, 0, 1652, 1655, 3, 190, 95, 0, 1653, 1655, 3, 108, 54, 0, 1654, 1652, 1, 0, 0, 0, 1654, 1653, 1, 0, 0, 0, 1655, 1656, 1, 0, 0, 0, 1656, 1657, 5, 6, 0, 0, 1657, 1658, 3, 68, 34, 0, 1658, 1660, 1, 0, 0, 0, 1659, 1651, 1, 0, 0, 0, 1660, 1663, 1, 0, 0, 0, 1661, 1659, 1, 0, 0, 0, 1661, 1662, 1, 0, 0, 0, 1662, 1666, 1, 0, 0, 0, 1663, 1661, 1, 0, 0, 0, 1664, 1665, 5, 151, 0, 0, 1665, 1667, 3, 68, 34, 0, 1666, 1664, 1, 0, 0, 0, 1666, 1667, 1, 0, 0, 0, 1667, 1669, 1, 0, 0, 0, 1668, 1670, 3, 58, 29, 0, 1669, 1668, 1, 0, 0, 0, 1669, 1670, 1, 0, 0, 0, 1670, 107, 1, 0, 0, 0, 1671, 1672, 5, 3, 0, 0, 1672, 1677, 3, 190, 95, 0, 1673, 1674, 5, 5, 0, 0, 1674, 1676, 3, 190, 95, 0, 1675, 1673, 1, 0, 0, 0, 1676, 1679, 1, 0, 0, 0, 1677, 1675, 1, 0, 0, 0, 1677, 1678, 1, 0, 0, 0, 1678, 1680, 1, 0, 0, 0, 1679, 1677, 1, 0, 0, 0, 1680, 1681, 5, 4, 0, 0, 1681, 109, 1, 0, 0, 0, 1682, 1684, 3, 50, 25, 0, 1683, 1682, 1, 0, 0, 0, 1683, 1684, 1, 0, 0, 0, 1684, 1685, 1, 0, 0, 0, 1685, 1688, 5, 144, 0, 0, 1686, 1687, 5, 110, 0, 0, 1687, 1689, 7, 8, 0, 0, 1688, 1686, 1, 0, 0, 0, 1688, 1689, 1, 0, 0, 0, 1689, 1690, 1, 0, 0, 0, 1690, 1691, 3, 112, 56, 0, 1691, 1694, 5, 133, 0, 0, 1692, 1695, 3, 190, 95, 0, 1693, 1695, 3, 108, 54, 0, 1694, 1692, 1, 0, 0, 0, 1694, 1693, 1, 0, 0, 0, 1695, 1696, 1, 0, 0, 0, 1696, 1697, 5, 6, 0, 0, 1697, 1708, 3, 68, 34, 0, 1698, 1701, 5, 5, 0, 0, 1699, 1702, 3, 190, 95, 0, 1700, 1702, 3, 108, 54, 0, 1701, 1699, 1, 0, 0, 0, 1701, 1700, 1, 0, 0, 0, 1702, 1703, 1, 0, 0, 0, 1703, 1704, 5, 6, 0, 0, 1704, 1705, 3, 68, 34, 0, 1705, 1707, 1, 0, 0, 0, 1706, 1698, 1, 0, 0, 0, 1707, 1710, 1, 0, 0, 0, 1708, 1706, 1, 0, 0, 0, 1708, 1709, 1, 0, 0, 0, 1709, 1713, 1, 0, 0, 0, 1710, 1708, 1, 0, 0, 0, 1711, 1712, 5, 151, 0, 0, 1712, 1714, 3, 68, 34, 0, 1713, 1711, 1, 0, 0, 0, 1713, 1714, 1, 0, 0, 0, 1714, 1719, 1, 0, 0, 0, 1715, 1717, 3, 134, 67, 0, 1716, 1715, 1, 0, 0, 0, 1716, 1717, 1, 0, 0, 0, 1717, 1718, 1, 0, 0, 0, 1718, 1720, 3, 136, 68, 0, 1719, 1716, 1, 0, 0, 0, 1719, 1720, 1, 0, 0, 0, 1720, 111, 1, 0, 0, 0, 1721, 1722, 3, 182, 91, 0, 1722, 1723, 5, 2, 0, 0, 1723, 1725, 1, 0, 0, 0, 1724, 1721, 1, 0, 0, 0, 1724, 1725, 1, 0, 0, 0, 1725, 1726, 1, 0, 0, 0, 1726, 1729, 3, 184, 92, 0, 1727, 1728, 5, 35, 0, 0, 1728, 1730, 3, 216, 108, 0, 1729, 1727, 1, 0, 0, 0, 1729, 1730, 1, 0, 0, 0, 1730, 1736, 1, 0, 0, 0, 1731, 1732, 5, 87, 0, 0, 1732, 1733, 5, 42, 0, 0, 1733, 1737, 3, 196, 98, 0, 1734, 1735, 5, 104, 0, 0, 1735, 1737, 5, 87, 0, 0, 1736, 1731, 1, 0, 0, 0, 1736, 1734, 1, 0, 0, 0, 1736, 1737, 1, 0, 0, 0, 1737, 113, 1, 0, 0, 0, 1738, 1740, 5, 146, 0, 0, 1739, 1741, 3, 182, 91, 0, 1740, 1739, 1, 0, 0, 0, 1740, 1741, 1, 0, 0, 0, 1741, 1744, 1, 0, 0, 0, 1742, 1743, 5, 93, 0, 0, 1743, 1745, 3, 218, 109, 0, 1744, 1742, 1, 0, 0, 0, 1744, 1745, 1, 0, 0, 0, 1745, 115, 1, 0, 0, 0, 1746, 1747, 5, 181, 0, 0, 1747, 1748, 5, 3, 0, 0, 1748, 1749, 5, 151, 0, 0, 1749, 1750, 3, 68, 34, 0, 1750, 1751, 5, 4, 0, 0, 1751, 117, 1, 0, 0, 0, 1752, 1754, 5, 3, 0, 0, 1753, 1755, 3, 220, 110, 0, 1754, 1753, 1, 0, 0, 0, 1754, 1755, 1, 0, 0, 0, 1755, 1766, 1, 0, 0, 0, 1756, 1757, 5, 156, 0, 0, 1757, 1758, 5, 42, 0, 0, 1758, 1763, 3, 68, 34, 0, 1759, 1760, 5, 5, 0, 0, 1760, 1762, 3, 68, 34, 0, 1761, 1759, 1, 0, 0, 0, 1762, 1765, 1, 0, 0, 0, 1763, 1761, 1, 0, 0, 0, 1763, 1764, 1, 0, 0, 0, 1764, 1767, 1, 0, 0, 0, 1765, 1763, 1, 0, 0, 0, 1766, 1756, 1, 0, 0, 0, 1766, 1767, 1, 0, 0, 0, 1767, 1768, 1, 0, 0, 0, 1768, 1769, 5, 111, 0, 0, 1769, 1770, 5, 42, 0, 0, 1770, 1775, 3, 138, 69, 0, 1771, 1772, 5, 5, 0, 0, 1772, 1774, 3, 138, 69, 0, 1773, 1771, 1, 0, 0, 0, 1774, 1777, 1, 0, 0, 0, 1775, 1773, 1, 0, 0, 0, 1775, 1776, 1, 0, 0, 0, 1776, 1779, 1, 0, 0, 0, 1777, 1775, 1, 0, 0, 0, 1778, 1780, 3, 122, 61, 0, 1779, 1778, 1, 0, 0, 0, 1779, 1780, 1, 0, 0, 0, 1780, 1781, 1, 0, 0, 0, 1781, 1782, 5, 4, 0, 0, 1782, 119, 1, 0, 0, 0, 1783, 1817, 5, 155, 0, 0, 1784, 1818, 3, 214, 107, 0, 1785, 1787, 5, 3, 0, 0, 1786, 1788, 3, 220, 110, 0, 1787, 1786, 1, 0, 0, 0, 1787, 1788, 1, 0, 0, 0, 1788, 1799, 1, 0, 0, 0, 1789, 1790, 5, 156, 0, 0, 1790, 1791, 5, 42, 0, 0, 1791, 1796, 3, 68, 34, 0, 1792, 1793, 5, 5, 0, 0, 1793, 1795, 3, 68, 34, 0, 1794, 1792, 1, 0, 0, 0, 1795, 1798, 1, 0, 0, 0, 1796, 1794, 1, 0, 0, 0, 1796, 1797, 1, 0, 0, 0, 1797, 1800, 1, 0, 0, 0, 1798, 1796, 1, 0, 0, 0, 1799, 1789, 1, 0, 0, 0, 1799, 1800, 1, 0, 0, 0, 1800, 1811, 1, 0, 0, 0, 1801, 1802, 5, 111, 0, 0, 1802, 1803, 5, 42, 0, 0, 1803, 1808, 3, 138, 69, 0, 1804, 1805, 5, 5, 0, 0, 1805, 1807, 3, 138, 69, 0, 1806, 1804, 1, 0, 0, 0, 1807, 1810, 1, 0, 0, 0, 1808, 1806, 1, 0, 0, 0, 1808, 1809, 1, 0, 0, 0, 1809, 1812, 1, 0, 0, 0, 1810, 1808, 1, 0, 0, 0, 1811, 1801, 1, 0, 0, 0, 1811, 1812, 1, 0, 0, 0, 1812, 1814, 1, 0, 0, 0, 1813, 1815, 3, 122, 61, 0, 1814, 1813, 1, 0, 0, 0, 1814, 1815, 1, 0, 0, 0, 1815, 1816, 1, 0, 0, 0, 1816, 1818, 5, 4, 0, 0, 1817, 1784, 1, 0, 0, 0, 1817, 1785, 1, 0, 0, 0, 1818, 121, 1, 0, 0, 0, 1819, 1827, 3, 124, 62, 0, 1820, 1821, 5, 183, 0, 0, 1821, 1822, 5, 103, 0, 0, 1822, 1828, 5, 185, 0, 0, 1823, 1824, 5, 160, 0, 0, 1824, 1828, 5, 129, 0, 0, 1825, 1828, 5, 80, 0, 0, 1826, 1828, 5, 184, 0, 0, 1827, 1820, 1, 0, 0, 0, 1827, 1823, 1, 0, 0, 0, 1827, 1825, 1, 0, 0, 0, 1827, 1826, 1, 0, 0, 0, 1827, 1828, 1, 0, 0, 0, 1828, 123, 1, 0, 0, 0, 1829, 1836, 7, 19, 0, 0, 1830, 1837, 3, 146, 73, 0, 1831, 1832, 5, 41, 0, 0, 1832, 1833, 3, 142, 71, 0, 1833, 1834, 5, 34, 0, 0, 1834, 1835, 3, 144, 72, 0, 1835, 1837, 1, 0, 0, 0, 1836, 1830, 1, 0, 0, 0, 1836, 1831, 1, 0, 0, 0, 1837, 125, 1, 0, 0, 0, 1838, 1839, 3, 222, 111, 0, 1839, 1849, 5, 3, 0, 0, 1840, 1845, 3, 68, 34, 0, 1841, 1842, 5, 5, 0, 0, 1842, 1844, 3, 68, 34, 0, 1843, 1841, 1, 0, 0, 0, 1844, 1847, 1, 0, 0, 0, 1845, 1843, 1, 0, 0, 0, 1845, 1846, 1, 0, 0, 0, 1846, 1850, 1, 0, 0, 0, 1847, 1845, 1, 0, 0, 0, 1848, 1850, 5, 7, 0, 0, 1849, 1840, 1, 0, 0, 0, 1849, 1848, 1, 0, 0, 0, 1850, 1851, 1, 0, 0, 0, 1851, 1852, 5, 4, 0, 0, 1852, 127, 1, 0, 0, 0, 1853, 1854, 3, 224, 112, 0, 1854, 1867, 5, 3, 0, 0, 1855, 1857, 5, 64, 0, 0, 1856, 1855, 1, 0, 0, 0, 1856, 1857, 1, 0, 0, 0, 1857, 1858, 1, 0, 0, 0, 1858, 1863, 3, 68, 34, 0, 1859, 1860, 5, 5, 0, 0, 1860, 1862, 3, 68, 34, 0, 1861, 1859, 1, 0, 0, 0, 1862, 1865, 1, 0, 0, 0, 1863, 1861, 1, 0, 0, 0, 1863, 1864, 1, 0, 0, 0, 1864, 1868, 1, 0, 0, 0, 1865, 1863, 1, 0, 0, 0, 1866, 1868, 5, 7, 0, 0, 1867, 1856, 1, 0, 0, 0, 1867, 1866, 1, 0, 0, 0, 1867, 1868, 1, 0, 0, 0, 1868, 1869, 1, 0, 0, 0, 1869, 1871, 5, 4, 0, 0, 1870, 1872, 3, 116, 58, 0, 1871, 1870, 1, 0, 0, 0, 1871, 1872, 1, 0, 0, 0, 1872, 129, 1, 0, 0, 0, 1873, 1874, 3, 148, 74, 0, 1874, 1884, 5, 3, 0, 0, 1875, 1880, 3, 68, 34, 0, 1876, 1877, 5, 5, 0, 0, 1877, 1879, 3, 68, 34, 0, 1878, 1876, 1, 0, 0, 0, 1879, 1882, 1, 0, 0, 0, 1880, 1878, 1, 0, 0, 0, 1880, 1881, 1, 0, 0, 0, 1881, 1885, 1, 0, 0, 0, 1882, 1880, 1, 0, 0, 0, 1883, 1885, 5, 7, 0, 0, 1884, 1875, 1, 0, 0, 0, 1884, 1883, 1, 0, 0, 0, 1884, 1885, 1, 0, 0, 0, 1885, 1886, 1, 0, 0, 0, 1886, 1888, 5, 4, 0, 0, 1887, 1889, 3, 116, 58, 0, 1888, 1887, 1, 0, 0, 0, 1888, 1889, 1, 0, 0, 0, 1889, 1890, 1, 0, 0, 0, 1890, 1893, 5, 155, 0, 0, 1891, 1894, 3, 118, 59, 0, 1892, 1894, 3, 214, 107, 0, 1893, 1891, 1, 0, 0, 0, 1893, 1892, 1, 0, 0, 0, 1894, 131, 1, 0, 0, 0, 1895, 1897, 5, 152, 0, 0, 1896, 1898, 5, 118, 0, 0, 1897, 1896, 1, 0, 0, 0, 1897, 1898, 1, 0, 0, 0, 1898, 1899, 1, 0, 0, 0, 1899, 1904, 3, 56, 28, 0, 1900, 1901, 5, 5, 0, 0, 1901, 1903, 3, 56, 28, 0, 1902, 1900, 1, 0, 0, 0, 1903, 1906, 1, 0, 0, 0, 1904, 1902, 1, 0, 0, 0, 1904, 1905, 1, 0, 0, 0, 1905, 133, 1, 0, 0, 0, 1906, 1904, 1, 0, 0, 0, 1907, 1908, 5, 111, 0, 0, 1908, 1909, 5, 42, 0, 0, 1909, 1914, 3, 138, 69, 0, 1910, 1911, 5, 5, 0, 0, 1911, 1913, 3, 138, 69, 0, 1912, 1910, 1, 0, 0, 0, 1913, 1916, 1, 0, 0, 0, 1914, 1912, 1, 0, 0, 0, 1914, 1915, 1, 0, 0, 0, 1915, 135, 1, 0, 0, 0, 1916, 1914, 1, 0, 0, 0, 1917, 1918, 5, 100, 0, 0, 1918, 1921, 3, 68, 34, 0, 1919, 1920, 7, 20, 0, 0, 1920, 1922, 3, 68, 34, 0, 1921, 1919, 1, 0, 0, 0, 1921, 1922, 1, 0, 0, 0, 1922, 137, 1, 0, 0, 0, 1923, 1926, 3, 68, 34, 0, 1924, 1925, 5, 47, 0, 0, 1925, 1927, 3, 192, 96, 0, 1926, 1924, 1, 0, 0, 0, 1926, 1927, 1, 0, 0, 0, 1927, 1929, 1, 0, 0, 0, 1928, 1930, 3, 140, 70, 0, 1929, 1928, 1, 0, 0, 0, 1929, 1930, 1, 0, 0, 0, 1930, 1933, 1, 0, 0, 0, 1931, 1932, 5, 178, 0, 0, 1932, 1934, 7, 21, 0, 0, 1933, 1931, 1, 0, 0, 0, 1933, 1934, 1, 0, 0, 0, 1934, 139, 1, 0, 0, 0, 1935, 1936, 7, 22, 0, 0, 1936, 141, 1, 0, 0, 0, 1937, 1938, 3, 68, 34, 0, 1938, 1939, 5, 158, 0, 0, 1939, 1948, 1, 0, 0, 0, 1940, 1941, 3, 68, 34, 0, 1941, 1942, 5, 161, 0, 0, 1942, 1948, 1, 0, 0, 0, 1943, 1944, 5, 160, 0, 0, 1944, 1948, 5, 129, 0, 0, 1945, 1946, 5, 159, 0, 0, 1946, 1948, 5, 158, 0, 0, 1947, 1937, 1, 0, 0, 0, 1947, 1940, 1, 0, 0, 0, 1947, 1943, 1, 0, 0, 0, 1947, 1945, 1, 0, 0, 0, 1948, 143, 1, 0, 0, 0, 1949, 1950, 3, 68, 34, 0, 1950, 1951, 5, 158, 0, 0, 1951, 1960, 1, 0, 0, 0, 1952, 1953, 3, 68, 34, 0, 1953, 1954, 5, 161, 0, 0, 1954, 1960, 1, 0, 0, 0, 1955, 1956, 5, 160, 0, 0, 1956, 1960, 5, 129, 0, 0, 1957, 1958, 5, 159, 0, 0, 1958, 1960, 5, 161, 0, 0, 1959, 1949, 1, 0, 0, 0, 1959, 1952, 1, 0, 0, 0, 1959, 1955, 1, 0, 0, 0, 1959, 1957, 1, 0, 0, 0, 1960, 145, 1, 0, 0, 0, 1961, 1962, 3, 68, 34, 0, 1962, 1963, 5, 158, 0, 0, 1963, 1969, 1, 0, 0, 0, 1964, 1965, 5, 159, 0, 0, 1965, 1969, 5, 158, 0, 0, 1966, 1967, 5, 160, 0, 0, 1967, 1969, 5, 129, 0, 0, 1968, 1961, 1, 0, 0, 0, 1968, 1964, 1, 0, 0, 0, 1968, 1966, 1, 0, 0, 0, 1969, 147, 1, 0, 0, 0, 1970, 1971, 7, 23, 0, 0, 1971, 1972, 5, 3, 0, 0, 1972, 1973, 3, 68, 34, 0, 1973, 1974, 5, 4, 0, 0, 1974, 1975, 5, 155, 0, 0, 1975, 1977, 5, 3, 0, 0, 1976, 1978, 3, 154, 77, 0, 1977, 1976, 1, 0, 0, 0, 1977, 1978, 1, 0, 0, 0, 1978, 1979, 1, 0, 0, 0, 1979, 1981, 3, 158, 79, 0, 1980, 1982, 3, 124, 62, 0, 1981, 1980, 1, 0, 0, 0, 1981, 1982, 1, 0, 0, 0, 1982, 1983, 1, 0, 0, 0, 1983, 1984, 5, 4, 0, 0, 1984, 2056, 1, 0, 0, 0, 1985, 1986, 7, 24, 0, 0, 1986, 1987, 5, 3, 0, 0, 1987, 1988, 5, 4, 0, 0, 1988, 1989, 5, 155, 0, 0, 1989, 1991, 5, 3, 0, 0, 1990, 1992, 3, 154, 77, 0, 1991, 1990, 1, 0, 0, 0, 1991, 1992, 1, 0, 0, 0, 1992, 1994, 1, 0, 0, 0, 1993, 1995, 3, 156, 78, 0, 1994, 1993, 1, 0, 0, 0, 1994, 1995, 1, 0, 0, 0, 1995, 1996, 1, 0, 0, 0, 1996, 2056, 5, 4, 0, 0, 1997, 1998, 7, 25, 0, 0, 1998, 1999, 5, 3, 0, 0, 1999, 2000, 5, 4, 0, 0, 2000, 2001, 5, 155, 0, 0, 2001, 2003, 5, 3, 0, 0, 2002, 2004, 3, 154, 77, 0, 2003, 2002, 1, 0, 0, 0, 2003, 2004, 1, 0, 0, 0, 2004, 2005, 1, 0, 0, 0, 2005, 2006, 3, 158, 79, 0, 2006, 2007, 5, 4, 0, 0, 2007, 2056, 1, 0, 0, 0, 2008, 2009, 7, 26, 0, 0, 2009, 2010, 5, 3, 0, 0, 2010, 2012, 3, 68, 34, 0, 2011, 2013, 3, 150, 75, 0, 2012, 2011, 1, 0, 0, 0, 2012, 2013, 1, 0, 0, 0, 2013, 2015, 1, 0, 0, 0, 2014, 2016, 3, 152, 76, 0, 2015, 2014, 1, 0, 0, 0, 2015, 2016, 1, 0, 0, 0, 2016, 2017, 1, 0, 0, 0, 2017, 2018, 5, 4, 0, 0, 2018, 2019, 5, 155, 0, 0, 2019, 2021, 5, 3, 0, 0, 2020, 2022, 3, 154, 77, 0, 2021, 2020, 1, 0, 0, 0, 2021, 2022, 1, 0, 0, 0, 2022, 2023, 1, 0, 0, 0, 2023, 2024, 3, 158, 79, 0, 2024, 2025, 5, 4, 0, 0, 2025, 2056, 1, 0, 0, 0, 2026, 2027, 5, 167, 0, 0, 2027, 2028, 5, 3, 0, 0, 2028, 2029, 3, 68, 34, 0, 2029, 2030, 5, 5, 0, 0, 2030, 2031, 3, 36, 18, 0, 2031, 2032, 5, 4, 0, 0, 2032, 2033, 5, 155, 0, 0, 2033, 2035, 5, 3, 0, 0, 2034, 2036, 3, 154, 77, 0, 2035, 2034, 1, 0, 0, 0, 2035, 2036, 1, 0, 0, 0, 2036, 2037, 1, 0, 0, 0, 2037, 2039, 3, 158, 79, 0, 2038, 2040, 3, 124, 62, 0, 2039, 2038, 1, 0, 0, 0, 2039, 2040, 1, 0, 0, 0, 2040, 2041, 1, 0, 0, 0, 2041, 2042, 5, 4, 0, 0, 2042, 2056, 1, 0, 0, 0, 2043, 2044, 5, 168, 0, 0, 2044, 2045, 5, 3, 0, 0, 2045, 2046, 3, 68, 34, 0, 2046, 2047, 5, 4, 0, 0, 2047, 2048, 5, 155, 0, 0, 2048, 2050, 5, 3, 0, 0, 2049, 2051, 3, 154, 77, 0, 2050, 2049, 1, 0, 0, 0, 2050, 2051, 1, 0, 0, 0, 2051, 2052, 1, 0, 0, 0, 2052, 2053, 3, 158, 79, 0, 2053, 2054, 5, 4, 0, 0, 2054, 2056, 1, 0, 0, 0, 2055, 1970, 1, 0, 0, 0, 2055, 1985, 1, 0, 0, 0, 2055, 1997, 1, 0, 0, 0, 2055, 2008, 1, 0, 0, 0, 2055, 2026, 1, 0, 0, 0, 2055, 2043, 1, 0, 0, 0, 2056, 149, 1, 0, 0, 0, 2057, 2058, 5, 5, 0, 0, 2058, 2059, 3, 36, 18, 0, 2059, 151, 1, 0, 0, 0, 2060, 2061, 5, 5, 0, 0, 2061, 2062, 3, 36, 18, 0, 2062, 153, 1, 0, 0, 0, 2063, 2064, 5, 156, 0, 0, 2064, 2066, 5, 42, 0, 0, 2065, 2067, 3, 68, 34, 0, 2066, 2065, 1, 0, 0, 0, 2067, 2068, 1, 0, 0, 0, 2068, 2066, 1, 0, 0, 0, 2068, 2069, 1, 0, 0, 0, 2069, 155, 1, 0, 0, 0, 2070, 2071, 5, 111, 0, 0, 2071, 2073, 5, 42, 0, 0, 2072, 2074, 3, 68, 34, 0, 2073, 2072, 1, 0, 0, 0, 2074, 2075, 1, 0, 0, 0, 2075, 2073, 1, 0, 0, 0, 2075, 2076, 1, 0, 0, 0, 2076, 157, 1, 0, 0, 0, 2077, 2078, 5, 111, 0, 0, 2078, 2079, 5, 42, 0, 0, 2079, 2080, 3, 158, 79, 0, 2080, 159, 1, 0, 0, 0, 2081, 2083, 3, 68, 34, 0, 2082, 2084, 3, 140, 70, 0, 2083, 2082, 1, 0, 0, 0, 2083, 2084, 1, 0, 0, 0, 2084, 2092, 1, 0, 0, 0, 2085, 2086, 5, 5, 0, 0, 2086, 2088, 3, 68, 34, 0, 2087, 2089, 3, 140, 70, 0, 2088, 2087, 1, 0, 0, 0, 2088, 2089, 1, 0, 0, 0, 2089, 2091, 1, 0, 0, 0, 2090, 2085, 1, 0, 0, 0, 2091, 2094, 1, 0, 0, 0, 2092, 2090, 1, 0, 0, 0, 2092, 2093, 1, 0, 0, 0, 2093, 161, 1, 0, 0, 0, 2094, 2092, 1, 0, 0, 0, 2095, 2096, 3, 84, 42, 0, 2096, 163, 1, 0, 0, 0, 2097, 2098, 3, 84, 42, 0, 2098, 165, 1, 0, 0, 0, 2099, 2100, 7, 27, 0, 0, 2100, 167, 1, 0, 0, 0, 2101, 2102, 5, 192, 0, 0, 2102, 169, 1, 0, 0, 0, 2103, 2106, 3, 68, 34, 0, 2104, 2106, 3, 30, 15, 0, 2105, 2103, 1, 0, 0, 0, 2105, 2104, 1, 0, 0, 0, 2106, 171, 1, 0, 0, 0, 2107, 2108, 7, 28, 0, 0, 2108, 173, 1, 0, 0, 0, 2109, 2110, 7, 29, 0, 0, 2110, 175, 1, 0, 0, 0, 2111, 2112, 3, 228, 114, 0, 2112, 177, 1, 0, 0, 0, 2113, 2114, 3, 228, 114, 0, 2114, 179, 1, 0, 0, 0, 2115, 2116, 3, 182, 91, 0, 2116, 2117, 5, 2, 0, 0, 2117, 2119, 1, 0, 0, 0, 2118, 2115, 1, 0, 0, 0, 2118, 2119, 1, 0, 0, 0, 2119, 2120, 1, 0, 0, 0, 2120, 2121, 3, 178, 89, 0, 2121, 181, 1, 0, 0, 0, 2122, 2123, 3, 228, 114, 0, 2123, 183, 1, 0, 0, 0, 2124, 2125, 3, 228, 114, 0, 2125, 185, 1, 0, 0, 0, 2126, 2127, 3, 228, 114, 0, 2127, 187, 1, 0, 0, 0, 2128, 2129, 3, 228, 114, 0, 2129, 189, 1, 0, 0, 0, 2130, 2131, 3, 228, 114, 0, 2131, 191, 1, 0, 0, 0, 2132, 2133, 3, 228, 114, 0, 2133, 193, 1, 0, 0, 0, 2134, 2135, 3, 228, 114, 0, 2135, 195, 1, 0, 0, 0, 2136, 2137, 3, 228, 114, 0, 2137, 197, 1, 0, 0, 0, 2138, 2139, 3, 228, 114, 0, 2139, 199, 1, 0, 0, 0, 2140, 2141, 3, 228, 114, 0, 2141, 201, 1, 0, 0, 0, 2142, 2143, 3, 228, 114, 0, 2143, 203, 1, 0, 0, 0, 2144, 2145, 3, 228, 114, 0, 2145, 205, 1, 0, 0, 0, 2146, 2147, 3, 228, 114, 0, 2147, 207, 1, 0, 0, 0, 2148, 2149, 7, 28, 0, 0, 2149, 209, 1, 0, 0, 0, 2150, 2151, 3, 228, 114, 0, 2151, 211, 1, 0, 0, 0, 2152, 2153, 3, 228, 114, 0, 2153, 213, 1, 0, 0, 0, 2154, 2155, 3, 228, 114, 0, 2155, 215, 1, 0, 0, 0, 2156, 2157, 3, 228, 114, 0, 2157, 217, 1, 0, 0, 0, 2158, 2159, 3, 228, 114, 0, 2159, 219, 1, 0, 0, 0, 2160, 2161, 3, 228, 114, 0, 2161, 221, 1, 0, 0, 0, 2162, 2163, 3, 228, 114, 0, 2163, 223, 1, 0, 0, 0, 2164, 2165, 3, 228, 114, 0, 2165, 225, 1, 0, 0, 0, 2166, 2167, 3, 228, 114, 0, 2167, 227, 1, 0, 0, 0, 2168, 2176, 5, 188, 0, 0, 2169, 2176, 3, 174, 87, 0, 2170, 2176, 5, 192, 0, 0, 2171, 2172, 5, 3, 0, 0, 2172, 2173, 3, 228, 114, 0, 2173, 2174, 5, 4, 0, 0, 2174, 2176, 1, 0, 0, 0, 2175, 2168, 1, 0, 0, 0, 2175, 2169, 1, 0, 0, 0, 2175, 2170, 1, 0, 0, 0, 2175, 2171, 1, 0, 0, 0, 2176, 229, 1, 0, 0, 0, 314, 233, 241, 248, 253, 259, 265, 267, 293, 300, 307, 313, 317, 322, 325, 332, 335, 339, 347, 351, 353, 357, 361, 365, 368, 375, 381, 387, 392, 403, 409, 413, 417, 420, 425, 429, 435, 440, 449, 456, 465, 468, 472, 476, 481, 487, 499, 503, 508, 511, 514, 519, 522, 536, 543, 550, 552, 555, 561, 566, 574, 579, 594, 600, 610, 615, 625, 629, 631, 635, 640, 642, 650, 656, 661, 668, 679, 682, 684, 691, 695, 702, 708, 714, 720, 725, 734, 739, 750, 755, 766, 771, 775, 791, 801, 806, 814, 826, 831, 842, 845, 847, 853, 856, 858, 862, 866, 873, 876, 879, 886, 889, 892, 895, 899, 907, 912, 923, 928, 937, 944, 948, 952, 955, 963, 976, 979, 987, 996, 1000, 1005, 1034, 1041, 1052, 1061, 1071, 1074, 1080, 1086, 1095, 1098, 1102, 1109, 1115, 1122, 1124, 1126, 1135, 1142, 1149, 1155, 1160, 1168, 1173, 1182, 1193, 1200, 1204, 1207, 1210, 1214, 1224, 1230, 1232, 1240, 1247, 1254, 1259, 1261, 1267, 1276, 1281, 1288, 1292, 1294, 1297, 1305, 1309, 1312, 1321, 1326, 1333, 1342, 1346, 1348, 1352, 1361, 1366, 1368, 1381, 1384, 1393, 1404, 1411, 1414, 1419, 1423, 1426, 1429, 1434, 1438, 1443, 1446, 1449, 1454, 1458, 1461, 1468, 1473, 1482, 1487, 1490, 1498, 1502, 1510, 1513, 1518, 1522, 1525, 1532, 1537, 1546, 1551, 1554, 1562, 1566, 1574, 1577, 1579, 1588, 1591, 1593, 1597, 1601, 1604, 1609, 1620, 1625, 1629, 1633, 1636, 1641, 1647, 1654, 1661, 1666, 1669, 1677, 1683, 1688, 1694, 1701, 1708, 1713, 1716, 1719, 1724, 1729, 1736, 1740, 1744, 1754, 1763, 1766, 1775, 1779, 1787, 1796, 1799, 1808, 1811, 1814, 1817, 1827, 1836, 1845, 1849, 1856, 1863, 1867, 1871, 1880, 1884, 1888, 1893, 1897, 1904, 1914, 1921, 1926, 1929, 1933, 1947, 1959, 1968, 1977, 1981, 1991, 1994, 2003, 2012, 2015, 2021, 2035, 2039, 2050, 2055, 2068, 2075, 2083, 2088, 2092, 2105, 2118, 2175]
\ No newline at end of file
+[4, 1, 197, 2176, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, 31, 2, 32, 7, 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, 52, 7, 52, 2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, 57, 2, 58, 7, 58, 2, 59, 7, 59, 2, 60, 7, 60, 2, 61, 7, 61, 2, 62, 7, 62, 2, 63, 7, 63, 2, 64, 7, 64, 2, 65, 7, 65, 2, 66, 7, 66, 2, 67, 7, 67, 2, 68, 7, 68, 2, 69, 7, 69, 2, 70, 7, 70, 2, 71, 7, 71, 2, 72, 7, 72, 2, 73, 7, 73, 2, 74, 7, 74, 2, 75, 7, 75, 2, 76, 7, 76, 2, 77, 7, 77, 2, 78, 7, 78, 2, 79, 7, 79, 2, 80, 7, 80, 2, 81, 7, 81, 2, 82, 7, 82, 2, 83, 7, 83, 2, 84, 7, 84, 2, 85, 7, 85, 2, 86, 7, 86, 2, 87, 7, 87, 2, 88, 7, 88, 2, 89, 7, 89, 2, 90, 7, 90, 2, 91, 7, 91, 2, 92, 7, 92, 2, 93, 7, 93, 2, 94, 7, 94, 2, 95, 7, 95, 2, 96, 7, 96, 2, 97, 7, 97, 2, 98, 7, 98, 2, 99, 7, 99, 2, 100, 7, 100, 2, 101, 7, 101, 2, 102, 7, 102, 2, 103, 7, 103, 2, 104, 7, 104, 2, 105, 7, 105, 2, 106, 7, 106, 2, 107, 7, 107, 2, 108, 7, 108, 2, 109, 7, 109, 2, 110, 7, 110, 2, 111, 7, 111, 2, 112, 7, 112, 2, 113, 7, 113, 2, 114, 7, 114, 1, 0, 5, 0, 232, 8, 0, 10, 0, 12, 0, 235, 9, 0, 1, 0, 1, 0, 1, 1, 5, 1, 240, 8, 1, 10, 1, 12, 1, 243, 9, 1, 1, 1, 1, 1, 4, 1, 247, 8, 1, 11, 1, 12, 1, 248, 1, 1, 5, 1, 252, 8, 1, 10, 1, 12, 1, 255, 9, 1, 1, 1, 5, 1, 258, 8, 1, 10, 1, 12, 1, 261, 9, 1, 1, 2, 1, 2, 1, 2, 3, 2, 266, 8, 2, 3, 2, 268, 8, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 3, 2, 294, 8, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 301, 8, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 308, 8, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 314, 8, 3, 1, 3, 1, 3, 3, 3, 318, 8, 3, 1, 3, 1, 3, 1, 3, 3, 3, 323, 8, 3, 1, 3, 3, 3, 326, 8, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 3, 4, 333, 8, 4, 1, 4, 3, 4, 336, 8, 4, 1, 5, 1, 5, 3, 5, 340, 8, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 3, 6, 348, 8, 6, 1, 6, 1, 6, 3, 6, 352, 8, 6, 3, 6, 354, 8, 6, 1, 7, 1, 7, 3, 7, 358, 8, 7, 1, 8, 1, 8, 3, 8, 362, 8, 8, 1, 8, 1, 8, 3, 8, 366, 8, 8, 1, 8, 3, 8, 369, 8, 8, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 3, 10, 376, 8, 10, 1, 10, 1, 10, 1, 11, 1, 11, 3, 11, 382, 8, 11, 1, 11, 1, 11, 1, 11, 1, 11, 3, 11, 388, 8, 11, 1, 11, 1, 11, 1, 11, 3, 11, 393, 8, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 5, 11, 402, 8, 11, 10, 11, 12, 11, 405, 9, 11, 1, 11, 1, 11, 1, 11, 3, 11, 410, 8, 11, 1, 12, 1, 12, 3, 12, 414, 8, 12, 1, 12, 1, 12, 3, 12, 418, 8, 12, 1, 12, 3, 12, 421, 8, 12, 1, 13, 1, 13, 1, 13, 3, 13, 426, 8, 13, 1, 14, 1, 14, 3, 14, 430, 8, 14, 1, 14, 1, 14, 1, 14, 1, 14, 3, 14, 436, 8, 14, 1, 14, 1, 14, 1, 14, 3, 14, 441, 8, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 5, 14, 448, 8, 14, 10, 14, 12, 14, 451, 9, 14, 1, 14, 1, 14, 5, 14, 455, 8, 14, 10, 14, 12, 14, 458, 9, 14, 1, 14, 1, 14, 1, 14, 1, 14, 5, 14, 464, 8, 14, 10, 14, 12, 14, 467, 9, 14, 3, 14, 469, 8, 14, 1, 14, 1, 14, 3, 14, 473, 8, 14, 1, 15, 1, 15, 3, 15, 477, 8, 15, 1, 15, 5, 15, 480, 8, 15, 10, 15, 12, 15, 483, 9, 15, 1, 16, 4, 16, 486, 8, 16, 11, 16, 12, 16, 487, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 3, 16, 500, 8, 16, 1, 17, 1, 17, 3, 17, 504, 8, 17, 1, 17, 1, 17, 1, 17, 3, 17, 509, 8, 17, 1, 17, 3, 17, 512, 8, 17, 1, 17, 3, 17, 515, 8, 17, 1, 17, 1, 17, 1, 17, 3, 17, 520, 8, 17, 1, 17, 3, 17, 523, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 537, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 544, 8, 17, 1, 17, 1, 17, 1, 17, 1, 17, 1, 17, 3, 17, 551, 8, 17, 3, 17, 553, 8, 17, 1, 18, 3, 18, 556, 8, 18, 1, 18, 1, 18, 1, 19, 1, 19, 3, 19, 562, 8, 19, 1, 19, 1, 19, 1, 19, 3, 19, 567, 8, 19, 1, 19, 1, 19, 1, 19, 1, 19, 5, 19, 573, 8, 19, 10, 19, 12, 19, 576, 9, 19, 1, 19, 1, 19, 3, 19, 580, 8, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 5, 19, 593, 8, 19, 10, 19, 12, 19, 596, 9, 19, 1, 19, 1, 19, 1, 19, 3, 19, 601, 8, 19, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 5, 20, 609, 8, 20, 10, 20, 12, 20, 612, 9, 20, 1, 20, 1, 20, 3, 20, 616, 8, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 1, 20, 3, 20, 626, 8, 20, 1, 20, 1, 20, 5, 20, 630, 8, 20, 10, 20, 12, 20, 633, 9, 20, 1, 20, 3, 20, 636, 8, 20, 1, 20, 1, 20, 1, 20, 3, 20, 641, 8, 20, 3, 20, 643, 8, 20, 1, 21, 1, 21, 1, 21, 1, 21, 1, 22, 1, 22, 3, 22, 651, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 657, 8, 22, 1, 22, 1, 22, 1, 22, 3, 22, 662, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 669, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 5, 22, 678, 8, 22, 10, 22, 12, 22, 681, 9, 22, 3, 22, 683, 8, 22, 3, 22, 685, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 692, 8, 22, 1, 22, 1, 22, 3, 22, 696, 8, 22, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 3, 22, 703, 8, 22, 1, 22, 1, 22, 4, 22, 707, 8, 22, 11, 22, 12, 22, 708, 1, 22, 1, 22, 1, 23, 1, 23, 3, 23, 715, 8, 23, 1, 23, 1, 23, 1, 23, 1, 23, 3, 23, 721, 8, 23, 1, 23, 1, 23, 1, 23, 3, 23, 726, 8, 23, 1, 23, 1, 23, 1, 23, 1, 23, 1, 23, 5, 23, 733, 8, 23, 10, 23, 12, 23, 736, 9, 23, 1, 23, 1, 23, 3, 23, 740, 8, 23, 1, 23, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 3, 24, 751, 8, 24, 1, 24, 1, 24, 1, 24, 3, 24, 756, 8, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 1, 24, 5, 24, 765, 8, 24, 10, 24, 12, 24, 768, 9, 24, 1, 24, 1, 24, 3, 24, 772, 8, 24, 1, 25, 1, 25, 3, 25, 776, 8, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 5, 25, 790, 8, 25, 10, 25, 12, 25, 793, 9, 25, 1, 26, 1, 26, 1, 26, 1, 26, 1, 26, 5, 26, 800, 8, 26, 10, 26, 12, 26, 803, 9, 26, 1, 26, 1, 26, 3, 26, 807, 8, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 3, 27, 815, 8, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 5, 28, 825, 8, 28, 10, 28, 12, 28, 828, 9, 28, 1, 28, 1, 28, 3, 28, 832, 8, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 843, 8, 29, 1, 29, 3, 29, 846, 8, 29, 3, 29, 848, 8, 29, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 854, 8, 29, 1, 29, 3, 29, 857, 8, 29, 3, 29, 859, 8, 29, 5, 29, 861, 8, 29, 10, 29, 12, 29, 864, 9, 29, 1, 30, 3, 30, 867, 8, 30, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 3, 30, 874, 8, 30, 1, 30, 3, 30, 877, 8, 30, 1, 31, 3, 31, 880, 8, 31, 1, 31, 1, 31, 1, 31, 1, 31, 1, 31, 3, 31, 887, 8, 31, 1, 31, 3, 31, 890, 8, 31, 1, 31, 3, 31, 893, 8, 31, 1, 31, 3, 31, 896, 8, 31, 1, 32, 1, 32, 3, 32, 900, 8, 32, 1, 32, 1, 32, 1, 33, 1, 33, 1, 33, 1, 33, 3, 33, 908, 8, 33, 1, 33, 1, 33, 1, 33, 3, 33, 913, 8, 33, 1, 33, 1, 33, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 924, 8, 34, 1, 34, 1, 34, 1, 34, 3, 34, 929, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 938, 8, 34, 1, 34, 1, 34, 1, 34, 5, 34, 943, 8, 34, 10, 34, 12, 34, 946, 9, 34, 1, 34, 3, 34, 949, 8, 34, 1, 34, 1, 34, 3, 34, 953, 8, 34, 1, 34, 3, 34, 956, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 962, 8, 34, 10, 34, 12, 34, 965, 9, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 977, 8, 34, 1, 34, 3, 34, 980, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 988, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 4, 34, 995, 8, 34, 11, 34, 12, 34, 996, 1, 34, 1, 34, 3, 34, 1001, 8, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1006, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1035, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1042, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1053, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1062, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 1070, 8, 34, 10, 34, 12, 34, 1073, 9, 34, 3, 34, 1075, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1081, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1087, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 5, 34, 1094, 8, 34, 10, 34, 12, 34, 1097, 9, 34, 3, 34, 1099, 8, 34, 1, 34, 1, 34, 3, 34, 1103, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1110, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1116, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 1123, 8, 34, 5, 34, 1125, 8, 34, 10, 34, 12, 34, 1128, 9, 34, 1, 35, 1, 35, 1, 35, 1, 35, 1, 35, 1, 35, 3, 35, 1136, 8, 35, 1, 35, 1, 35, 1, 36, 1, 36, 1, 37, 3, 37, 1143, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1150, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1156, 8, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1161, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1167, 8, 37, 10, 37, 12, 37, 1170, 9, 37, 1, 37, 1, 37, 3, 37, 1174, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1181, 8, 37, 10, 37, 12, 37, 1184, 9, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1192, 8, 37, 10, 37, 12, 37, 1195, 9, 37, 1, 37, 1, 37, 5, 37, 1199, 8, 37, 10, 37, 12, 37, 1202, 9, 37, 1, 37, 1, 37, 1, 37, 3, 37, 1207, 8, 37, 1, 37, 3, 37, 1210, 8, 37, 1, 37, 3, 37, 1213, 8, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1221, 8, 38, 10, 38, 12, 38, 1224, 9, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1229, 8, 38, 3, 38, 1231, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1239, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1246, 8, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1251, 8, 38, 10, 38, 12, 38, 1254, 9, 38, 1, 38, 1, 38, 3, 38, 1258, 8, 38, 3, 38, 1260, 8, 38, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1266, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1275, 8, 39, 1, 40, 1, 40, 1, 40, 3, 40, 1280, 8, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 3, 41, 1287, 8, 41, 1, 41, 1, 41, 3, 41, 1291, 8, 41, 3, 41, 1293, 8, 41, 1, 42, 3, 42, 1296, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 5, 42, 1302, 8, 42, 10, 42, 12, 42, 1305, 9, 42, 1, 42, 3, 42, 1308, 8, 42, 1, 42, 3, 42, 1311, 8, 42, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 5, 43, 1318, 8, 43, 10, 43, 12, 43, 1321, 9, 43, 1, 44, 1, 44, 3, 44, 1325, 8, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1330, 8, 44, 10, 44, 12, 44, 1333, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1339, 8, 44, 10, 44, 12, 44, 1342, 9, 44, 1, 44, 3, 44, 1345, 8, 44, 3, 44, 1347, 8, 44, 1, 44, 1, 44, 3, 44, 1351, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1358, 8, 44, 10, 44, 12, 44, 1361, 9, 44, 1, 44, 1, 44, 3, 44, 1365, 8, 44, 3, 44, 1367, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1378, 8, 44, 10, 44, 12, 44, 1381, 9, 44, 3, 44, 1383, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1390, 8, 44, 10, 44, 12, 44, 1393, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1401, 8, 44, 10, 44, 12, 44, 1404, 9, 44, 1, 44, 1, 44, 5, 44, 1408, 8, 44, 10, 44, 12, 44, 1411, 9, 44, 3, 44, 1413, 8, 44, 1, 45, 1, 45, 1, 46, 3, 46, 1418, 8, 46, 1, 46, 1, 46, 3, 46, 1422, 8, 46, 1, 46, 3, 46, 1425, 8, 46, 1, 47, 3, 47, 1428, 8, 47, 1, 47, 1, 47, 1, 47, 3, 47, 1433, 8, 47, 1, 47, 1, 47, 3, 47, 1437, 8, 47, 1, 47, 4, 47, 1440, 8, 47, 11, 47, 12, 47, 1441, 1, 47, 3, 47, 1445, 8, 47, 1, 47, 3, 47, 1448, 8, 47, 1, 48, 1, 48, 1, 48, 3, 48, 1453, 8, 48, 1, 48, 1, 48, 3, 48, 1457, 8, 48, 1, 48, 3, 48, 1460, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1467, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1472, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1479, 8, 48, 10, 48, 12, 48, 1482, 9, 48, 1, 48, 1, 48, 3, 48, 1486, 8, 48, 1, 48, 3, 48, 1489, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1495, 8, 48, 10, 48, 12, 48, 1498, 9, 48, 1, 48, 3, 48, 1501, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1509, 8, 48, 1, 48, 3, 48, 1512, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1517, 8, 48, 1, 48, 1, 48, 3, 48, 1521, 8, 48, 1, 48, 3, 48, 1524, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1531, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1536, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1543, 8, 48, 10, 48, 12, 48, 1546, 9, 48, 1, 48, 1, 48, 3, 48, 1550, 8, 48, 1, 48, 3, 48, 1553, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1559, 8, 48, 10, 48, 12, 48, 1562, 9, 48, 1, 48, 3, 48, 1565, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1573, 8, 48, 1, 48, 3, 48, 1576, 8, 48, 3, 48, 1578, 8, 48, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 3, 49, 1587, 8, 49, 1, 49, 3, 49, 1590, 8, 49, 3, 49, 1592, 8, 49, 1, 50, 1, 50, 3, 50, 1596, 8, 50, 1, 50, 1, 50, 3, 50, 1600, 8, 50, 1, 50, 3, 50, 1603, 8, 50, 1, 50, 1, 50, 1, 50, 3, 50, 1608, 8, 50, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 5, 51, 1617, 8, 51, 10, 51, 12, 51, 1620, 9, 51, 1, 51, 1, 51, 3, 51, 1624, 8, 51, 1, 52, 1, 52, 3, 52, 1628, 8, 52, 1, 52, 1, 52, 3, 52, 1632, 8, 52, 1, 53, 3, 53, 1635, 8, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1640, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1646, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1653, 8, 53, 1, 53, 1, 53, 1, 53, 5, 53, 1658, 8, 53, 10, 53, 12, 53, 1661, 9, 53, 1, 53, 1, 53, 3, 53, 1665, 8, 53, 1, 53, 3, 53, 1668, 8, 53, 1, 54, 1, 54, 1, 54, 1, 54, 5, 54, 1674, 8, 54, 10, 54, 12, 54, 1677, 9, 54, 1, 54, 1, 54, 1, 55, 3, 55, 1682, 8, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1687, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1693, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1700, 8, 55, 1, 55, 1, 55, 1, 55, 5, 55, 1705, 8, 55, 10, 55, 12, 55, 1708, 9, 55, 1, 55, 1, 55, 3, 55, 1712, 8, 55, 1, 55, 3, 55, 1715, 8, 55, 1, 55, 3, 55, 1718, 8, 55, 1, 56, 1, 56, 1, 56, 3, 56, 1723, 8, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1728, 8, 56, 1, 56, 1, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1735, 8, 56, 1, 57, 1, 57, 3, 57, 1739, 8, 57, 1, 57, 1, 57, 3, 57, 1743, 8, 57, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 59, 1, 59, 3, 59, 1753, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1760, 8, 59, 10, 59, 12, 59, 1763, 9, 59, 3, 59, 1765, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1772, 8, 59, 10, 59, 12, 59, 1775, 9, 59, 1, 59, 3, 59, 1778, 8, 59, 1, 59, 1, 59, 1, 60, 1, 60, 1, 60, 1, 60, 3, 60, 1786, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1793, 8, 60, 10, 60, 12, 60, 1796, 9, 60, 3, 60, 1798, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1805, 8, 60, 10, 60, 12, 60, 1808, 9, 60, 3, 60, 1810, 8, 60, 1, 60, 3, 60, 1813, 8, 60, 1, 60, 3, 60, 1816, 8, 60, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 3, 61, 1826, 8, 61, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 3, 62, 1835, 8, 62, 1, 63, 1, 63, 1, 63, 1, 63, 1, 63, 5, 63, 1842, 8, 63, 10, 63, 12, 63, 1845, 9, 63, 1, 63, 3, 63, 1848, 8, 63, 1, 63, 1, 63, 1, 64, 1, 64, 1, 64, 3, 64, 1855, 8, 64, 1, 64, 1, 64, 1, 64, 5, 64, 1860, 8, 64, 10, 64, 12, 64, 1863, 9, 64, 1, 64, 3, 64, 1866, 8, 64, 1, 64, 1, 64, 3, 64, 1870, 8, 64, 1, 65, 1, 65, 1, 65, 1, 65, 1, 65, 5, 65, 1877, 8, 65, 10, 65, 12, 65, 1880, 9, 65, 1, 65, 3, 65, 1883, 8, 65, 1, 65, 1, 65, 3, 65, 1887, 8, 65, 1, 65, 1, 65, 1, 65, 3, 65, 1892, 8, 65, 1, 66, 1, 66, 3, 66, 1896, 8, 66, 1, 66, 1, 66, 1, 66, 5, 66, 1901, 8, 66, 10, 66, 12, 66, 1904, 9, 66, 1, 67, 1, 67, 1, 67, 1, 67, 1, 67, 5, 67, 1911, 8, 67, 10, 67, 12, 67, 1914, 9, 67, 1, 68, 1, 68, 1, 68, 1, 68, 3, 68, 1920, 8, 68, 1, 69, 1, 69, 1, 69, 3, 69, 1925, 8, 69, 1, 69, 3, 69, 1928, 8, 69, 1, 69, 1, 69, 3, 69, 1932, 8, 69, 1, 70, 1, 70, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 3, 71, 1946, 8, 71, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 3, 72, 1958, 8, 72, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 3, 73, 1967, 8, 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1976, 8, 74, 1, 74, 1, 74, 3, 74, 1980, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1990, 8, 74, 1, 74, 3, 74, 1993, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2002, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2011, 8, 74, 1, 74, 3, 74, 2014, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2020, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2034, 8, 74, 1, 74, 1, 74, 3, 74, 2038, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2049, 8, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2054, 8, 74, 1, 75, 1, 75, 1, 75, 1, 76, 1, 76, 1, 76, 1, 77, 1, 77, 1, 77, 4, 77, 2065, 8, 77, 11, 77, 12, 77, 2066, 1, 78, 1, 78, 1, 78, 4, 78, 2072, 8, 78, 11, 78, 12, 78, 2073, 1, 79, 1, 79, 1, 79, 1, 79, 1, 80, 1, 80, 3, 80, 2082, 8, 80, 1, 80, 1, 80, 1, 80, 3, 80, 2087, 8, 80, 5, 80, 2089, 8, 80, 10, 80, 12, 80, 2092, 9, 80, 1, 81, 1, 81, 1, 82, 1, 82, 1, 83, 1, 83, 1, 84, 1, 84, 1, 85, 1, 85, 3, 85, 2104, 8, 85, 1, 86, 1, 86, 1, 87, 1, 87, 1, 88, 1, 88, 1, 89, 1, 89, 1, 90, 1, 90, 1, 90, 3, 90, 2117, 8, 90, 1, 90, 1, 90, 1, 91, 1, 91, 1, 92, 1, 92, 1, 93, 1, 93, 1, 94, 1, 94, 1, 95, 1, 95, 1, 96, 1, 96, 1, 97, 1, 97, 1, 98, 1, 98, 1, 99, 1, 99, 1, 100, 1, 100, 1, 101, 1, 101, 1, 102, 1, 102, 1, 103, 1, 103, 1, 104, 1, 104, 1, 105, 1, 105, 1, 106, 1, 106, 1, 107, 1, 107, 1, 108, 1, 108, 1, 109, 1, 109, 1, 110, 1, 110, 1, 111, 1, 111, 1, 112, 1, 112, 1, 113, 1, 113, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 3, 114, 2174, 8, 114, 1, 114, 2, 449, 487, 1, 68, 115, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 0, 30, 3, 0, 60, 60, 71, 71, 84, 84, 2, 0, 49, 49, 68, 68, 1, 0, 136, 137, 2, 0, 149, 149, 174, 174, 2, 0, 8, 8, 11, 11, 2, 0, 61, 61, 144, 144, 2, 0, 58, 58, 106, 106, 2, 0, 60, 60, 84, 84, 5, 0, 27, 27, 74, 74, 83, 83, 124, 124, 128, 128, 4, 0, 86, 86, 135, 135, 141, 141, 148, 148, 1, 0, 9, 10, 2, 0, 7, 7, 14, 15, 1, 0, 16, 19, 1, 0, 20, 23, 4, 0, 79, 79, 99, 99, 101, 101, 120, 120, 3, 0, 27, 27, 74, 74, 128, 128, 5, 0, 54, 56, 106, 106, 175, 176, 189, 189, 192, 193, 2, 0, 31, 31, 64, 64, 3, 0, 78, 78, 98, 98, 127, 127, 3, 0, 130, 130, 157, 157, 182, 182, 2, 0, 5, 5, 108, 108, 1, 0, 179, 180, 2, 0, 36, 36, 62, 62, 2, 0, 154, 154, 165, 165, 2, 0, 162, 162, 169, 169, 2, 0, 163, 163, 170, 171, 2, 0, 164, 164, 166, 166, 3, 0, 8, 8, 11, 12, 104, 104, 2, 0, 188, 188, 192, 192, 1, 0, 27, 183, 2482, 0, 233, 1, 0, 0, 0, 2, 241, 1, 0, 0, 0, 4, 267, 1, 0, 0, 0, 6, 295, 1, 0, 0, 0, 8, 327, 1, 0, 0, 0, 10, 337, 1, 0, 0, 0, 12, 345, 1, 0, 0, 0, 14, 355, 1, 0, 0, 0, 16, 359, 1, 0, 0, 0, 18, 370, 1, 0, 0, 0, 20, 373, 1, 0, 0, 0, 22, 379, 1, 0, 0, 0, 24, 413, 1, 0, 0, 0, 26, 425, 1, 0, 0, 0, 28, 427, 1, 0, 0, 0, 30, 474, 1, 0, 0, 0, 32, 485, 1, 0, 0, 0, 34, 503, 1, 0, 0, 0, 36, 555, 1, 0, 0, 0, 38, 561, 1, 0, 0, 0, 40, 602, 1, 0, 0, 0, 42, 644, 1, 0, 0, 0, 44, 648, 1, 0, 0, 0, 46, 712, 1, 0, 0, 0, 48, 744, 1, 0, 0, 0, 50, 773, 1, 0, 0, 0, 52, 794, 1, 0, 0, 0, 54, 808, 1, 0, 0, 0, 56, 819, 1, 0, 0, 0, 58, 838, 1, 0, 0, 0, 60, 866, 1, 0, 0, 0, 62, 879, 1, 0, 0, 0, 64, 897, 1, 0, 0, 0, 66, 903, 1, 0, 0, 0, 68, 1005, 1, 0, 0, 0, 70, 1129, 1, 0, 0, 0, 72, 1139, 1, 0, 0, 0, 74, 1142, 1, 0, 0, 0, 76, 1214, 1, 0, 0, 0, 78, 1261, 1, 0, 0, 0, 80, 1279, 1, 0, 0, 0, 82, 1281, 1, 0, 0, 0, 84, 1295, 1, 0, 0, 0, 86, 1312, 1, 0, 0, 0, 88, 1412, 1, 0, 0, 0, 90, 1414, 1, 0, 0, 0, 92, 1417, 1, 0, 0, 0, 94, 1427, 1, 0, 0, 0, 96, 1577, 1, 0, 0, 0, 98, 1591, 1, 0, 0, 0, 100, 1607, 1, 0, 0, 0, 102, 1623, 1, 0, 0, 0, 104, 1631, 1, 0, 0, 0, 106, 1634, 1, 0, 0, 0, 108, 1669, 1, 0, 0, 0, 110, 1681, 1, 0, 0, 0, 112, 1722, 1, 0, 0, 0, 114, 1736, 1, 0, 0, 0, 116, 1744, 1, 0, 0, 0, 118, 1750, 1, 0, 0, 0, 120, 1781, 1, 0, 0, 0, 122, 1817, 1, 0, 0, 0, 124, 1827, 1, 0, 0, 0, 126, 1836, 1, 0, 0, 0, 128, 1851, 1, 0, 0, 0, 130, 1871, 1, 0, 0, 0, 132, 1893, 1, 0, 0, 0, 134, 1905, 1, 0, 0, 0, 136, 1915, 1, 0, 0, 0, 138, 1921, 1, 0, 0, 0, 140, 1933, 1, 0, 0, 0, 142, 1945, 1, 0, 0, 0, 144, 1957, 1, 0, 0, 0, 146, 1966, 1, 0, 0, 0, 148, 2053, 1, 0, 0, 0, 150, 2055, 1, 0, 0, 0, 152, 2058, 1, 0, 0, 0, 154, 2061, 1, 0, 0, 0, 156, 2068, 1, 0, 0, 0, 158, 2075, 1, 0, 0, 0, 160, 2079, 1, 0, 0, 0, 162, 2093, 1, 0, 0, 0, 164, 2095, 1, 0, 0, 0, 166, 2097, 1, 0, 0, 0, 168, 2099, 1, 0, 0, 0, 170, 2103, 1, 0, 0, 0, 172, 2105, 1, 0, 0, 0, 174, 2107, 1, 0, 0, 0, 176, 2109, 1, 0, 0, 0, 178, 2111, 1, 0, 0, 0, 180, 2116, 1, 0, 0, 0, 182, 2120, 1, 0, 0, 0, 184, 2122, 1, 0, 0, 0, 186, 2124, 1, 0, 0, 0, 188, 2126, 1, 0, 0, 0, 190, 2128, 1, 0, 0, 0, 192, 2130, 1, 0, 0, 0, 194, 2132, 1, 0, 0, 0, 196, 2134, 1, 0, 0, 0, 198, 2136, 1, 0, 0, 0, 200, 2138, 1, 0, 0, 0, 202, 2140, 1, 0, 0, 0, 204, 2142, 1, 0, 0, 0, 206, 2144, 1, 0, 0, 0, 208, 2146, 1, 0, 0, 0, 210, 2148, 1, 0, 0, 0, 212, 2150, 1, 0, 0, 0, 214, 2152, 1, 0, 0, 0, 216, 2154, 1, 0, 0, 0, 218, 2156, 1, 0, 0, 0, 220, 2158, 1, 0, 0, 0, 222, 2160, 1, 0, 0, 0, 224, 2162, 1, 0, 0, 0, 226, 2164, 1, 0, 0, 0, 228, 2173, 1, 0, 0, 0, 230, 232, 3, 2, 1, 0, 231, 230, 1, 0, 0, 0, 232, 235, 1, 0, 0, 0, 233, 231, 1, 0, 0, 0, 233, 234, 1, 0, 0, 0, 234, 236, 1, 0, 0, 0, 235, 233, 1, 0, 0, 0, 236, 237, 5, 0, 0, 1, 237, 1, 1, 0, 0, 0, 238, 240, 5, 1, 0, 0, 239, 238, 1, 0, 0, 0, 240, 243, 1, 0, 0, 0, 241, 239, 1, 0, 0, 0, 241, 242, 1, 0, 0, 0, 242, 244, 1, 0, 0, 0, 243, 241, 1, 0, 0, 0, 244, 253, 3, 4, 2, 0, 245, 247, 5, 1, 0, 0, 246, 245, 1, 0, 0, 0, 247, 248, 1, 0, 0, 0, 248, 246, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 250, 1, 0, 0, 0, 250, 252, 3, 4, 2, 0, 251, 246, 1, 0, 0, 0, 252, 255, 1, 0, 0, 0, 253, 251, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254, 259, 1, 0, 0, 0, 255, 253, 1, 0, 0, 0, 256, 258, 5, 1, 0, 0, 257, 256, 1, 0, 0, 0, 258, 261, 1, 0, 0, 0, 259, 257, 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 3, 1, 0, 0, 0, 261, 259, 1, 0, 0, 0, 262, 265, 5, 73, 0, 0, 263, 264, 5, 116, 0, 0, 264, 266, 5, 113, 0, 0, 265, 263, 1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266, 268, 1, 0, 0, 0, 267, 262, 1, 0, 0, 0, 267, 268, 1, 0, 0, 0, 268, 293, 1, 0, 0, 0, 269, 294, 3, 6, 3, 0, 270, 294, 3, 8, 4, 0, 271, 294, 3, 10, 5, 0, 272, 294, 3, 12, 6, 0, 273, 294, 3, 14, 7, 0, 274, 294, 3, 22, 11, 0, 275, 294, 3, 28, 14, 0, 276, 294, 3, 44, 22, 0, 277, 294, 3, 46, 23, 0, 278, 294, 3, 48, 24, 0, 279, 294, 3, 60, 30, 0, 280, 294, 3, 62, 31, 0, 281, 294, 3, 64, 32, 0, 282, 294, 3, 66, 33, 0, 283, 294, 3, 74, 37, 0, 284, 294, 3, 78, 39, 0, 285, 294, 3, 82, 41, 0, 286, 294, 3, 20, 10, 0, 287, 294, 3, 16, 8, 0, 288, 294, 3, 18, 9, 0, 289, 294, 3, 84, 42, 0, 290, 294, 3, 106, 53, 0, 291, 294, 3, 110, 55, 0, 292, 294, 3, 114, 57, 0, 293, 269, 1, 0, 0, 0, 293, 270, 1, 0, 0, 0, 293, 271, 1, 0, 0, 0, 293, 272, 1, 0, 0, 0, 293, 273, 1, 0, 0, 0, 293, 274, 1, 0, 0, 0, 293, 275, 1, 0, 0, 0, 293, 276, 1, 0, 0, 0, 293, 277, 1, 0, 0, 0, 293, 278, 1, 0, 0, 0, 293, 279, 1, 0, 0, 0, 293, 280, 1, 0, 0, 0, 293, 281, 1, 0, 0, 0, 293, 282, 1, 0, 0, 0, 293, 283, 1, 0, 0, 0, 293, 284, 1, 0, 0, 0, 293, 285, 1, 0, 0, 0, 293, 286, 1, 0, 0, 0, 293, 287, 1, 0, 0, 0, 293, 288, 1, 0, 0, 0, 293, 289, 1, 0, 0, 0, 293, 290, 1, 0, 0, 0, 293, 291, 1, 0, 0, 0, 293, 292, 1, 0, 0, 0, 294, 5, 1, 0, 0, 0, 295, 296, 5, 32, 0, 0, 296, 300, 5, 135, 0, 0, 297, 298, 3, 182, 91, 0, 298, 299, 5, 2, 0, 0, 299, 301, 1, 0, 0, 0, 300, 297, 1, 0, 0, 0, 300, 301, 1, 0, 0, 0, 301, 302, 1, 0, 0, 0, 302, 325, 3, 184, 92, 0, 303, 313, 5, 123, 0, 0, 304, 305, 5, 139, 0, 0, 305, 314, 3, 188, 94, 0, 306, 308, 5, 48, 0, 0, 307, 306, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 309, 1, 0, 0, 0, 309, 310, 3, 190, 95, 0, 310, 311, 5, 139, 0, 0, 311, 312, 3, 190, 95, 0, 312, 314, 1, 0, 0, 0, 313, 304, 1, 0, 0, 0, 313, 307, 1, 0, 0, 0, 314, 326, 1, 0, 0, 0, 315, 317, 5, 29, 0, 0, 316, 318, 5, 48, 0, 0, 317, 316, 1, 0, 0, 0, 317, 318, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 326, 3, 30, 15, 0, 320, 322, 5, 65, 0, 0, 321, 323, 5, 48, 0, 0, 322, 321, 1, 0, 0, 0, 322, 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 326, 3, 190, 95, 0, 325, 303, 1, 0, 0, 0, 325, 315, 1, 0, 0, 0, 325, 320, 1, 0, 0, 0, 326, 7, 1, 0, 0, 0, 327, 335, 5, 33, 0, 0, 328, 336, 3, 182, 91, 0, 329, 330, 3, 182, 91, 0, 330, 331, 5, 2, 0, 0, 331, 333, 1, 0, 0, 0, 332, 329, 1, 0, 0, 0, 332, 333, 1, 0, 0, 0, 333, 334, 1, 0, 0, 0, 334, 336, 3, 186, 93, 0, 335, 328, 1, 0, 0, 0, 335, 332, 1, 0, 0, 0, 335, 336, 1, 0, 0, 0, 336, 9, 1, 0, 0, 0, 337, 339, 5, 37, 0, 0, 338, 340, 5, 57, 0, 0, 339, 338, 1, 0, 0, 0, 339, 340, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 342, 3, 68, 34, 0, 342, 343, 5, 35, 0, 0, 343, 344, 3, 182, 91, 0, 344, 11, 1, 0, 0, 0, 345, 347, 5, 40, 0, 0, 346, 348, 7, 0, 0, 0, 347, 346, 1, 0, 0, 0, 347, 348, 1, 0, 0, 0, 348, 353, 1, 0, 0, 0, 349, 351, 5, 140, 0, 0, 350, 352, 3, 212, 106, 0, 351, 350, 1, 0, 0, 0, 351, 352, 1, 0, 0, 0, 352, 354, 1, 0, 0, 0, 353, 349, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 13, 1, 0, 0, 0, 355, 357, 7, 1, 0, 0, 356, 358, 5, 140, 0, 0, 357, 356, 1, 0, 0, 0, 357, 358, 1, 0, 0, 0, 358, 15, 1, 0, 0, 0, 359, 361, 5, 128, 0, 0, 360, 362, 5, 140, 0, 0, 361, 360, 1, 0, 0, 0, 361, 362, 1, 0, 0, 0, 362, 368, 1, 0, 0, 0, 363, 365, 5, 139, 0, 0, 364, 366, 5, 131, 0, 0, 365, 364, 1, 0, 0, 0, 365, 366, 1, 0, 0, 0, 366, 367, 1, 0, 0, 0, 367, 369, 3, 206, 103, 0, 368, 363, 1, 0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 17, 1, 0, 0, 0, 370, 371, 5, 131, 0, 0, 371, 372, 3, 206, 103, 0, 372, 19, 1, 0, 0, 0, 373, 375, 5, 122, 0, 0, 374, 376, 5, 131, 0, 0, 375, 374, 1, 0, 0, 0, 375, 376, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 378, 3, 206, 103, 0, 378, 21, 1, 0, 0, 0, 379, 381, 5, 52, 0, 0, 380, 382, 5, 143, 0, 0, 381, 380, 1, 0, 0, 0, 381, 382, 1, 0, 0, 0, 382, 383, 1, 0, 0, 0, 383, 387, 5, 86, 0, 0, 384, 385, 5, 82, 0, 0, 385, 386, 5, 104, 0, 0, 386, 388, 5, 72, 0, 0, 387, 384, 1, 0, 0, 0, 387, 388, 1, 0, 0, 0, 388, 392, 1, 0, 0, 0, 389, 390, 3, 182, 91, 0, 390, 391, 5, 2, 0, 0, 391, 393, 1, 0, 0, 0, 392, 389, 1, 0, 0, 0, 392, 393, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394, 395, 3, 196, 98, 0, 395, 396, 5, 109, 0, 0, 396, 397, 3, 184, 92, 0, 397, 398, 5, 3, 0, 0, 398, 403, 3, 24, 12, 0, 399, 400, 5, 5, 0, 0, 400, 402, 3, 24, 12, 0, 401, 399, 1, 0, 0, 0, 402, 405, 1, 0, 0, 0, 403, 401, 1, 0, 0, 0, 403, 404, 1, 0, 0, 0, 404, 406, 1, 0, 0, 0, 405, 403, 1, 0, 0, 0, 406, 409, 5, 4, 0, 0, 407, 408, 5, 151, 0, 0, 408, 410, 3, 68, 34, 0, 409, 407, 1, 0, 0, 0, 409, 410, 1, 0, 0, 0, 410, 23, 1, 0, 0, 0, 411, 414, 3, 190, 95, 0, 412, 414, 3, 68, 34, 0, 413, 411, 1, 0, 0, 0, 413, 412, 1, 0, 0, 0, 414, 417, 1, 0, 0, 0, 415, 416, 5, 47, 0, 0, 416, 418, 3, 192, 96, 0, 417, 415, 1, 0, 0, 0, 417, 418, 1, 0, 0, 0, 418, 420, 1, 0, 0, 0, 419, 421, 3, 140, 70, 0, 420, 419, 1, 0, 0, 0, 420, 421, 1, 0, 0, 0, 421, 25, 1, 0, 0, 0, 422, 423, 5, 153, 0, 0, 423, 426, 5, 188, 0, 0, 424, 426, 5, 134, 0, 0, 425, 422, 1, 0, 0, 0, 425, 424, 1, 0, 0, 0, 426, 27, 1, 0, 0, 0, 427, 429, 5, 52, 0, 0, 428, 430, 7, 2, 0, 0, 429, 428, 1, 0, 0, 0, 429, 430, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, 431, 435, 5, 135, 0, 0, 432, 433, 5, 82, 0, 0, 433, 434, 5, 104, 0, 0, 434, 436, 5, 72, 0, 0, 435, 432, 1, 0, 0, 0, 435, 436, 1, 0, 0, 0, 436, 440, 1, 0, 0, 0, 437, 438, 3, 182, 91, 0, 438, 439, 5, 2, 0, 0, 439, 441, 1, 0, 0, 0, 440, 437, 1, 0, 0, 0, 440, 441, 1, 0, 0, 0, 441, 442, 1, 0, 0, 0, 442, 472, 3, 184, 92, 0, 443, 444, 5, 3, 0, 0, 444, 449, 3, 30, 15, 0, 445, 446, 5, 5, 0, 0, 446, 448, 3, 30, 15, 0, 447, 445, 1, 0, 0, 0, 448, 451, 1, 0, 0, 0, 449, 450, 1, 0, 0, 0, 449, 447, 1, 0, 0, 0, 450, 456, 1, 0, 0, 0, 451, 449, 1, 0, 0, 0, 452, 453, 5, 5, 0, 0, 453, 455, 3, 38, 19, 0, 454, 452, 1, 0, 0, 0, 455, 458, 1, 0, 0, 0, 456, 454, 1, 0, 0, 0, 456, 457, 1, 0, 0, 0, 457, 459, 1, 0, 0, 0, 458, 456, 1, 0, 0, 0, 459, 468, 5, 4, 0, 0, 460, 465, 3, 26, 13, 0, 461, 462, 5, 5, 0, 0, 462, 464, 3, 26, 13, 0, 463, 461, 1, 0, 0, 0, 464, 467, 1, 0, 0, 0, 465, 463, 1, 0, 0, 0, 465, 466, 1, 0, 0, 0, 466, 469, 1, 0, 0, 0, 467, 465, 1, 0, 0, 0, 468, 460, 1, 0, 0, 0, 468, 469, 1, 0, 0, 0, 469, 473, 1, 0, 0, 0, 470, 471, 5, 35, 0, 0, 471, 473, 3, 84, 42, 0, 472, 443, 1, 0, 0, 0, 472, 470, 1, 0, 0, 0, 473, 29, 1, 0, 0, 0, 474, 476, 3, 190, 95, 0, 475, 477, 3, 32, 16, 0, 476, 475, 1, 0, 0, 0, 476, 477, 1, 0, 0, 0, 477, 481, 1, 0, 0, 0, 478, 480, 3, 34, 17, 0, 479, 478, 1, 0, 0, 0, 480, 483, 1, 0, 0, 0, 481, 479, 1, 0, 0, 0, 481, 482, 1, 0, 0, 0, 482, 31, 1, 0, 0, 0, 483, 481, 1, 0, 0, 0, 484, 486, 3, 176, 88, 0, 485, 484, 1, 0, 0, 0, 486, 487, 1, 0, 0, 0, 487, 488, 1, 0, 0, 0, 487, 485, 1, 0, 0, 0, 488, 499, 1, 0, 0, 0, 489, 490, 5, 3, 0, 0, 490, 491, 3, 36, 18, 0, 491, 492, 5, 4, 0, 0, 492, 500, 1, 0, 0, 0, 493, 494, 5, 3, 0, 0, 494, 495, 3, 36, 18, 0, 495, 496, 5, 5, 0, 0, 496, 497, 3, 36, 18, 0, 497, 498, 5, 4, 0, 0, 498, 500, 1, 0, 0, 0, 499, 489, 1, 0, 0, 0, 499, 493, 1, 0, 0, 0, 499, 500, 1, 0, 0, 0, 500, 33, 1, 0, 0, 0, 501, 502, 5, 51, 0, 0, 502, 504, 3, 176, 88, 0, 503, 501, 1, 0, 0, 0, 503, 504, 1, 0, 0, 0, 504, 552, 1, 0, 0, 0, 505, 506, 5, 115, 0, 0, 506, 508, 5, 97, 0, 0, 507, 509, 3, 140, 70, 0, 508, 507, 1, 0, 0, 0, 508, 509, 1, 0, 0, 0, 509, 511, 1, 0, 0, 0, 510, 512, 3, 42, 21, 0, 511, 510, 1, 0, 0, 0, 511, 512, 1, 0, 0, 0, 512, 514, 1, 0, 0, 0, 513, 515, 5, 38, 0, 0, 514, 513, 1, 0, 0, 0, 514, 515, 1, 0, 0, 0, 515, 553, 1, 0, 0, 0, 516, 517, 5, 104, 0, 0, 517, 520, 5, 106, 0, 0, 518, 520, 5, 143, 0, 0, 519, 516, 1, 0, 0, 0, 519, 518, 1, 0, 0, 0, 520, 522, 1, 0, 0, 0, 521, 523, 3, 42, 21, 0, 522, 521, 1, 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 553, 1, 0, 0, 0, 524, 525, 5, 46, 0, 0, 525, 526, 5, 3, 0, 0, 526, 527, 3, 68, 34, 0, 527, 528, 5, 4, 0, 0, 528, 553, 1, 0, 0, 0, 529, 536, 5, 58, 0, 0, 530, 537, 3, 36, 18, 0, 531, 537, 3, 72, 36, 0, 532, 533, 5, 3, 0, 0, 533, 534, 3, 68, 34, 0, 534, 535, 5, 4, 0, 0, 535, 537, 1, 0, 0, 0, 536, 530, 1, 0, 0, 0, 536, 531, 1, 0, 0, 0, 536, 532, 1, 0, 0, 0, 537, 553, 1, 0, 0, 0, 538, 539, 5, 47, 0, 0, 539, 553, 3, 192, 96, 0, 540, 553, 3, 40, 20, 0, 541, 542, 5, 172, 0, 0, 542, 544, 5, 173, 0, 0, 543, 541, 1, 0, 0, 0, 543, 544, 1, 0, 0, 0, 544, 545, 1, 0, 0, 0, 545, 546, 5, 35, 0, 0, 546, 547, 5, 3, 0, 0, 547, 548, 3, 68, 34, 0, 548, 550, 5, 4, 0, 0, 549, 551, 7, 3, 0, 0, 550, 549, 1, 0, 0, 0, 550, 551, 1, 0, 0, 0, 551, 553, 1, 0, 0, 0, 552, 505, 1, 0, 0, 0, 552, 519, 1, 0, 0, 0, 552, 524, 1, 0, 0, 0, 552, 529, 1, 0, 0, 0, 552, 538, 1, 0, 0, 0, 552, 540, 1, 0, 0, 0, 552, 543, 1, 0, 0, 0, 553, 35, 1, 0, 0, 0, 554, 556, 7, 4, 0, 0, 555, 554, 1, 0, 0, 0, 555, 556, 1, 0, 0, 0, 556, 557, 1, 0, 0, 0, 557, 558, 5, 189, 0, 0, 558, 37, 1, 0, 0, 0, 559, 560, 5, 51, 0, 0, 560, 562, 3, 176, 88, 0, 561, 559, 1, 0, 0, 0, 561, 562, 1, 0, 0, 0, 562, 600, 1, 0, 0, 0, 563, 564, 5, 115, 0, 0, 564, 567, 5, 97, 0, 0, 565, 567, 5, 143, 0, 0, 566, 563, 1, 0, 0, 0, 566, 565, 1, 0, 0, 0, 567, 568, 1, 0, 0, 0, 568, 569, 5, 3, 0, 0, 569, 574, 3, 24, 12, 0, 570, 571, 5, 5, 0, 0, 571, 573, 3, 24, 12, 0, 572, 570, 1, 0, 0, 0, 573, 576, 1, 0, 0, 0, 574, 572, 1, 0, 0, 0, 574, 575, 1, 0, 0, 0, 575, 577, 1, 0, 0, 0, 576, 574, 1, 0, 0, 0, 577, 579, 5, 4, 0, 0, 578, 580, 3, 42, 21, 0, 579, 578, 1, 0, 0, 0, 579, 580, 1, 0, 0, 0, 580, 601, 1, 0, 0, 0, 581, 582, 5, 46, 0, 0, 582, 583, 5, 3, 0, 0, 583, 584, 3, 68, 34, 0, 584, 585, 5, 4, 0, 0, 585, 601, 1, 0, 0, 0, 586, 587, 5, 76, 0, 0, 587, 588, 5, 97, 0, 0, 588, 589, 5, 3, 0, 0, 589, 594, 3, 190, 95, 0, 590, 591, 5, 5, 0, 0, 591, 593, 3, 190, 95, 0, 592, 590, 1, 0, 0, 0, 593, 596, 1, 0, 0, 0, 594, 592, 1, 0, 0, 0, 594, 595, 1, 0, 0, 0, 595, 597, 1, 0, 0, 0, 596, 594, 1, 0, 0, 0, 597, 598, 5, 4, 0, 0, 598, 599, 3, 40, 20, 0, 599, 601, 1, 0, 0, 0, 600, 566, 1, 0, 0, 0, 600, 581, 1, 0, 0, 0, 600, 586, 1, 0, 0, 0, 601, 39, 1, 0, 0, 0, 602, 603, 5, 119, 0, 0, 603, 615, 3, 194, 97, 0, 604, 605, 5, 3, 0, 0, 605, 610, 3, 190, 95, 0, 606, 607, 5, 5, 0, 0, 607, 609, 3, 190, 95, 0, 608, 606, 1, 0, 0, 0, 609, 612, 1, 0, 0, 0, 610, 608, 1, 0, 0, 0, 610, 611, 1, 0, 0, 0, 611, 613, 1, 0, 0, 0, 612, 610, 1, 0, 0, 0, 613, 614, 5, 4, 0, 0, 614, 616, 1, 0, 0, 0, 615, 604, 1, 0, 0, 0, 615, 616, 1, 0, 0, 0, 616, 631, 1, 0, 0, 0, 617, 618, 5, 109, 0, 0, 618, 625, 7, 5, 0, 0, 619, 620, 5, 133, 0, 0, 620, 626, 7, 6, 0, 0, 621, 626, 5, 43, 0, 0, 622, 626, 5, 125, 0, 0, 623, 624, 5, 103, 0, 0, 624, 626, 5, 28, 0, 0, 625, 619, 1, 0, 0, 0, 625, 621, 1, 0, 0, 0, 625, 622, 1, 0, 0, 0, 625, 623, 1, 0, 0, 0, 626, 630, 1, 0, 0, 0, 627, 628, 5, 101, 0, 0, 628, 630, 3, 176, 88, 0, 629, 617, 1, 0, 0, 0, 629, 627, 1, 0, 0, 0, 630, 633, 1, 0, 0, 0, 631, 629, 1, 0, 0, 0, 631, 632, 1, 0, 0, 0, 632, 642, 1, 0, 0, 0, 633, 631, 1, 0, 0, 0, 634, 636, 5, 104, 0, 0, 635, 634, 1, 0, 0, 0, 635, 636, 1, 0, 0, 0, 636, 637, 1, 0, 0, 0, 637, 640, 5, 59, 0, 0, 638, 639, 5, 88, 0, 0, 639, 641, 7, 7, 0, 0, 640, 638, 1, 0, 0, 0, 640, 641, 1, 0, 0, 0, 641, 643, 1, 0, 0, 0, 642, 635, 1, 0, 0, 0, 642, 643, 1, 0, 0, 0, 643, 41, 1, 0, 0, 0, 644, 645, 5, 109, 0, 0, 645, 646, 5, 50, 0, 0, 646, 647, 7, 8, 0, 0, 647, 43, 1, 0, 0, 0, 648, 650, 5, 52, 0, 0, 649, 651, 7, 2, 0, 0, 650, 649, 1, 0, 0, 0, 650, 651, 1, 0, 0, 0, 651, 652, 1, 0, 0, 0, 652, 656, 5, 141, 0, 0, 653, 654, 5, 82, 0, 0, 654, 655, 5, 104, 0, 0, 655, 657, 5, 72, 0, 0, 656, 653, 1, 0, 0, 0, 656, 657, 1, 0, 0, 0, 657, 661, 1, 0, 0, 0, 658, 659, 3, 182, 91, 0, 659, 660, 5, 2, 0, 0, 660, 662, 1, 0, 0, 0, 661, 658, 1, 0, 0, 0, 661, 662, 1, 0, 0, 0, 662, 663, 1, 0, 0, 0, 663, 668, 3, 198, 99, 0, 664, 669, 5, 39, 0, 0, 665, 669, 5, 30, 0, 0, 666, 667, 5, 91, 0, 0, 667, 669, 5, 107, 0, 0, 668, 664, 1, 0, 0, 0, 668, 665, 1, 0, 0, 0, 668, 666, 1, 0, 0, 0, 668, 669, 1, 0, 0, 0, 669, 684, 1, 0, 0, 0, 670, 685, 5, 61, 0, 0, 671, 685, 5, 90, 0, 0, 672, 682, 5, 144, 0, 0, 673, 674, 5, 107, 0, 0, 674, 679, 3, 190, 95, 0, 675, 676, 5, 5, 0, 0, 676, 678, 3, 190, 95, 0, 677, 675, 1, 0, 0, 0, 678, 681, 1, 0, 0, 0, 679, 677, 1, 0, 0, 0, 679, 680, 1, 0, 0, 0, 680, 683, 1, 0, 0, 0, 681, 679, 1, 0, 0, 0, 682, 673, 1, 0, 0, 0, 682, 683, 1, 0, 0, 0, 683, 685, 1, 0, 0, 0, 684, 670, 1, 0, 0, 0, 684, 671, 1, 0, 0, 0, 684, 672, 1, 0, 0, 0, 685, 686, 1, 0, 0, 0, 686, 687, 5, 109, 0, 0, 687, 691, 3, 184, 92, 0, 688, 689, 5, 75, 0, 0, 689, 690, 5, 66, 0, 0, 690, 692, 5, 129, 0, 0, 691, 688, 1, 0, 0, 0, 691, 692, 1, 0, 0, 0, 692, 695, 1, 0, 0, 0, 693, 694, 5, 150, 0, 0, 694, 696, 3, 68, 34, 0, 695, 693, 1, 0, 0, 0, 695, 696, 1, 0, 0, 0, 696, 697, 1, 0, 0, 0, 697, 706, 5, 40, 0, 0, 698, 703, 3, 106, 53, 0, 699, 703, 3, 74, 37, 0, 700, 703, 3, 60, 30, 0, 701, 703, 3, 84, 42, 0, 702, 698, 1, 0, 0, 0, 702, 699, 1, 0, 0, 0, 702, 700, 1, 0, 0, 0, 702, 701, 1, 0, 0, 0, 703, 704, 1, 0, 0, 0, 704, 705, 5, 1, 0, 0, 705, 707, 1, 0, 0, 0, 706, 702, 1, 0, 0, 0, 707, 708, 1, 0, 0, 0, 708, 706, 1, 0, 0, 0, 708, 709, 1, 0, 0, 0, 709, 710, 1, 0, 0, 0, 710, 711, 5, 68, 0, 0, 711, 45, 1, 0, 0, 0, 712, 714, 5, 52, 0, 0, 713, 715, 7, 2, 0, 0, 714, 713, 1, 0, 0, 0, 714, 715, 1, 0, 0, 0, 715, 716, 1, 0, 0, 0, 716, 720, 5, 148, 0, 0, 717, 718, 5, 82, 0, 0, 718, 719, 5, 104, 0, 0, 719, 721, 5, 72, 0, 0, 720, 717, 1, 0, 0, 0, 720, 721, 1, 0, 0, 0, 721, 725, 1, 0, 0, 0, 722, 723, 3, 182, 91, 0, 723, 724, 5, 2, 0, 0, 724, 726, 1, 0, 0, 0, 725, 722, 1, 0, 0, 0, 725, 726, 1, 0, 0, 0, 726, 727, 1, 0, 0, 0, 727, 739, 3, 200, 100, 0, 728, 729, 5, 3, 0, 0, 729, 734, 3, 190, 95, 0, 730, 731, 5, 5, 0, 0, 731, 733, 3, 190, 95, 0, 732, 730, 1, 0, 0, 0, 733, 736, 1, 0, 0, 0, 734, 732, 1, 0, 0, 0, 734, 735, 1, 0, 0, 0, 735, 737, 1, 0, 0, 0, 736, 734, 1, 0, 0, 0, 737, 738, 5, 4, 0, 0, 738, 740, 1, 0, 0, 0, 739, 728, 1, 0, 0, 0, 739, 740, 1, 0, 0, 0, 740, 741, 1, 0, 0, 0, 741, 742, 5, 35, 0, 0, 742, 743, 3, 84, 42, 0, 743, 47, 1, 0, 0, 0, 744, 745, 5, 52, 0, 0, 745, 746, 5, 149, 0, 0, 746, 750, 5, 135, 0, 0, 747, 748, 5, 82, 0, 0, 748, 749, 5, 104, 0, 0, 749, 751, 5, 72, 0, 0, 750, 747, 1, 0, 0, 0, 750, 751, 1, 0, 0, 0, 751, 755, 1, 0, 0, 0, 752, 753, 3, 182, 91, 0, 753, 754, 5, 2, 0, 0, 754, 756, 1, 0, 0, 0, 755, 752, 1, 0, 0, 0, 755, 756, 1, 0, 0, 0, 756, 757, 1, 0, 0, 0, 757, 758, 3, 184, 92, 0, 758, 759, 5, 145, 0, 0, 759, 771, 3, 202, 101, 0, 760, 761, 5, 3, 0, 0, 761, 766, 3, 170, 85, 0, 762, 763, 5, 5, 0, 0, 763, 765, 3, 170, 85, 0, 764, 762, 1, 0, 0, 0, 765, 768, 1, 0, 0, 0, 766, 764, 1, 0, 0, 0, 766, 767, 1, 0, 0, 0, 767, 769, 1, 0, 0, 0, 768, 766, 1, 0, 0, 0, 769, 770, 5, 4, 0, 0, 770, 772, 1, 0, 0, 0, 771, 760, 1, 0, 0, 0, 771, 772, 1, 0, 0, 0, 772, 49, 1, 0, 0, 0, 773, 775, 5, 152, 0, 0, 774, 776, 5, 118, 0, 0, 775, 774, 1, 0, 0, 0, 775, 776, 1, 0, 0, 0, 776, 777, 1, 0, 0, 0, 777, 778, 3, 52, 26, 0, 778, 779, 5, 35, 0, 0, 779, 780, 5, 3, 0, 0, 780, 781, 3, 84, 42, 0, 781, 791, 5, 4, 0, 0, 782, 783, 5, 5, 0, 0, 783, 784, 3, 52, 26, 0, 784, 785, 5, 35, 0, 0, 785, 786, 5, 3, 0, 0, 786, 787, 3, 84, 42, 0, 787, 788, 5, 4, 0, 0, 788, 790, 1, 0, 0, 0, 789, 782, 1, 0, 0, 0, 790, 793, 1, 0, 0, 0, 791, 789, 1, 0, 0, 0, 791, 792, 1, 0, 0, 0, 792, 51, 1, 0, 0, 0, 793, 791, 1, 0, 0, 0, 794, 806, 3, 184, 92, 0, 795, 796, 5, 3, 0, 0, 796, 801, 3, 190, 95, 0, 797, 798, 5, 5, 0, 0, 798, 800, 3, 190, 95, 0, 799, 797, 1, 0, 0, 0, 800, 803, 1, 0, 0, 0, 801, 799, 1, 0, 0, 0, 801, 802, 1, 0, 0, 0, 802, 804, 1, 0, 0, 0, 803, 801, 1, 0, 0, 0, 804, 805, 5, 4, 0, 0, 805, 807, 1, 0, 0, 0, 806, 795, 1, 0, 0, 0, 806, 807, 1, 0, 0, 0, 807, 53, 1, 0, 0, 0, 808, 809, 3, 52, 26, 0, 809, 810, 5, 35, 0, 0, 810, 811, 5, 3, 0, 0, 811, 812, 3, 162, 81, 0, 812, 814, 5, 142, 0, 0, 813, 815, 5, 31, 0, 0, 814, 813, 1, 0, 0, 0, 814, 815, 1, 0, 0, 0, 815, 816, 1, 0, 0, 0, 816, 817, 3, 164, 82, 0, 817, 818, 5, 4, 0, 0, 818, 55, 1, 0, 0, 0, 819, 831, 3, 184, 92, 0, 820, 821, 5, 3, 0, 0, 821, 826, 3, 190, 95, 0, 822, 823, 5, 5, 0, 0, 823, 825, 3, 190, 95, 0, 824, 822, 1, 0, 0, 0, 825, 828, 1, 0, 0, 0, 826, 824, 1, 0, 0, 0, 826, 827, 1, 0, 0, 0, 827, 829, 1, 0, 0, 0, 828, 826, 1, 0, 0, 0, 829, 830, 5, 4, 0, 0, 830, 832, 1, 0, 0, 0, 831, 820, 1, 0, 0, 0, 831, 832, 1, 0, 0, 0, 832, 833, 1, 0, 0, 0, 833, 834, 5, 35, 0, 0, 834, 835, 5, 3, 0, 0, 835, 836, 3, 84, 42, 0, 836, 837, 5, 4, 0, 0, 837, 57, 1, 0, 0, 0, 838, 847, 5, 126, 0, 0, 839, 848, 5, 7, 0, 0, 840, 845, 3, 68, 34, 0, 841, 843, 5, 35, 0, 0, 842, 841, 1, 0, 0, 0, 842, 843, 1, 0, 0, 0, 843, 844, 1, 0, 0, 0, 844, 846, 3, 172, 86, 0, 845, 842, 1, 0, 0, 0, 845, 846, 1, 0, 0, 0, 846, 848, 1, 0, 0, 0, 847, 839, 1, 0, 0, 0, 847, 840, 1, 0, 0, 0, 848, 862, 1, 0, 0, 0, 849, 858, 5, 5, 0, 0, 850, 859, 5, 7, 0, 0, 851, 856, 3, 68, 34, 0, 852, 854, 5, 35, 0, 0, 853, 852, 1, 0, 0, 0, 853, 854, 1, 0, 0, 0, 854, 855, 1, 0, 0, 0, 855, 857, 3, 172, 86, 0, 856, 853, 1, 0, 0, 0, 856, 857, 1, 0, 0, 0, 857, 859, 1, 0, 0, 0, 858, 850, 1, 0, 0, 0, 858, 851, 1, 0, 0, 0, 859, 861, 1, 0, 0, 0, 860, 849, 1, 0, 0, 0, 861, 864, 1, 0, 0, 0, 862, 860, 1, 0, 0, 0, 862, 863, 1, 0, 0, 0, 863, 59, 1, 0, 0, 0, 864, 862, 1, 0, 0, 0, 865, 867, 3, 50, 25, 0, 866, 865, 1, 0, 0, 0, 866, 867, 1, 0, 0, 0, 867, 868, 1, 0, 0, 0, 868, 869, 5, 61, 0, 0, 869, 870, 5, 77, 0, 0, 870, 873, 3, 112, 56, 0, 871, 872, 5, 151, 0, 0, 872, 874, 3, 68, 34, 0, 873, 871, 1, 0, 0, 0, 873, 874, 1, 0, 0, 0, 874, 876, 1, 0, 0, 0, 875, 877, 3, 58, 29, 0, 876, 875, 1, 0, 0, 0, 876, 877, 1, 0, 0, 0, 877, 61, 1, 0, 0, 0, 878, 880, 3, 50, 25, 0, 879, 878, 1, 0, 0, 0, 879, 880, 1, 0, 0, 0, 880, 881, 1, 0, 0, 0, 881, 882, 5, 61, 0, 0, 882, 883, 5, 77, 0, 0, 883, 886, 3, 112, 56, 0, 884, 885, 5, 151, 0, 0, 885, 887, 3, 68, 34, 0, 886, 884, 1, 0, 0, 0, 886, 887, 1, 0, 0, 0, 887, 892, 1, 0, 0, 0, 888, 890, 3, 134, 67, 0, 889, 888, 1, 0, 0, 0, 889, 890, 1, 0, 0, 0, 890, 891, 1, 0, 0, 0, 891, 893, 3, 136, 68, 0, 892, 889, 1, 0, 0, 0, 892, 893, 1, 0, 0, 0, 893, 895, 1, 0, 0, 0, 894, 896, 3, 58, 29, 0, 895, 894, 1, 0, 0, 0, 895, 896, 1, 0, 0, 0, 896, 63, 1, 0, 0, 0, 897, 899, 5, 63, 0, 0, 898, 900, 5, 57, 0, 0, 899, 898, 1, 0, 0, 0, 899, 900, 1, 0, 0, 0, 900, 901, 1, 0, 0, 0, 901, 902, 3, 182, 91, 0, 902, 65, 1, 0, 0, 0, 903, 904, 5, 65, 0, 0, 904, 907, 7, 9, 0, 0, 905, 906, 5, 82, 0, 0, 906, 908, 5, 72, 0, 0, 907, 905, 1, 0, 0, 0, 907, 908, 1, 0, 0, 0, 908, 912, 1, 0, 0, 0, 909, 910, 3, 182, 91, 0, 910, 911, 5, 2, 0, 0, 911, 913, 1, 0, 0, 0, 912, 909, 1, 0, 0, 0, 912, 913, 1, 0, 0, 0, 913, 914, 1, 0, 0, 0, 914, 915, 3, 228, 114, 0, 915, 67, 1, 0, 0, 0, 916, 917, 6, 34, -1, 0, 917, 1006, 3, 72, 36, 0, 918, 1006, 5, 190, 0, 0, 919, 1006, 5, 191, 0, 0, 920, 921, 3, 182, 91, 0, 921, 922, 5, 2, 0, 0, 922, 924, 1, 0, 0, 0, 923, 920, 1, 0, 0, 0, 923, 924, 1, 0, 0, 0, 924, 925, 1, 0, 0, 0, 925, 926, 3, 184, 92, 0, 926, 927, 5, 2, 0, 0, 927, 929, 1, 0, 0, 0, 928, 923, 1, 0, 0, 0, 928, 929, 1, 0, 0, 0, 929, 930, 1, 0, 0, 0, 930, 1006, 3, 190, 95, 0, 931, 932, 3, 166, 83, 0, 932, 933, 3, 68, 34, 21, 933, 1006, 1, 0, 0, 0, 934, 935, 3, 180, 90, 0, 935, 948, 5, 3, 0, 0, 936, 938, 5, 64, 0, 0, 937, 936, 1, 0, 0, 0, 937, 938, 1, 0, 0, 0, 938, 939, 1, 0, 0, 0, 939, 944, 3, 68, 34, 0, 940, 941, 5, 5, 0, 0, 941, 943, 3, 68, 34, 0, 942, 940, 1, 0, 0, 0, 943, 946, 1, 0, 0, 0, 944, 942, 1, 0, 0, 0, 944, 945, 1, 0, 0, 0, 945, 949, 1, 0, 0, 0, 946, 944, 1, 0, 0, 0, 947, 949, 5, 7, 0, 0, 948, 937, 1, 0, 0, 0, 948, 947, 1, 0, 0, 0, 948, 949, 1, 0, 0, 0, 949, 950, 1, 0, 0, 0, 950, 952, 5, 4, 0, 0, 951, 953, 3, 116, 58, 0, 952, 951, 1, 0, 0, 0, 952, 953, 1, 0, 0, 0, 953, 955, 1, 0, 0, 0, 954, 956, 3, 120, 60, 0, 955, 954, 1, 0, 0, 0, 955, 956, 1, 0, 0, 0, 956, 1006, 1, 0, 0, 0, 957, 958, 5, 3, 0, 0, 958, 963, 3, 68, 34, 0, 959, 960, 5, 5, 0, 0, 960, 962, 3, 68, 34, 0, 961, 959, 1, 0, 0, 0, 962, 965, 1, 0, 0, 0, 963, 961, 1, 0, 0, 0, 963, 964, 1, 0, 0, 0, 964, 966, 1, 0, 0, 0, 965, 963, 1, 0, 0, 0, 966, 967, 5, 4, 0, 0, 967, 1006, 1, 0, 0, 0, 968, 969, 5, 45, 0, 0, 969, 970, 5, 3, 0, 0, 970, 971, 3, 68, 34, 0, 971, 972, 5, 35, 0, 0, 972, 973, 3, 32, 16, 0, 973, 974, 5, 4, 0, 0, 974, 1006, 1, 0, 0, 0, 975, 977, 5, 104, 0, 0, 976, 975, 1, 0, 0, 0, 976, 977, 1, 0, 0, 0, 977, 978, 1, 0, 0, 0, 978, 980, 5, 72, 0, 0, 979, 976, 1, 0, 0, 0, 979, 980, 1, 0, 0, 0, 980, 981, 1, 0, 0, 0, 981, 982, 5, 3, 0, 0, 982, 983, 3, 84, 42, 0, 983, 984, 5, 4, 0, 0, 984, 1006, 1, 0, 0, 0, 985, 987, 5, 44, 0, 0, 986, 988, 3, 68, 34, 0, 987, 986, 1, 0, 0, 0, 987, 988, 1, 0, 0, 0, 988, 994, 1, 0, 0, 0, 989, 990, 5, 150, 0, 0, 990, 991, 3, 68, 34, 0, 991, 992, 5, 138, 0, 0, 992, 993, 3, 68, 34, 0, 993, 995, 1, 0, 0, 0, 994, 989, 1, 0, 0, 0, 995, 996, 1, 0, 0, 0, 996, 994, 1, 0, 0, 0, 996, 997, 1, 0, 0, 0, 997, 1000, 1, 0, 0, 0, 998, 999, 5, 67, 0, 0, 999, 1001, 3, 68, 34, 0, 1000, 998, 1, 0, 0, 0, 1000, 1001, 1, 0, 0, 0, 1001, 1002, 1, 0, 0, 0, 1002, 1003, 5, 68, 0, 0, 1003, 1006, 1, 0, 0, 0, 1004, 1006, 3, 70, 35, 0, 1005, 916, 1, 0, 0, 0, 1005, 918, 1, 0, 0, 0, 1005, 919, 1, 0, 0, 0, 1005, 928, 1, 0, 0, 0, 1005, 931, 1, 0, 0, 0, 1005, 934, 1, 0, 0, 0, 1005, 957, 1, 0, 0, 0, 1005, 968, 1, 0, 0, 0, 1005, 979, 1, 0, 0, 0, 1005, 985, 1, 0, 0, 0, 1005, 1004, 1, 0, 0, 0, 1006, 1126, 1, 0, 0, 0, 1007, 1008, 10, 20, 0, 0, 1008, 1009, 5, 13, 0, 0, 1009, 1125, 3, 68, 34, 21, 1010, 1011, 10, 19, 0, 0, 1011, 1012, 7, 10, 0, 0, 1012, 1125, 3, 68, 34, 20, 1013, 1014, 10, 18, 0, 0, 1014, 1015, 7, 11, 0, 0, 1015, 1125, 3, 68, 34, 19, 1016, 1017, 10, 17, 0, 0, 1017, 1018, 7, 4, 0, 0, 1018, 1125, 3, 68, 34, 18, 1019, 1020, 10, 16, 0, 0, 1020, 1021, 7, 12, 0, 0, 1021, 1125, 3, 68, 34, 17, 1022, 1023, 10, 15, 0, 0, 1023, 1024, 7, 13, 0, 0, 1024, 1125, 3, 68, 34, 16, 1025, 1041, 10, 14, 0, 0, 1026, 1042, 5, 6, 0, 0, 1027, 1042, 5, 24, 0, 0, 1028, 1042, 5, 25, 0, 0, 1029, 1042, 5, 26, 0, 0, 1030, 1042, 5, 94, 0, 0, 1031, 1032, 5, 94, 0, 0, 1032, 1042, 5, 104, 0, 0, 1033, 1035, 5, 104, 0, 0, 1034, 1033, 1, 0, 0, 0, 1034, 1035, 1, 0, 0, 0, 1035, 1036, 1, 0, 0, 0, 1036, 1042, 5, 85, 0, 0, 1037, 1042, 5, 99, 0, 0, 1038, 1042, 5, 79, 0, 0, 1039, 1042, 5, 101, 0, 0, 1040, 1042, 5, 120, 0, 0, 1041, 1026, 1, 0, 0, 0, 1041, 1027, 1, 0, 0, 0, 1041, 1028, 1, 0, 0, 0, 1041, 1029, 1, 0, 0, 0, 1041, 1030, 1, 0, 0, 0, 1041, 1031, 1, 0, 0, 0, 1041, 1034, 1, 0, 0, 0, 1041, 1037, 1, 0, 0, 0, 1041, 1038, 1, 0, 0, 0, 1041, 1039, 1, 0, 0, 0, 1041, 1040, 1, 0, 0, 0, 1042, 1043, 1, 0, 0, 0, 1043, 1125, 3, 68, 34, 15, 1044, 1045, 10, 12, 0, 0, 1045, 1046, 5, 34, 0, 0, 1046, 1125, 3, 68, 34, 13, 1047, 1048, 10, 11, 0, 0, 1048, 1049, 5, 110, 0, 0, 1049, 1125, 3, 68, 34, 12, 1050, 1052, 10, 4, 0, 0, 1051, 1053, 5, 104, 0, 0, 1052, 1051, 1, 0, 0, 0, 1052, 1053, 1, 0, 0, 0, 1053, 1054, 1, 0, 0, 0, 1054, 1055, 5, 41, 0, 0, 1055, 1056, 3, 68, 34, 0, 1056, 1057, 5, 34, 0, 0, 1057, 1058, 3, 68, 34, 5, 1058, 1125, 1, 0, 0, 0, 1059, 1061, 10, 13, 0, 0, 1060, 1062, 5, 104, 0, 0, 1061, 1060, 1, 0, 0, 0, 1061, 1062, 1, 0, 0, 0, 1062, 1063, 1, 0, 0, 0, 1063, 1102, 5, 85, 0, 0, 1064, 1074, 5, 3, 0, 0, 1065, 1075, 3, 84, 42, 0, 1066, 1071, 3, 68, 34, 0, 1067, 1068, 5, 5, 0, 0, 1068, 1070, 3, 68, 34, 0, 1069, 1067, 1, 0, 0, 0, 1070, 1073, 1, 0, 0, 0, 1071, 1069, 1, 0, 0, 0, 1071, 1072, 1, 0, 0, 0, 1072, 1075, 1, 0, 0, 0, 1073, 1071, 1, 0, 0, 0, 1074, 1065, 1, 0, 0, 0, 1074, 1066, 1, 0, 0, 0, 1074, 1075, 1, 0, 0, 0, 1075, 1076, 1, 0, 0, 0, 1076, 1103, 5, 4, 0, 0, 1077, 1078, 3, 182, 91, 0, 1078, 1079, 5, 2, 0, 0, 1079, 1081, 1, 0, 0, 0, 1080, 1077, 1, 0, 0, 0, 1080, 1081, 1, 0, 0, 0, 1081, 1082, 1, 0, 0, 0, 1082, 1103, 3, 184, 92, 0, 1083, 1084, 3, 182, 91, 0, 1084, 1085, 5, 2, 0, 0, 1085, 1087, 1, 0, 0, 0, 1086, 1083, 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087, 1088, 1, 0, 0, 0, 1088, 1089, 3, 226, 113, 0, 1089, 1098, 5, 3, 0, 0, 1090, 1095, 3, 68, 34, 0, 1091, 1092, 5, 5, 0, 0, 1092, 1094, 3, 68, 34, 0, 1093, 1091, 1, 0, 0, 0, 1094, 1097, 1, 0, 0, 0, 1095, 1093, 1, 0, 0, 0, 1095, 1096, 1, 0, 0, 0, 1096, 1099, 1, 0, 0, 0, 1097, 1095, 1, 0, 0, 0, 1098, 1090, 1, 0, 0, 0, 1098, 1099, 1, 0, 0, 0, 1099, 1100, 1, 0, 0, 0, 1100, 1101, 5, 4, 0, 0, 1101, 1103, 1, 0, 0, 0, 1102, 1064, 1, 0, 0, 0, 1102, 1080, 1, 0, 0, 0, 1102, 1086, 1, 0, 0, 0, 1103, 1125, 1, 0, 0, 0, 1104, 1105, 10, 7, 0, 0, 1105, 1106, 5, 47, 0, 0, 1106, 1125, 3, 192, 96, 0, 1107, 1109, 10, 6, 0, 0, 1108, 1110, 5, 104, 0, 0, 1109, 1108, 1, 0, 0, 0, 1109, 1110, 1, 0, 0, 0, 1110, 1111, 1, 0, 0, 0, 1111, 1112, 7, 14, 0, 0, 1112, 1115, 3, 68, 34, 0, 1113, 1114, 5, 69, 0, 0, 1114, 1116, 3, 68, 34, 0, 1115, 1113, 1, 0, 0, 0, 1115, 1116, 1, 0, 0, 0, 1116, 1125, 1, 0, 0, 0, 1117, 1122, 10, 5, 0, 0, 1118, 1123, 5, 95, 0, 0, 1119, 1123, 5, 105, 0, 0, 1120, 1121, 5, 104, 0, 0, 1121, 1123, 5, 106, 0, 0, 1122, 1118, 1, 0, 0, 0, 1122, 1119, 1, 0, 0, 0, 1122, 1120, 1, 0, 0, 0, 1123, 1125, 1, 0, 0, 0, 1124, 1007, 1, 0, 0, 0, 1124, 1010, 1, 0, 0, 0, 1124, 1013, 1, 0, 0, 0, 1124, 1016, 1, 0, 0, 0, 1124, 1019, 1, 0, 0, 0, 1124, 1022, 1, 0, 0, 0, 1124, 1025, 1, 0, 0, 0, 1124, 1044, 1, 0, 0, 0, 1124, 1047, 1, 0, 0, 0, 1124, 1050, 1, 0, 0, 0, 1124, 1059, 1, 0, 0, 0, 1124, 1104, 1, 0, 0, 0, 1124, 1107, 1, 0, 0, 0, 1124, 1117, 1, 0, 0, 0, 1125, 1128, 1, 0, 0, 0, 1126, 1124, 1, 0, 0, 0, 1126, 1127, 1, 0, 0, 0, 1127, 69, 1, 0, 0, 0, 1128, 1126, 1, 0, 0, 0, 1129, 1130, 5, 117, 0, 0, 1130, 1135, 5, 3, 0, 0, 1131, 1136, 5, 83, 0, 0, 1132, 1133, 7, 15, 0, 0, 1133, 1134, 5, 5, 0, 0, 1134, 1136, 3, 168, 84, 0, 1135, 1131, 1, 0, 0, 0, 1135, 1132, 1, 0, 0, 0, 1136, 1137, 1, 0, 0, 0, 1137, 1138, 5, 4, 0, 0, 1138, 71, 1, 0, 0, 0, 1139, 1140, 7, 16, 0, 0, 1140, 73, 1, 0, 0, 0, 1141, 1143, 3, 50, 25, 0, 1142, 1141, 1, 0, 0, 0, 1142, 1143, 1, 0, 0, 0, 1143, 1149, 1, 0, 0, 0, 1144, 1150, 5, 90, 0, 0, 1145, 1150, 5, 124, 0, 0, 1146, 1147, 5, 90, 0, 0, 1147, 1148, 5, 110, 0, 0, 1148, 1150, 7, 8, 0, 0, 1149, 1144, 1, 0, 0, 0, 1149, 1145, 1, 0, 0, 0, 1149, 1146, 1, 0, 0, 0, 1150, 1151, 1, 0, 0, 0, 1151, 1155, 5, 93, 0, 0, 1152, 1153, 3, 182, 91, 0, 1153, 1154, 5, 2, 0, 0, 1154, 1156, 1, 0, 0, 0, 1155, 1152, 1, 0, 0, 0, 1155, 1156, 1, 0, 0, 0, 1156, 1157, 1, 0, 0, 0, 1157, 1160, 3, 184, 92, 0, 1158, 1159, 5, 35, 0, 0, 1159, 1161, 3, 208, 104, 0, 1160, 1158, 1, 0, 0, 0, 1160, 1161, 1, 0, 0, 0, 1161, 1173, 1, 0, 0, 0, 1162, 1163, 5, 3, 0, 0, 1163, 1168, 3, 190, 95, 0, 1164, 1165, 5, 5, 0, 0, 1165, 1167, 3, 190, 95, 0, 1166, 1164, 1, 0, 0, 0, 1167, 1170, 1, 0, 0, 0, 1168, 1166, 1, 0, 0, 0, 1168, 1169, 1, 0, 0, 0, 1169, 1171, 1, 0, 0, 0, 1170, 1168, 1, 0, 0, 0, 1171, 1172, 5, 4, 0, 0, 1172, 1174, 1, 0, 0, 0, 1173, 1162, 1, 0, 0, 0, 1173, 1174, 1, 0, 0, 0, 1174, 1206, 1, 0, 0, 0, 1175, 1176, 5, 147, 0, 0, 1176, 1177, 5, 3, 0, 0, 1177, 1182, 3, 68, 34, 0, 1178, 1179, 5, 5, 0, 0, 1179, 1181, 3, 68, 34, 0, 1180, 1178, 1, 0, 0, 0, 1181, 1184, 1, 0, 0, 0, 1182, 1180, 1, 0, 0, 0, 1182, 1183, 1, 0, 0, 0, 1183, 1185, 1, 0, 0, 0, 1184, 1182, 1, 0, 0, 0, 1185, 1200, 5, 4, 0, 0, 1186, 1187, 5, 5, 0, 0, 1187, 1188, 5, 3, 0, 0, 1188, 1193, 3, 68, 34, 0, 1189, 1190, 5, 5, 0, 0, 1190, 1192, 3, 68, 34, 0, 1191, 1189, 1, 0, 0, 0, 1192, 1195, 1, 0, 0, 0, 1193, 1191, 1, 0, 0, 0, 1193, 1194, 1, 0, 0, 0, 1194, 1196, 1, 0, 0, 0, 1195, 1193, 1, 0, 0, 0, 1196, 1197, 5, 4, 0, 0, 1197, 1199, 1, 0, 0, 0, 1198, 1186, 1, 0, 0, 0, 1199, 1202, 1, 0, 0, 0, 1200, 1198, 1, 0, 0, 0, 1200, 1201, 1, 0, 0, 0, 1201, 1207, 1, 0, 0, 0, 1202, 1200, 1, 0, 0, 0, 1203, 1207, 3, 84, 42, 0, 1204, 1205, 5, 58, 0, 0, 1205, 1207, 5, 147, 0, 0, 1206, 1175, 1, 0, 0, 0, 1206, 1203, 1, 0, 0, 0, 1206, 1204, 1, 0, 0, 0, 1207, 1209, 1, 0, 0, 0, 1208, 1210, 3, 76, 38, 0, 1209, 1208, 1, 0, 0, 0, 1209, 1210, 1, 0, 0, 0, 1210, 1212, 1, 0, 0, 0, 1211, 1213, 3, 58, 29, 0, 1212, 1211, 1, 0, 0, 0, 1212, 1213, 1, 0, 0, 0, 1213, 75, 1, 0, 0, 0, 1214, 1215, 5, 109, 0, 0, 1215, 1230, 5, 50, 0, 0, 1216, 1217, 5, 3, 0, 0, 1217, 1222, 3, 24, 12, 0, 1218, 1219, 5, 5, 0, 0, 1219, 1221, 3, 24, 12, 0, 1220, 1218, 1, 0, 0, 0, 1221, 1224, 1, 0, 0, 0, 1222, 1220, 1, 0, 0, 0, 1222, 1223, 1, 0, 0, 0, 1223, 1225, 1, 0, 0, 0, 1224, 1222, 1, 0, 0, 0, 1225, 1228, 5, 4, 0, 0, 1226, 1227, 5, 151, 0, 0, 1227, 1229, 3, 68, 34, 0, 1228, 1226, 1, 0, 0, 0, 1228, 1229, 1, 0, 0, 0, 1229, 1231, 1, 0, 0, 0, 1230, 1216, 1, 0, 0, 0, 1230, 1231, 1, 0, 0, 0, 1231, 1232, 1, 0, 0, 0, 1232, 1259, 5, 186, 0, 0, 1233, 1260, 5, 187, 0, 0, 1234, 1235, 5, 144, 0, 0, 1235, 1238, 5, 133, 0, 0, 1236, 1239, 3, 190, 95, 0, 1237, 1239, 3, 108, 54, 0, 1238, 1236, 1, 0, 0, 0, 1238, 1237, 1, 0, 0, 0, 1239, 1240, 1, 0, 0, 0, 1240, 1241, 5, 6, 0, 0, 1241, 1252, 3, 68, 34, 0, 1242, 1245, 5, 5, 0, 0, 1243, 1246, 3, 190, 95, 0, 1244, 1246, 3, 108, 54, 0, 1245, 1243, 1, 0, 0, 0, 1245, 1244, 1, 0, 0, 0, 1246, 1247, 1, 0, 0, 0, 1247, 1248, 5, 6, 0, 0, 1248, 1249, 3, 68, 34, 0, 1249, 1251, 1, 0, 0, 0, 1250, 1242, 1, 0, 0, 0, 1251, 1254, 1, 0, 0, 0, 1252, 1250, 1, 0, 0, 0, 1252, 1253, 1, 0, 0, 0, 1253, 1257, 1, 0, 0, 0, 1254, 1252, 1, 0, 0, 0, 1255, 1256, 5, 151, 0, 0, 1256, 1258, 3, 68, 34, 0, 1257, 1255, 1, 0, 0, 0, 1257, 1258, 1, 0, 0, 0, 1258, 1260, 1, 0, 0, 0, 1259, 1233, 1, 0, 0, 0, 1259, 1234, 1, 0, 0, 0, 1260, 77, 1, 0, 0, 0, 1261, 1265, 5, 114, 0, 0, 1262, 1263, 3, 182, 91, 0, 1263, 1264, 5, 2, 0, 0, 1264, 1266, 1, 0, 0, 0, 1265, 1262, 1, 0, 0, 0, 1265, 1266, 1, 0, 0, 0, 1266, 1267, 1, 0, 0, 0, 1267, 1274, 3, 204, 102, 0, 1268, 1269, 5, 6, 0, 0, 1269, 1275, 3, 80, 40, 0, 1270, 1271, 5, 3, 0, 0, 1271, 1272, 3, 80, 40, 0, 1272, 1273, 5, 4, 0, 0, 1273, 1275, 1, 0, 0, 0, 1274, 1268, 1, 0, 0, 0, 1274, 1270, 1, 0, 0, 0, 1274, 1275, 1, 0, 0, 0, 1275, 79, 1, 0, 0, 0, 1276, 1280, 3, 36, 18, 0, 1277, 1280, 3, 176, 88, 0, 1278, 1280, 5, 192, 0, 0, 1279, 1276, 1, 0, 0, 0, 1279, 1277, 1, 0, 0, 0, 1279, 1278, 1, 0, 0, 0, 1280, 81, 1, 0, 0, 0, 1281, 1292, 5, 121, 0, 0, 1282, 1293, 3, 192, 96, 0, 1283, 1284, 3, 182, 91, 0, 1284, 1285, 5, 2, 0, 0, 1285, 1287, 1, 0, 0, 0, 1286, 1283, 1, 0, 0, 0, 1286, 1287, 1, 0, 0, 0, 1287, 1290, 1, 0, 0, 0, 1288, 1291, 3, 184, 92, 0, 1289, 1291, 3, 196, 98, 0, 1290, 1288, 1, 0, 0, 0, 1290, 1289, 1, 0, 0, 0, 1291, 1293, 1, 0, 0, 0, 1292, 1282, 1, 0, 0, 0, 1292, 1286, 1, 0, 0, 0, 1292, 1293, 1, 0, 0, 0, 1293, 83, 1, 0, 0, 0, 1294, 1296, 3, 132, 66, 0, 1295, 1294, 1, 0, 0, 0, 1295, 1296, 1, 0, 0, 0, 1296, 1297, 1, 0, 0, 0, 1297, 1303, 3, 88, 44, 0, 1298, 1299, 3, 104, 52, 0, 1299, 1300, 3, 88, 44, 0, 1300, 1302, 1, 0, 0, 0, 1301, 1298, 1, 0, 0, 0, 1302, 1305, 1, 0, 0, 0, 1303, 1301, 1, 0, 0, 0, 1303, 1304, 1, 0, 0, 0, 1304, 1307, 1, 0, 0, 0, 1305, 1303, 1, 0, 0, 0, 1306, 1308, 3, 134, 67, 0, 1307, 1306, 1, 0, 0, 0, 1307, 1308, 1, 0, 0, 0, 1308, 1310, 1, 0, 0, 0, 1309, 1311, 3, 136, 68, 0, 1310, 1309, 1, 0, 0, 0, 1310, 1311, 1, 0, 0, 0, 1311, 85, 1, 0, 0, 0, 1312, 1319, 3, 96, 48, 0, 1313, 1314, 3, 100, 50, 0, 1314, 1315, 3, 96, 48, 0, 1315, 1316, 3, 102, 51, 0, 1316, 1318, 1, 0, 0, 0, 1317, 1313, 1, 0, 0, 0, 1318, 1321, 1, 0, 0, 0, 1319, 1317, 1, 0, 0, 0, 1319, 1320, 1, 0, 0, 0, 1320, 87, 1, 0, 0, 0, 1321, 1319, 1, 0, 0, 0, 1322, 1324, 5, 132, 0, 0, 1323, 1325, 7, 17, 0, 0, 1324, 1323, 1, 0, 0, 0, 1324, 1325, 1, 0, 0, 0, 1325, 1326, 1, 0, 0, 0, 1326, 1331, 3, 98, 49, 0, 1327, 1328, 5, 5, 0, 0, 1328, 1330, 3, 98, 49, 0, 1329, 1327, 1, 0, 0, 0, 1330, 1333, 1, 0, 0, 0, 1331, 1329, 1, 0, 0, 0, 1331, 1332, 1, 0, 0, 0, 1332, 1346, 1, 0, 0, 0, 1333, 1331, 1, 0, 0, 0, 1334, 1344, 5, 77, 0, 0, 1335, 1340, 3, 96, 48, 0, 1336, 1337, 5, 5, 0, 0, 1337, 1339, 3, 96, 48, 0, 1338, 1336, 1, 0, 0, 0, 1339, 1342, 1, 0, 0, 0, 1340, 1338, 1, 0, 0, 0, 1340, 1341, 1, 0, 0, 0, 1341, 1345, 1, 0, 0, 0, 1342, 1340, 1, 0, 0, 0, 1343, 1345, 3, 86, 43, 0, 1344, 1335, 1, 0, 0, 0, 1344, 1343, 1, 0, 0, 0, 1345, 1347, 1, 0, 0, 0, 1346, 1334, 1, 0, 0, 0, 1346, 1347, 1, 0, 0, 0, 1347, 1350, 1, 0, 0, 0, 1348, 1349, 5, 151, 0, 0, 1349, 1351, 3, 68, 34, 0, 1350, 1348, 1, 0, 0, 0, 1350, 1351, 1, 0, 0, 0, 1351, 1366, 1, 0, 0, 0, 1352, 1353, 5, 80, 0, 0, 1353, 1354, 5, 42, 0, 0, 1354, 1359, 3, 68, 34, 0, 1355, 1356, 5, 5, 0, 0, 1356, 1358, 3, 68, 34, 0, 1357, 1355, 1, 0, 0, 0, 1358, 1361, 1, 0, 0, 0, 1359, 1357, 1, 0, 0, 0, 1359, 1360, 1, 0, 0, 0, 1360, 1364, 1, 0, 0, 0, 1361, 1359, 1, 0, 0, 0, 1362, 1363, 5, 81, 0, 0, 1363, 1365, 3, 68, 34, 0, 1364, 1362, 1, 0, 0, 0, 1364, 1365, 1, 0, 0, 0, 1365, 1367, 1, 0, 0, 0, 1366, 1352, 1, 0, 0, 0, 1366, 1367, 1, 0, 0, 0, 1367, 1382, 1, 0, 0, 0, 1368, 1369, 5, 177, 0, 0, 1369, 1370, 3, 214, 107, 0, 1370, 1371, 5, 35, 0, 0, 1371, 1379, 3, 118, 59, 0, 1372, 1373, 5, 5, 0, 0, 1373, 1374, 3, 214, 107, 0, 1374, 1375, 5, 35, 0, 0, 1375, 1376, 3, 118, 59, 0, 1376, 1378, 1, 0, 0, 0, 1377, 1372, 1, 0, 0, 0, 1378, 1381, 1, 0, 0, 0, 1379, 1377, 1, 0, 0, 0, 1379, 1380, 1, 0, 0, 0, 1380, 1383, 1, 0, 0, 0, 1381, 1379, 1, 0, 0, 0, 1382, 1368, 1, 0, 0, 0, 1382, 1383, 1, 0, 0, 0, 1383, 1413, 1, 0, 0, 0, 1384, 1385, 5, 147, 0, 0, 1385, 1386, 5, 3, 0, 0, 1386, 1391, 3, 68, 34, 0, 1387, 1388, 5, 5, 0, 0, 1388, 1390, 3, 68, 34, 0, 1389, 1387, 1, 0, 0, 0, 1390, 1393, 1, 0, 0, 0, 1391, 1389, 1, 0, 0, 0, 1391, 1392, 1, 0, 0, 0, 1392, 1394, 1, 0, 0, 0, 1393, 1391, 1, 0, 0, 0, 1394, 1409, 5, 4, 0, 0, 1395, 1396, 5, 5, 0, 0, 1396, 1397, 5, 3, 0, 0, 1397, 1402, 3, 68, 34, 0, 1398, 1399, 5, 5, 0, 0, 1399, 1401, 3, 68, 34, 0, 1400, 1398, 1, 0, 0, 0, 1401, 1404, 1, 0, 0, 0, 1402, 1400, 1, 0, 0, 0, 1402, 1403, 1, 0, 0, 0, 1403, 1405, 1, 0, 0, 0, 1404, 1402, 1, 0, 0, 0, 1405, 1406, 5, 4, 0, 0, 1406, 1408, 1, 0, 0, 0, 1407, 1395, 1, 0, 0, 0, 1408, 1411, 1, 0, 0, 0, 1409, 1407, 1, 0, 0, 0, 1409, 1410, 1, 0, 0, 0, 1410, 1413, 1, 0, 0, 0, 1411, 1409, 1, 0, 0, 0, 1412, 1322, 1, 0, 0, 0, 1412, 1384, 1, 0, 0, 0, 1413, 89, 1, 0, 0, 0, 1414, 1415, 3, 84, 42, 0, 1415, 91, 1, 0, 0, 0, 1416, 1418, 3, 132, 66, 0, 1417, 1416, 1, 0, 0, 0, 1417, 1418, 1, 0, 0, 0, 1418, 1419, 1, 0, 0, 0, 1419, 1421, 3, 88, 44, 0, 1420, 1422, 3, 134, 67, 0, 1421, 1420, 1, 0, 0, 0, 1421, 1422, 1, 0, 0, 0, 1422, 1424, 1, 0, 0, 0, 1423, 1425, 3, 136, 68, 0, 1424, 1423, 1, 0, 0, 0, 1424, 1425, 1, 0, 0, 0, 1425, 93, 1, 0, 0, 0, 1426, 1428, 3, 132, 66, 0, 1427, 1426, 1, 0, 0, 0, 1427, 1428, 1, 0, 0, 0, 1428, 1429, 1, 0, 0, 0, 1429, 1439, 3, 88, 44, 0, 1430, 1432, 5, 142, 0, 0, 1431, 1433, 5, 31, 0, 0, 1432, 1431, 1, 0, 0, 0, 1432, 1433, 1, 0, 0, 0, 1433, 1437, 1, 0, 0, 0, 1434, 1437, 5, 92, 0, 0, 1435, 1437, 5, 70, 0, 0, 1436, 1430, 1, 0, 0, 0, 1436, 1434, 1, 0, 0, 0, 1436, 1435, 1, 0, 0, 0, 1437, 1438, 1, 0, 0, 0, 1438, 1440, 3, 88, 44, 0, 1439, 1436, 1, 0, 0, 0, 1440, 1441, 1, 0, 0, 0, 1441, 1439, 1, 0, 0, 0, 1441, 1442, 1, 0, 0, 0, 1442, 1444, 1, 0, 0, 0, 1443, 1445, 3, 134, 67, 0, 1444, 1443, 1, 0, 0, 0, 1444, 1445, 1, 0, 0, 0, 1445, 1447, 1, 0, 0, 0, 1446, 1448, 3, 136, 68, 0, 1447, 1446, 1, 0, 0, 0, 1447, 1448, 1, 0, 0, 0, 1448, 95, 1, 0, 0, 0, 1449, 1450, 3, 182, 91, 0, 1450, 1451, 5, 2, 0, 0, 1451, 1453, 1, 0, 0, 0, 1452, 1449, 1, 0, 0, 0, 1452, 1453, 1, 0, 0, 0, 1453, 1454, 1, 0, 0, 0, 1454, 1459, 3, 184, 92, 0, 1455, 1457, 5, 35, 0, 0, 1456, 1455, 1, 0, 0, 0, 1456, 1457, 1, 0, 0, 0, 1457, 1458, 1, 0, 0, 0, 1458, 1460, 3, 208, 104, 0, 1459, 1456, 1, 0, 0, 0, 1459, 1460, 1, 0, 0, 0, 1460, 1466, 1, 0, 0, 0, 1461, 1462, 5, 87, 0, 0, 1462, 1463, 5, 42, 0, 0, 1463, 1467, 3, 196, 98, 0, 1464, 1465, 5, 104, 0, 0, 1465, 1467, 5, 87, 0, 0, 1466, 1461, 1, 0, 0, 0, 1466, 1464, 1, 0, 0, 0, 1466, 1467, 1, 0, 0, 0, 1467, 1578, 1, 0, 0, 0, 1468, 1469, 3, 182, 91, 0, 1469, 1470, 5, 2, 0, 0, 1470, 1472, 1, 0, 0, 0, 1471, 1468, 1, 0, 0, 0, 1471, 1472, 1, 0, 0, 0, 1472, 1473, 1, 0, 0, 0, 1473, 1474, 3, 226, 113, 0, 1474, 1475, 5, 3, 0, 0, 1475, 1480, 3, 68, 34, 0, 1476, 1477, 5, 5, 0, 0, 1477, 1479, 3, 68, 34, 0, 1478, 1476, 1, 0, 0, 0, 1479, 1482, 1, 0, 0, 0, 1480, 1478, 1, 0, 0, 0, 1480, 1481, 1, 0, 0, 0, 1481, 1483, 1, 0, 0, 0, 1482, 1480, 1, 0, 0, 0, 1483, 1488, 5, 4, 0, 0, 1484, 1486, 5, 35, 0, 0, 1485, 1484, 1, 0, 0, 0, 1485, 1486, 1, 0, 0, 0, 1486, 1487, 1, 0, 0, 0, 1487, 1489, 3, 208, 104, 0, 1488, 1485, 1, 0, 0, 0, 1488, 1489, 1, 0, 0, 0, 1489, 1578, 1, 0, 0, 0, 1490, 1500, 5, 3, 0, 0, 1491, 1496, 3, 96, 48, 0, 1492, 1493, 5, 5, 0, 0, 1493, 1495, 3, 96, 48, 0, 1494, 1492, 1, 0, 0, 0, 1495, 1498, 1, 0, 0, 0, 1496, 1494, 1, 0, 0, 0, 1496, 1497, 1, 0, 0, 0, 1497, 1501, 1, 0, 0, 0, 1498, 1496, 1, 0, 0, 0, 1499, 1501, 3, 86, 43, 0, 1500, 1491, 1, 0, 0, 0, 1500, 1499, 1, 0, 0, 0, 1501, 1502, 1, 0, 0, 0, 1502, 1503, 5, 4, 0, 0, 1503, 1578, 1, 0, 0, 0, 1504, 1505, 5, 3, 0, 0, 1505, 1506, 3, 84, 42, 0, 1506, 1511, 5, 4, 0, 0, 1507, 1509, 5, 35, 0, 0, 1508, 1507, 1, 0, 0, 0, 1508, 1509, 1, 0, 0, 0, 1509, 1510, 1, 0, 0, 0, 1510, 1512, 3, 208, 104, 0, 1511, 1508, 1, 0, 0, 0, 1511, 1512, 1, 0, 0, 0, 1512, 1578, 1, 0, 0, 0, 1513, 1514, 3, 182, 91, 0, 1514, 1515, 5, 2, 0, 0, 1515, 1517, 1, 0, 0, 0, 1516, 1513, 1, 0, 0, 0, 1516, 1517, 1, 0, 0, 0, 1517, 1518, 1, 0, 0, 0, 1518, 1523, 3, 184, 92, 0, 1519, 1521, 5, 35, 0, 0, 1520, 1519, 1, 0, 0, 0, 1520, 1521, 1, 0, 0, 0, 1521, 1522, 1, 0, 0, 0, 1522, 1524, 3, 210, 105, 0, 1523, 1520, 1, 0, 0, 0, 1523, 1524, 1, 0, 0, 0, 1524, 1530, 1, 0, 0, 0, 1525, 1526, 5, 87, 0, 0, 1526, 1527, 5, 42, 0, 0, 1527, 1531, 3, 196, 98, 0, 1528, 1529, 5, 104, 0, 0, 1529, 1531, 5, 87, 0, 0, 1530, 1525, 1, 0, 0, 0, 1530, 1528, 1, 0, 0, 0, 1530, 1531, 1, 0, 0, 0, 1531, 1578, 1, 0, 0, 0, 1532, 1533, 3, 182, 91, 0, 1533, 1534, 5, 2, 0, 0, 1534, 1536, 1, 0, 0, 0, 1535, 1532, 1, 0, 0, 0, 1535, 1536, 1, 0, 0, 0, 1536, 1537, 1, 0, 0, 0, 1537, 1538, 3, 226, 113, 0, 1538, 1539, 5, 3, 0, 0, 1539, 1544, 3, 68, 34, 0, 1540, 1541, 5, 5, 0, 0, 1541, 1543, 3, 68, 34, 0, 1542, 1540, 1, 0, 0, 0, 1543, 1546, 1, 0, 0, 0, 1544, 1542, 1, 0, 0, 0, 1544, 1545, 1, 0, 0, 0, 1545, 1547, 1, 0, 0, 0, 1546, 1544, 1, 0, 0, 0, 1547, 1552, 5, 4, 0, 0, 1548, 1550, 5, 35, 0, 0, 1549, 1548, 1, 0, 0, 0, 1549, 1550, 1, 0, 0, 0, 1550, 1551, 1, 0, 0, 0, 1551, 1553, 3, 210, 105, 0, 1552, 1549, 1, 0, 0, 0, 1552, 1553, 1, 0, 0, 0, 1553, 1578, 1, 0, 0, 0, 1554, 1564, 5, 3, 0, 0, 1555, 1560, 3, 96, 48, 0, 1556, 1557, 5, 5, 0, 0, 1557, 1559, 3, 96, 48, 0, 1558, 1556, 1, 0, 0, 0, 1559, 1562, 1, 0, 0, 0, 1560, 1558, 1, 0, 0, 0, 1560, 1561, 1, 0, 0, 0, 1561, 1565, 1, 0, 0, 0, 1562, 1560, 1, 0, 0, 0, 1563, 1565, 3, 86, 43, 0, 1564, 1555, 1, 0, 0, 0, 1564, 1563, 1, 0, 0, 0, 1565, 1566, 1, 0, 0, 0, 1566, 1567, 5, 4, 0, 0, 1567, 1578, 1, 0, 0, 0, 1568, 1569, 5, 3, 0, 0, 1569, 1570, 3, 84, 42, 0, 1570, 1575, 5, 4, 0, 0, 1571, 1573, 5, 35, 0, 0, 1572, 1571, 1, 0, 0, 0, 1572, 1573, 1, 0, 0, 0, 1573, 1574, 1, 0, 0, 0, 1574, 1576, 3, 210, 105, 0, 1575, 1572, 1, 0, 0, 0, 1575, 1576, 1, 0, 0, 0, 1576, 1578, 1, 0, 0, 0, 1577, 1452, 1, 0, 0, 0, 1577, 1471, 1, 0, 0, 0, 1577, 1490, 1, 0, 0, 0, 1577, 1504, 1, 0, 0, 0, 1577, 1516, 1, 0, 0, 0, 1577, 1535, 1, 0, 0, 0, 1577, 1554, 1, 0, 0, 0, 1577, 1568, 1, 0, 0, 0, 1578, 97, 1, 0, 0, 0, 1579, 1592, 5, 7, 0, 0, 1580, 1581, 3, 184, 92, 0, 1581, 1582, 5, 2, 0, 0, 1582, 1583, 5, 7, 0, 0, 1583, 1592, 1, 0, 0, 0, 1584, 1589, 3, 68, 34, 0, 1585, 1587, 5, 35, 0, 0, 1586, 1585, 1, 0, 0, 0, 1586, 1587, 1, 0, 0, 0, 1587, 1588, 1, 0, 0, 0, 1588, 1590, 3, 172, 86, 0, 1589, 1586, 1, 0, 0, 0, 1589, 1590, 1, 0, 0, 0, 1590, 1592, 1, 0, 0, 0, 1591, 1579, 1, 0, 0, 0, 1591, 1580, 1, 0, 0, 0, 1591, 1584, 1, 0, 0, 0, 1592, 99, 1, 0, 0, 0, 1593, 1608, 5, 5, 0, 0, 1594, 1596, 5, 102, 0, 0, 1595, 1594, 1, 0, 0, 0, 1595, 1596, 1, 0, 0, 0, 1596, 1602, 1, 0, 0, 0, 1597, 1599, 7, 18, 0, 0, 1598, 1600, 5, 112, 0, 0, 1599, 1598, 1, 0, 0, 0, 1599, 1600, 1, 0, 0, 0, 1600, 1603, 1, 0, 0, 0, 1601, 1603, 5, 89, 0, 0, 1602, 1597, 1, 0, 0, 0, 1602, 1601, 1, 0, 0, 0, 1602, 1603, 1, 0, 0, 0, 1603, 1604, 1, 0, 0, 0, 1604, 1608, 5, 96, 0, 0, 1605, 1606, 5, 53, 0, 0, 1606, 1608, 5, 96, 0, 0, 1607, 1593, 1, 0, 0, 0, 1607, 1595, 1, 0, 0, 0, 1607, 1605, 1, 0, 0, 0, 1608, 101, 1, 0, 0, 0, 1609, 1610, 5, 109, 0, 0, 1610, 1624, 3, 68, 34, 0, 1611, 1612, 5, 145, 0, 0, 1612, 1613, 5, 3, 0, 0, 1613, 1618, 3, 190, 95, 0, 1614, 1615, 5, 5, 0, 0, 1615, 1617, 3, 190, 95, 0, 1616, 1614, 1, 0, 0, 0, 1617, 1620, 1, 0, 0, 0, 1618, 1616, 1, 0, 0, 0, 1618, 1619, 1, 0, 0, 0, 1619, 1621, 1, 0, 0, 0, 1620, 1618, 1, 0, 0, 0, 1621, 1622, 5, 4, 0, 0, 1622, 1624, 1, 0, 0, 0, 1623, 1609, 1, 0, 0, 0, 1623, 1611, 1, 0, 0, 0, 1623, 1624, 1, 0, 0, 0, 1624, 103, 1, 0, 0, 0, 1625, 1627, 5, 142, 0, 0, 1626, 1628, 5, 31, 0, 0, 1627, 1626, 1, 0, 0, 0, 1627, 1628, 1, 0, 0, 0, 1628, 1632, 1, 0, 0, 0, 1629, 1632, 5, 92, 0, 0, 1630, 1632, 5, 70, 0, 0, 1631, 1625, 1, 0, 0, 0, 1631, 1629, 1, 0, 0, 0, 1631, 1630, 1, 0, 0, 0, 1632, 105, 1, 0, 0, 0, 1633, 1635, 3, 50, 25, 0, 1634, 1633, 1, 0, 0, 0, 1634, 1635, 1, 0, 0, 0, 1635, 1636, 1, 0, 0, 0, 1636, 1639, 5, 144, 0, 0, 1637, 1638, 5, 110, 0, 0, 1638, 1640, 7, 8, 0, 0, 1639, 1637, 1, 0, 0, 0, 1639, 1640, 1, 0, 0, 0, 1640, 1641, 1, 0, 0, 0, 1641, 1642, 3, 112, 56, 0, 1642, 1645, 5, 133, 0, 0, 1643, 1646, 3, 190, 95, 0, 1644, 1646, 3, 108, 54, 0, 1645, 1643, 1, 0, 0, 0, 1645, 1644, 1, 0, 0, 0, 1646, 1647, 1, 0, 0, 0, 1647, 1648, 5, 6, 0, 0, 1648, 1659, 3, 68, 34, 0, 1649, 1652, 5, 5, 0, 0, 1650, 1653, 3, 190, 95, 0, 1651, 1653, 3, 108, 54, 0, 1652, 1650, 1, 0, 0, 0, 1652, 1651, 1, 0, 0, 0, 1653, 1654, 1, 0, 0, 0, 1654, 1655, 5, 6, 0, 0, 1655, 1656, 3, 68, 34, 0, 1656, 1658, 1, 0, 0, 0, 1657, 1649, 1, 0, 0, 0, 1658, 1661, 1, 0, 0, 0, 1659, 1657, 1, 0, 0, 0, 1659, 1660, 1, 0, 0, 0, 1660, 1664, 1, 0, 0, 0, 1661, 1659, 1, 0, 0, 0, 1662, 1663, 5, 151, 0, 0, 1663, 1665, 3, 68, 34, 0, 1664, 1662, 1, 0, 0, 0, 1664, 1665, 1, 0, 0, 0, 1665, 1667, 1, 0, 0, 0, 1666, 1668, 3, 58, 29, 0, 1667, 1666, 1, 0, 0, 0, 1667, 1668, 1, 0, 0, 0, 1668, 107, 1, 0, 0, 0, 1669, 1670, 5, 3, 0, 0, 1670, 1675, 3, 190, 95, 0, 1671, 1672, 5, 5, 0, 0, 1672, 1674, 3, 190, 95, 0, 1673, 1671, 1, 0, 0, 0, 1674, 1677, 1, 0, 0, 0, 1675, 1673, 1, 0, 0, 0, 1675, 1676, 1, 0, 0, 0, 1676, 1678, 1, 0, 0, 0, 1677, 1675, 1, 0, 0, 0, 1678, 1679, 5, 4, 0, 0, 1679, 109, 1, 0, 0, 0, 1680, 1682, 3, 50, 25, 0, 1681, 1680, 1, 0, 0, 0, 1681, 1682, 1, 0, 0, 0, 1682, 1683, 1, 0, 0, 0, 1683, 1686, 5, 144, 0, 0, 1684, 1685, 5, 110, 0, 0, 1685, 1687, 7, 8, 0, 0, 1686, 1684, 1, 0, 0, 0, 1686, 1687, 1, 0, 0, 0, 1687, 1688, 1, 0, 0, 0, 1688, 1689, 3, 112, 56, 0, 1689, 1692, 5, 133, 0, 0, 1690, 1693, 3, 190, 95, 0, 1691, 1693, 3, 108, 54, 0, 1692, 1690, 1, 0, 0, 0, 1692, 1691, 1, 0, 0, 0, 1693, 1694, 1, 0, 0, 0, 1694, 1695, 5, 6, 0, 0, 1695, 1706, 3, 68, 34, 0, 1696, 1699, 5, 5, 0, 0, 1697, 1700, 3, 190, 95, 0, 1698, 1700, 3, 108, 54, 0, 1699, 1697, 1, 0, 0, 0, 1699, 1698, 1, 0, 0, 0, 1700, 1701, 1, 0, 0, 0, 1701, 1702, 5, 6, 0, 0, 1702, 1703, 3, 68, 34, 0, 1703, 1705, 1, 0, 0, 0, 1704, 1696, 1, 0, 0, 0, 1705, 1708, 1, 0, 0, 0, 1706, 1704, 1, 0, 0, 0, 1706, 1707, 1, 0, 0, 0, 1707, 1711, 1, 0, 0, 0, 1708, 1706, 1, 0, 0, 0, 1709, 1710, 5, 151, 0, 0, 1710, 1712, 3, 68, 34, 0, 1711, 1709, 1, 0, 0, 0, 1711, 1712, 1, 0, 0, 0, 1712, 1717, 1, 0, 0, 0, 1713, 1715, 3, 134, 67, 0, 1714, 1713, 1, 0, 0, 0, 1714, 1715, 1, 0, 0, 0, 1715, 1716, 1, 0, 0, 0, 1716, 1718, 3, 136, 68, 0, 1717, 1714, 1, 0, 0, 0, 1717, 1718, 1, 0, 0, 0, 1718, 111, 1, 0, 0, 0, 1719, 1720, 3, 182, 91, 0, 1720, 1721, 5, 2, 0, 0, 1721, 1723, 1, 0, 0, 0, 1722, 1719, 1, 0, 0, 0, 1722, 1723, 1, 0, 0, 0, 1723, 1724, 1, 0, 0, 0, 1724, 1727, 3, 184, 92, 0, 1725, 1726, 5, 35, 0, 0, 1726, 1728, 3, 216, 108, 0, 1727, 1725, 1, 0, 0, 0, 1727, 1728, 1, 0, 0, 0, 1728, 1734, 1, 0, 0, 0, 1729, 1730, 5, 87, 0, 0, 1730, 1731, 5, 42, 0, 0, 1731, 1735, 3, 196, 98, 0, 1732, 1733, 5, 104, 0, 0, 1733, 1735, 5, 87, 0, 0, 1734, 1729, 1, 0, 0, 0, 1734, 1732, 1, 0, 0, 0, 1734, 1735, 1, 0, 0, 0, 1735, 113, 1, 0, 0, 0, 1736, 1738, 5, 146, 0, 0, 1737, 1739, 3, 182, 91, 0, 1738, 1737, 1, 0, 0, 0, 1738, 1739, 1, 0, 0, 0, 1739, 1742, 1, 0, 0, 0, 1740, 1741, 5, 93, 0, 0, 1741, 1743, 3, 218, 109, 0, 1742, 1740, 1, 0, 0, 0, 1742, 1743, 1, 0, 0, 0, 1743, 115, 1, 0, 0, 0, 1744, 1745, 5, 181, 0, 0, 1745, 1746, 5, 3, 0, 0, 1746, 1747, 5, 151, 0, 0, 1747, 1748, 3, 68, 34, 0, 1748, 1749, 5, 4, 0, 0, 1749, 117, 1, 0, 0, 0, 1750, 1752, 5, 3, 0, 0, 1751, 1753, 3, 220, 110, 0, 1752, 1751, 1, 0, 0, 0, 1752, 1753, 1, 0, 0, 0, 1753, 1764, 1, 0, 0, 0, 1754, 1755, 5, 156, 0, 0, 1755, 1756, 5, 42, 0, 0, 1756, 1761, 3, 68, 34, 0, 1757, 1758, 5, 5, 0, 0, 1758, 1760, 3, 68, 34, 0, 1759, 1757, 1, 0, 0, 0, 1760, 1763, 1, 0, 0, 0, 1761, 1759, 1, 0, 0, 0, 1761, 1762, 1, 0, 0, 0, 1762, 1765, 1, 0, 0, 0, 1763, 1761, 1, 0, 0, 0, 1764, 1754, 1, 0, 0, 0, 1764, 1765, 1, 0, 0, 0, 1765, 1766, 1, 0, 0, 0, 1766, 1767, 5, 111, 0, 0, 1767, 1768, 5, 42, 0, 0, 1768, 1773, 3, 138, 69, 0, 1769, 1770, 5, 5, 0, 0, 1770, 1772, 3, 138, 69, 0, 1771, 1769, 1, 0, 0, 0, 1772, 1775, 1, 0, 0, 0, 1773, 1771, 1, 0, 0, 0, 1773, 1774, 1, 0, 0, 0, 1774, 1777, 1, 0, 0, 0, 1775, 1773, 1, 0, 0, 0, 1776, 1778, 3, 122, 61, 0, 1777, 1776, 1, 0, 0, 0, 1777, 1778, 1, 0, 0, 0, 1778, 1779, 1, 0, 0, 0, 1779, 1780, 5, 4, 0, 0, 1780, 119, 1, 0, 0, 0, 1781, 1815, 5, 155, 0, 0, 1782, 1816, 3, 214, 107, 0, 1783, 1785, 5, 3, 0, 0, 1784, 1786, 3, 220, 110, 0, 1785, 1784, 1, 0, 0, 0, 1785, 1786, 1, 0, 0, 0, 1786, 1797, 1, 0, 0, 0, 1787, 1788, 5, 156, 0, 0, 1788, 1789, 5, 42, 0, 0, 1789, 1794, 3, 68, 34, 0, 1790, 1791, 5, 5, 0, 0, 1791, 1793, 3, 68, 34, 0, 1792, 1790, 1, 0, 0, 0, 1793, 1796, 1, 0, 0, 0, 1794, 1792, 1, 0, 0, 0, 1794, 1795, 1, 0, 0, 0, 1795, 1798, 1, 0, 0, 0, 1796, 1794, 1, 0, 0, 0, 1797, 1787, 1, 0, 0, 0, 1797, 1798, 1, 0, 0, 0, 1798, 1809, 1, 0, 0, 0, 1799, 1800, 5, 111, 0, 0, 1800, 1801, 5, 42, 0, 0, 1801, 1806, 3, 138, 69, 0, 1802, 1803, 5, 5, 0, 0, 1803, 1805, 3, 138, 69, 0, 1804, 1802, 1, 0, 0, 0, 1805, 1808, 1, 0, 0, 0, 1806, 1804, 1, 0, 0, 0, 1806, 1807, 1, 0, 0, 0, 1807, 1810, 1, 0, 0, 0, 1808, 1806, 1, 0, 0, 0, 1809, 1799, 1, 0, 0, 0, 1809, 1810, 1, 0, 0, 0, 1810, 1812, 1, 0, 0, 0, 1811, 1813, 3, 122, 61, 0, 1812, 1811, 1, 0, 0, 0, 1812, 1813, 1, 0, 0, 0, 1813, 1814, 1, 0, 0, 0, 1814, 1816, 5, 4, 0, 0, 1815, 1782, 1, 0, 0, 0, 1815, 1783, 1, 0, 0, 0, 1816, 121, 1, 0, 0, 0, 1817, 1825, 3, 124, 62, 0, 1818, 1819, 5, 183, 0, 0, 1819, 1820, 5, 103, 0, 0, 1820, 1826, 5, 185, 0, 0, 1821, 1822, 5, 160, 0, 0, 1822, 1826, 5, 129, 0, 0, 1823, 1826, 5, 80, 0, 0, 1824, 1826, 5, 184, 0, 0, 1825, 1818, 1, 0, 0, 0, 1825, 1821, 1, 0, 0, 0, 1825, 1823, 1, 0, 0, 0, 1825, 1824, 1, 0, 0, 0, 1825, 1826, 1, 0, 0, 0, 1826, 123, 1, 0, 0, 0, 1827, 1834, 7, 19, 0, 0, 1828, 1835, 3, 146, 73, 0, 1829, 1830, 5, 41, 0, 0, 1830, 1831, 3, 142, 71, 0, 1831, 1832, 5, 34, 0, 0, 1832, 1833, 3, 144, 72, 0, 1833, 1835, 1, 0, 0, 0, 1834, 1828, 1, 0, 0, 0, 1834, 1829, 1, 0, 0, 0, 1835, 125, 1, 0, 0, 0, 1836, 1837, 3, 222, 111, 0, 1837, 1847, 5, 3, 0, 0, 1838, 1843, 3, 68, 34, 0, 1839, 1840, 5, 5, 0, 0, 1840, 1842, 3, 68, 34, 0, 1841, 1839, 1, 0, 0, 0, 1842, 1845, 1, 0, 0, 0, 1843, 1841, 1, 0, 0, 0, 1843, 1844, 1, 0, 0, 0, 1844, 1848, 1, 0, 0, 0, 1845, 1843, 1, 0, 0, 0, 1846, 1848, 5, 7, 0, 0, 1847, 1838, 1, 0, 0, 0, 1847, 1846, 1, 0, 0, 0, 1848, 1849, 1, 0, 0, 0, 1849, 1850, 5, 4, 0, 0, 1850, 127, 1, 0, 0, 0, 1851, 1852, 3, 224, 112, 0, 1852, 1865, 5, 3, 0, 0, 1853, 1855, 5, 64, 0, 0, 1854, 1853, 1, 0, 0, 0, 1854, 1855, 1, 0, 0, 0, 1855, 1856, 1, 0, 0, 0, 1856, 1861, 3, 68, 34, 0, 1857, 1858, 5, 5, 0, 0, 1858, 1860, 3, 68, 34, 0, 1859, 1857, 1, 0, 0, 0, 1860, 1863, 1, 0, 0, 0, 1861, 1859, 1, 0, 0, 0, 1861, 1862, 1, 0, 0, 0, 1862, 1866, 1, 0, 0, 0, 1863, 1861, 1, 0, 0, 0, 1864, 1866, 5, 7, 0, 0, 1865, 1854, 1, 0, 0, 0, 1865, 1864, 1, 0, 0, 0, 1865, 1866, 1, 0, 0, 0, 1866, 1867, 1, 0, 0, 0, 1867, 1869, 5, 4, 0, 0, 1868, 1870, 3, 116, 58, 0, 1869, 1868, 1, 0, 0, 0, 1869, 1870, 1, 0, 0, 0, 1870, 129, 1, 0, 0, 0, 1871, 1872, 3, 148, 74, 0, 1872, 1882, 5, 3, 0, 0, 1873, 1878, 3, 68, 34, 0, 1874, 1875, 5, 5, 0, 0, 1875, 1877, 3, 68, 34, 0, 1876, 1874, 1, 0, 0, 0, 1877, 1880, 1, 0, 0, 0, 1878, 1876, 1, 0, 0, 0, 1878, 1879, 1, 0, 0, 0, 1879, 1883, 1, 0, 0, 0, 1880, 1878, 1, 0, 0, 0, 1881, 1883, 5, 7, 0, 0, 1882, 1873, 1, 0, 0, 0, 1882, 1881, 1, 0, 0, 0, 1882, 1883, 1, 0, 0, 0, 1883, 1884, 1, 0, 0, 0, 1884, 1886, 5, 4, 0, 0, 1885, 1887, 3, 116, 58, 0, 1886, 1885, 1, 0, 0, 0, 1886, 1887, 1, 0, 0, 0, 1887, 1888, 1, 0, 0, 0, 1888, 1891, 5, 155, 0, 0, 1889, 1892, 3, 118, 59, 0, 1890, 1892, 3, 214, 107, 0, 1891, 1889, 1, 0, 0, 0, 1891, 1890, 1, 0, 0, 0, 1892, 131, 1, 0, 0, 0, 1893, 1895, 5, 152, 0, 0, 1894, 1896, 5, 118, 0, 0, 1895, 1894, 1, 0, 0, 0, 1895, 1896, 1, 0, 0, 0, 1896, 1897, 1, 0, 0, 0, 1897, 1902, 3, 56, 28, 0, 1898, 1899, 5, 5, 0, 0, 1899, 1901, 3, 56, 28, 0, 1900, 1898, 1, 0, 0, 0, 1901, 1904, 1, 0, 0, 0, 1902, 1900, 1, 0, 0, 0, 1902, 1903, 1, 0, 0, 0, 1903, 133, 1, 0, 0, 0, 1904, 1902, 1, 0, 0, 0, 1905, 1906, 5, 111, 0, 0, 1906, 1907, 5, 42, 0, 0, 1907, 1912, 3, 138, 69, 0, 1908, 1909, 5, 5, 0, 0, 1909, 1911, 3, 138, 69, 0, 1910, 1908, 1, 0, 0, 0, 1911, 1914, 1, 0, 0, 0, 1912, 1910, 1, 0, 0, 0, 1912, 1913, 1, 0, 0, 0, 1913, 135, 1, 0, 0, 0, 1914, 1912, 1, 0, 0, 0, 1915, 1916, 5, 100, 0, 0, 1916, 1919, 3, 68, 34, 0, 1917, 1918, 7, 20, 0, 0, 1918, 1920, 3, 68, 34, 0, 1919, 1917, 1, 0, 0, 0, 1919, 1920, 1, 0, 0, 0, 1920, 137, 1, 0, 0, 0, 1921, 1924, 3, 68, 34, 0, 1922, 1923, 5, 47, 0, 0, 1923, 1925, 3, 192, 96, 0, 1924, 1922, 1, 0, 0, 0, 1924, 1925, 1, 0, 0, 0, 1925, 1927, 1, 0, 0, 0, 1926, 1928, 3, 140, 70, 0, 1927, 1926, 1, 0, 0, 0, 1927, 1928, 1, 0, 0, 0, 1928, 1931, 1, 0, 0, 0, 1929, 1930, 5, 178, 0, 0, 1930, 1932, 7, 21, 0, 0, 1931, 1929, 1, 0, 0, 0, 1931, 1932, 1, 0, 0, 0, 1932, 139, 1, 0, 0, 0, 1933, 1934, 7, 22, 0, 0, 1934, 141, 1, 0, 0, 0, 1935, 1936, 3, 68, 34, 0, 1936, 1937, 5, 158, 0, 0, 1937, 1946, 1, 0, 0, 0, 1938, 1939, 3, 68, 34, 0, 1939, 1940, 5, 161, 0, 0, 1940, 1946, 1, 0, 0, 0, 1941, 1942, 5, 160, 0, 0, 1942, 1946, 5, 129, 0, 0, 1943, 1944, 5, 159, 0, 0, 1944, 1946, 5, 158, 0, 0, 1945, 1935, 1, 0, 0, 0, 1945, 1938, 1, 0, 0, 0, 1945, 1941, 1, 0, 0, 0, 1945, 1943, 1, 0, 0, 0, 1946, 143, 1, 0, 0, 0, 1947, 1948, 3, 68, 34, 0, 1948, 1949, 5, 158, 0, 0, 1949, 1958, 1, 0, 0, 0, 1950, 1951, 3, 68, 34, 0, 1951, 1952, 5, 161, 0, 0, 1952, 1958, 1, 0, 0, 0, 1953, 1954, 5, 160, 0, 0, 1954, 1958, 5, 129, 0, 0, 1955, 1956, 5, 159, 0, 0, 1956, 1958, 5, 161, 0, 0, 1957, 1947, 1, 0, 0, 0, 1957, 1950, 1, 0, 0, 0, 1957, 1953, 1, 0, 0, 0, 1957, 1955, 1, 0, 0, 0, 1958, 145, 1, 0, 0, 0, 1959, 1960, 3, 68, 34, 0, 1960, 1961, 5, 158, 0, 0, 1961, 1967, 1, 0, 0, 0, 1962, 1963, 5, 159, 0, 0, 1963, 1967, 5, 158, 0, 0, 1964, 1965, 5, 160, 0, 0, 1965, 1967, 5, 129, 0, 0, 1966, 1959, 1, 0, 0, 0, 1966, 1962, 1, 0, 0, 0, 1966, 1964, 1, 0, 0, 0, 1967, 147, 1, 0, 0, 0, 1968, 1969, 7, 23, 0, 0, 1969, 1970, 5, 3, 0, 0, 1970, 1971, 3, 68, 34, 0, 1971, 1972, 5, 4, 0, 0, 1972, 1973, 5, 155, 0, 0, 1973, 1975, 5, 3, 0, 0, 1974, 1976, 3, 154, 77, 0, 1975, 1974, 1, 0, 0, 0, 1975, 1976, 1, 0, 0, 0, 1976, 1977, 1, 0, 0, 0, 1977, 1979, 3, 158, 79, 0, 1978, 1980, 3, 124, 62, 0, 1979, 1978, 1, 0, 0, 0, 1979, 1980, 1, 0, 0, 0, 1980, 1981, 1, 0, 0, 0, 1981, 1982, 5, 4, 0, 0, 1982, 2054, 1, 0, 0, 0, 1983, 1984, 7, 24, 0, 0, 1984, 1985, 5, 3, 0, 0, 1985, 1986, 5, 4, 0, 0, 1986, 1987, 5, 155, 0, 0, 1987, 1989, 5, 3, 0, 0, 1988, 1990, 3, 154, 77, 0, 1989, 1988, 1, 0, 0, 0, 1989, 1990, 1, 0, 0, 0, 1990, 1992, 1, 0, 0, 0, 1991, 1993, 3, 156, 78, 0, 1992, 1991, 1, 0, 0, 0, 1992, 1993, 1, 0, 0, 0, 1993, 1994, 1, 0, 0, 0, 1994, 2054, 5, 4, 0, 0, 1995, 1996, 7, 25, 0, 0, 1996, 1997, 5, 3, 0, 0, 1997, 1998, 5, 4, 0, 0, 1998, 1999, 5, 155, 0, 0, 1999, 2001, 5, 3, 0, 0, 2000, 2002, 3, 154, 77, 0, 2001, 2000, 1, 0, 0, 0, 2001, 2002, 1, 0, 0, 0, 2002, 2003, 1, 0, 0, 0, 2003, 2004, 3, 158, 79, 0, 2004, 2005, 5, 4, 0, 0, 2005, 2054, 1, 0, 0, 0, 2006, 2007, 7, 26, 0, 0, 2007, 2008, 5, 3, 0, 0, 2008, 2010, 3, 68, 34, 0, 2009, 2011, 3, 150, 75, 0, 2010, 2009, 1, 0, 0, 0, 2010, 2011, 1, 0, 0, 0, 2011, 2013, 1, 0, 0, 0, 2012, 2014, 3, 152, 76, 0, 2013, 2012, 1, 0, 0, 0, 2013, 2014, 1, 0, 0, 0, 2014, 2015, 1, 0, 0, 0, 2015, 2016, 5, 4, 0, 0, 2016, 2017, 5, 155, 0, 0, 2017, 2019, 5, 3, 0, 0, 2018, 2020, 3, 154, 77, 0, 2019, 2018, 1, 0, 0, 0, 2019, 2020, 1, 0, 0, 0, 2020, 2021, 1, 0, 0, 0, 2021, 2022, 3, 158, 79, 0, 2022, 2023, 5, 4, 0, 0, 2023, 2054, 1, 0, 0, 0, 2024, 2025, 5, 167, 0, 0, 2025, 2026, 5, 3, 0, 0, 2026, 2027, 3, 68, 34, 0, 2027, 2028, 5, 5, 0, 0, 2028, 2029, 3, 36, 18, 0, 2029, 2030, 5, 4, 0, 0, 2030, 2031, 5, 155, 0, 0, 2031, 2033, 5, 3, 0, 0, 2032, 2034, 3, 154, 77, 0, 2033, 2032, 1, 0, 0, 0, 2033, 2034, 1, 0, 0, 0, 2034, 2035, 1, 0, 0, 0, 2035, 2037, 3, 158, 79, 0, 2036, 2038, 3, 124, 62, 0, 2037, 2036, 1, 0, 0, 0, 2037, 2038, 1, 0, 0, 0, 2038, 2039, 1, 0, 0, 0, 2039, 2040, 5, 4, 0, 0, 2040, 2054, 1, 0, 0, 0, 2041, 2042, 5, 168, 0, 0, 2042, 2043, 5, 3, 0, 0, 2043, 2044, 3, 68, 34, 0, 2044, 2045, 5, 4, 0, 0, 2045, 2046, 5, 155, 0, 0, 2046, 2048, 5, 3, 0, 0, 2047, 2049, 3, 154, 77, 0, 2048, 2047, 1, 0, 0, 0, 2048, 2049, 1, 0, 0, 0, 2049, 2050, 1, 0, 0, 0, 2050, 2051, 3, 158, 79, 0, 2051, 2052, 5, 4, 0, 0, 2052, 2054, 1, 0, 0, 0, 2053, 1968, 1, 0, 0, 0, 2053, 1983, 1, 0, 0, 0, 2053, 1995, 1, 0, 0, 0, 2053, 2006, 1, 0, 0, 0, 2053, 2024, 1, 0, 0, 0, 2053, 2041, 1, 0, 0, 0, 2054, 149, 1, 0, 0, 0, 2055, 2056, 5, 5, 0, 0, 2056, 2057, 3, 36, 18, 0, 2057, 151, 1, 0, 0, 0, 2058, 2059, 5, 5, 0, 0, 2059, 2060, 3, 36, 18, 0, 2060, 153, 1, 0, 0, 0, 2061, 2062, 5, 156, 0, 0, 2062, 2064, 5, 42, 0, 0, 2063, 2065, 3, 68, 34, 0, 2064, 2063, 1, 0, 0, 0, 2065, 2066, 1, 0, 0, 0, 2066, 2064, 1, 0, 0, 0, 2066, 2067, 1, 0, 0, 0, 2067, 155, 1, 0, 0, 0, 2068, 2069, 5, 111, 0, 0, 2069, 2071, 5, 42, 0, 0, 2070, 2072, 3, 68, 34, 0, 2071, 2070, 1, 0, 0, 0, 2072, 2073, 1, 0, 0, 0, 2073, 2071, 1, 0, 0, 0, 2073, 2074, 1, 0, 0, 0, 2074, 157, 1, 0, 0, 0, 2075, 2076, 5, 111, 0, 0, 2076, 2077, 5, 42, 0, 0, 2077, 2078, 3, 158, 79, 0, 2078, 159, 1, 0, 0, 0, 2079, 2081, 3, 68, 34, 0, 2080, 2082, 3, 140, 70, 0, 2081, 2080, 1, 0, 0, 0, 2081, 2082, 1, 0, 0, 0, 2082, 2090, 1, 0, 0, 0, 2083, 2084, 5, 5, 0, 0, 2084, 2086, 3, 68, 34, 0, 2085, 2087, 3, 140, 70, 0, 2086, 2085, 1, 0, 0, 0, 2086, 2087, 1, 0, 0, 0, 2087, 2089, 1, 0, 0, 0, 2088, 2083, 1, 0, 0, 0, 2089, 2092, 1, 0, 0, 0, 2090, 2088, 1, 0, 0, 0, 2090, 2091, 1, 0, 0, 0, 2091, 161, 1, 0, 0, 0, 2092, 2090, 1, 0, 0, 0, 2093, 2094, 3, 84, 42, 0, 2094, 163, 1, 0, 0, 0, 2095, 2096, 3, 84, 42, 0, 2096, 165, 1, 0, 0, 0, 2097, 2098, 7, 27, 0, 0, 2098, 167, 1, 0, 0, 0, 2099, 2100, 5, 192, 0, 0, 2100, 169, 1, 0, 0, 0, 2101, 2104, 3, 68, 34, 0, 2102, 2104, 3, 30, 15, 0, 2103, 2101, 1, 0, 0, 0, 2103, 2102, 1, 0, 0, 0, 2104, 171, 1, 0, 0, 0, 2105, 2106, 7, 28, 0, 0, 2106, 173, 1, 0, 0, 0, 2107, 2108, 7, 29, 0, 0, 2108, 175, 1, 0, 0, 0, 2109, 2110, 3, 228, 114, 0, 2110, 177, 1, 0, 0, 0, 2111, 2112, 3, 228, 114, 0, 2112, 179, 1, 0, 0, 0, 2113, 2114, 3, 182, 91, 0, 2114, 2115, 5, 2, 0, 0, 2115, 2117, 1, 0, 0, 0, 2116, 2113, 1, 0, 0, 0, 2116, 2117, 1, 0, 0, 0, 2117, 2118, 1, 0, 0, 0, 2118, 2119, 3, 178, 89, 0, 2119, 181, 1, 0, 0, 0, 2120, 2121, 3, 228, 114, 0, 2121, 183, 1, 0, 0, 0, 2122, 2123, 3, 228, 114, 0, 2123, 185, 1, 0, 0, 0, 2124, 2125, 3, 228, 114, 0, 2125, 187, 1, 0, 0, 0, 2126, 2127, 3, 228, 114, 0, 2127, 189, 1, 0, 0, 0, 2128, 2129, 3, 228, 114, 0, 2129, 191, 1, 0, 0, 0, 2130, 2131, 3, 228, 114, 0, 2131, 193, 1, 0, 0, 0, 2132, 2133, 3, 228, 114, 0, 2133, 195, 1, 0, 0, 0, 2134, 2135, 3, 228, 114, 0, 2135, 197, 1, 0, 0, 0, 2136, 2137, 3, 228, 114, 0, 2137, 199, 1, 0, 0, 0, 2138, 2139, 3, 228, 114, 0, 2139, 201, 1, 0, 0, 0, 2140, 2141, 3, 228, 114, 0, 2141, 203, 1, 0, 0, 0, 2142, 2143, 3, 228, 114, 0, 2143, 205, 1, 0, 0, 0, 2144, 2145, 3, 228, 114, 0, 2145, 207, 1, 0, 0, 0, 2146, 2147, 7, 28, 0, 0, 2147, 209, 1, 0, 0, 0, 2148, 2149, 3, 228, 114, 0, 2149, 211, 1, 0, 0, 0, 2150, 2151, 3, 228, 114, 0, 2151, 213, 1, 0, 0, 0, 2152, 2153, 3, 228, 114, 0, 2153, 215, 1, 0, 0, 0, 2154, 2155, 3, 228, 114, 0, 2155, 217, 1, 0, 0, 0, 2156, 2157, 3, 228, 114, 0, 2157, 219, 1, 0, 0, 0, 2158, 2159, 3, 228, 114, 0, 2159, 221, 1, 0, 0, 0, 2160, 2161, 3, 228, 114, 0, 2161, 223, 1, 0, 0, 0, 2162, 2163, 3, 228, 114, 0, 2163, 225, 1, 0, 0, 0, 2164, 2165, 3, 228, 114, 0, 2165, 227, 1, 0, 0, 0, 2166, 2174, 5, 188, 0, 0, 2167, 2174, 3, 174, 87, 0, 2168, 2174, 5, 192, 0, 0, 2169, 2170, 5, 3, 0, 0, 2170, 2171, 3, 228, 114, 0, 2171, 2172, 5, 4, 0, 0, 2172, 2174, 1, 0, 0, 0, 2173, 2166, 1, 0, 0, 0, 2173, 2167, 1, 0, 0, 0, 2173, 2168, 1, 0, 0, 0, 2173, 2169, 1, 0, 0, 0, 2174, 229, 1, 0, 0, 0, 313, 233, 241, 248, 253, 259, 265, 267, 293, 300, 307, 313, 317, 322, 325, 332, 335, 339, 347, 351, 353, 357, 361, 365, 368, 375, 381, 387, 392, 403, 409, 413, 417, 420, 425, 429, 435, 440, 449, 456, 465, 468, 472, 476, 481, 487, 499, 503, 508, 511, 514, 519, 522, 536, 543, 550, 552, 555, 561, 566, 574, 579, 594, 600, 610, 615, 625, 629, 631, 635, 640, 642, 650, 656, 661, 668, 679, 682, 684, 691, 695, 702, 708, 714, 720, 725, 734, 739, 750, 755, 766, 771, 775, 791, 801, 806, 814, 826, 831, 842, 845, 847, 853, 856, 858, 862, 866, 873, 876, 879, 886, 889, 892, 895, 899, 907, 912, 923, 928, 937, 944, 948, 952, 955, 963, 976, 979, 987, 996, 1000, 1005, 1034, 1041, 1052, 1061, 1071, 1074, 1080, 1086, 1095, 1098, 1102, 1109, 1115, 1122, 1124, 1126, 1135, 1142, 1149, 1155, 1160, 1168, 1173, 1182, 1193, 1200, 1206, 1209, 1212, 1222, 1228, 1230, 1238, 1245, 1252, 1257, 1259, 1265, 1274, 1279, 1286, 1290, 1292, 1295, 1303, 1307, 1310, 1319, 1324, 1331, 1340, 1344, 1346, 1350, 1359, 1364, 1366, 1379, 1382, 1391, 1402, 1409, 1412, 1417, 1421, 1424, 1427, 1432, 1436, 1441, 1444, 1447, 1452, 1456, 1459, 1466, 1471, 1480, 1485, 1488, 1496, 1500, 1508, 1511, 1516, 1520, 1523, 1530, 1535, 1544, 1549, 1552, 1560, 1564, 1572, 1575, 1577, 1586, 1589, 1591, 1595, 1599, 1602, 1607, 1618, 1623, 1627, 1631, 1634, 1639, 1645, 1652, 1659, 1664, 1667, 1675, 1681, 1686, 1692, 1699, 1706, 1711, 1714, 1717, 1722, 1727, 1734, 1738, 1742, 1752, 1761, 1764, 1773, 1777, 1785, 1794, 1797, 1806, 1809, 1812, 1815, 1825, 1834, 1843, 1847, 1854, 1861, 1865, 1869, 1878, 1882, 1886, 1891, 1895, 1902, 1912, 1919, 1924, 1927, 1931, 1945, 1957, 1966, 1975, 1979, 1989, 1992, 2001, 2010, 2013, 2019, 2033, 2037, 2048, 2053, 2066, 2073, 2081, 2086, 2090, 2103, 2116, 2173]
\ No newline at end of file
diff --git a/internal/engine/sqlite/parser/sqlite_lexer.go b/internal/engine/sqlite/parser/sqlite_lexer.go
index 12fe3ba666..d3cfd14f1e 100644
--- a/internal/engine/sqlite/parser/sqlite_lexer.go
+++ b/internal/engine/sqlite/parser/sqlite_lexer.go
@@ -1,13 +1,12 @@
-// Code generated from SQLiteLexer.g4 by ANTLR 4.12.0. DO NOT EDIT.
+// Code generated from SQLiteLexer.g4 by ANTLR 4.13.1. DO NOT EDIT.
package parser
import (
"fmt"
+ "github.com/antlr4-go/antlr/v4"
"sync"
"unicode"
-
- "github.com/antlr/antlr4/runtime/Go/antlr/v4"
)
// Suppress unused import error
@@ -22,33 +21,33 @@ type SQLiteLexer struct {
// TODO: EOF string
}
-var sqlitelexerLexerStaticData struct {
+var SQLiteLexerLexerStaticData struct {
once sync.Once
serializedATN []int32
- channelNames []string
- modeNames []string
- literalNames []string
- symbolicNames []string
- ruleNames []string
- predictionContextCache *antlr.PredictionContextCache
+ ChannelNames []string
+ ModeNames []string
+ LiteralNames []string
+ SymbolicNames []string
+ RuleNames []string
+ PredictionContextCache *antlr.PredictionContextCache
atn *antlr.ATN
decisionToDFA []*antlr.DFA
}
func sqlitelexerLexerInit() {
- staticData := &sqlitelexerLexerStaticData
- staticData.channelNames = []string{
+ staticData := &SQLiteLexerLexerStaticData
+ staticData.ChannelNames = []string{
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
}
- staticData.modeNames = []string{
+ staticData.ModeNames = []string{
"DEFAULT_MODE",
}
- staticData.literalNames = []string{
+ staticData.LiteralNames = []string{
"", "';'", "'.'", "'('", "')'", "','", "'='", "'*'", "'+'", "'->>'",
"'->'", "'-'", "'~'", "'||'", "'/'", "'%'", "'<<'", "'>>'", "'&'", "'|'",
"'<'", "'<='", "'>'", "'>='", "'=='", "'!='", "'<>'",
}
- staticData.symbolicNames = []string{
+ staticData.SymbolicNames = []string{
"", "SCOL", "DOT", "OPEN_PAR", "CLOSE_PAR", "COMMA", "ASSIGN", "STAR",
"PLUS", "PTR2", "PTR", "MINUS", "TILDE", "PIPE2", "DIV", "MOD", "LT2",
"GT2", "AMP", "PIPE", "LT", "LT_EQ", "GT", "GT_EQ", "EQ", "NOT_EQ1",
@@ -80,7 +79,7 @@ func sqlitelexerLexerInit() {
"NAMED_BIND_PARAMETER", "STRING_LITERAL", "BLOB_LITERAL", "SINGLE_LINE_COMMENT",
"MULTILINE_COMMENT", "SPACES", "UNEXPECTED_CHAR",
}
- staticData.ruleNames = []string{
+ staticData.RuleNames = []string{
"SCOL", "DOT", "OPEN_PAR", "CLOSE_PAR", "COMMA", "ASSIGN", "STAR", "PLUS",
"PTR2", "PTR", "MINUS", "TILDE", "PIPE2", "DIV", "MOD", "LT2", "GT2",
"AMP", "PIPE", "LT", "LT_EQ", "GT", "GT_EQ", "EQ", "NOT_EQ1", "NOT_EQ2",
@@ -114,7 +113,7 @@ func sqlitelexerLexerInit() {
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z",
}
- staticData.predictionContextCache = antlr.NewPredictionContextCache()
+ staticData.PredictionContextCache = antlr.NewPredictionContextCache()
staticData.serializedATN = []int32{
4, 0, 197, 1829, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3,
2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9,
@@ -989,7 +988,7 @@ func sqlitelexerLexerInit() {
// NewSQLiteLexer(). You can call this function if you wish to initialize the static state ahead
// of time.
func SQLiteLexerInit() {
- staticData := &sqlitelexerLexerStaticData
+ staticData := &SQLiteLexerLexerStaticData
staticData.once.Do(sqlitelexerLexerInit)
}
@@ -998,13 +997,13 @@ func NewSQLiteLexer(input antlr.CharStream) *SQLiteLexer {
SQLiteLexerInit()
l := new(SQLiteLexer)
l.BaseLexer = antlr.NewBaseLexer(input)
- staticData := &sqlitelexerLexerStaticData
- l.Interpreter = antlr.NewLexerATNSimulator(l, staticData.atn, staticData.decisionToDFA, staticData.predictionContextCache)
- l.channelNames = staticData.channelNames
- l.modeNames = staticData.modeNames
- l.RuleNames = staticData.ruleNames
- l.LiteralNames = staticData.literalNames
- l.SymbolicNames = staticData.symbolicNames
+ staticData := &SQLiteLexerLexerStaticData
+ l.Interpreter = antlr.NewLexerATNSimulator(l, staticData.atn, staticData.decisionToDFA, staticData.PredictionContextCache)
+ l.channelNames = staticData.ChannelNames
+ l.modeNames = staticData.ModeNames
+ l.RuleNames = staticData.RuleNames
+ l.LiteralNames = staticData.LiteralNames
+ l.SymbolicNames = staticData.SymbolicNames
l.GrammarFileName = "SQLiteLexer.g4"
// TODO: l.EOF = antlr.TokenEOF
diff --git a/internal/engine/sqlite/parser/sqlite_parser.go b/internal/engine/sqlite/parser/sqlite_parser.go
index 3ba3e68e23..dba28c22e4 100644
--- a/internal/engine/sqlite/parser/sqlite_parser.go
+++ b/internal/engine/sqlite/parser/sqlite_parser.go
@@ -1,4 +1,4 @@
-// Code generated from SQLiteParser.g4 by ANTLR 4.12.0. DO NOT EDIT.
+// Code generated from SQLiteParser.g4 by ANTLR 4.13.1. DO NOT EDIT.
package parser // SQLiteParser
@@ -7,7 +7,7 @@ import (
"strconv"
"sync"
- "github.com/antlr/antlr4/runtime/Go/antlr/v4"
+ "github.com/antlr4-go/antlr/v4"
)
// Suppress unused import errors
@@ -19,25 +19,25 @@ type SQLiteParser struct {
*antlr.BaseParser
}
-var sqliteparserParserStaticData struct {
+var SQLiteParserParserStaticData struct {
once sync.Once
serializedATN []int32
- literalNames []string
- symbolicNames []string
- ruleNames []string
- predictionContextCache *antlr.PredictionContextCache
+ LiteralNames []string
+ SymbolicNames []string
+ RuleNames []string
+ PredictionContextCache *antlr.PredictionContextCache
atn *antlr.ATN
decisionToDFA []*antlr.DFA
}
func sqliteparserParserInit() {
- staticData := &sqliteparserParserStaticData
- staticData.literalNames = []string{
+ staticData := &SQLiteParserParserStaticData
+ staticData.LiteralNames = []string{
"", "';'", "'.'", "'('", "')'", "','", "'='", "'*'", "'+'", "'->>'",
"'->'", "'-'", "'~'", "'||'", "'/'", "'%'", "'<<'", "'>>'", "'&'", "'|'",
"'<'", "'<='", "'>'", "'>='", "'=='", "'!='", "'<>'",
}
- staticData.symbolicNames = []string{
+ staticData.SymbolicNames = []string{
"", "SCOL", "DOT", "OPEN_PAR", "CLOSE_PAR", "COMMA", "ASSIGN", "STAR",
"PLUS", "PTR2", "PTR", "MINUS", "TILDE", "PIPE2", "DIV", "MOD", "LT2",
"GT2", "AMP", "PIPE", "LT", "LT_EQ", "GT", "GT_EQ", "EQ", "NOT_EQ1",
@@ -69,7 +69,7 @@ func sqliteparserParserInit() {
"NAMED_BIND_PARAMETER", "STRING_LITERAL", "BLOB_LITERAL", "SINGLE_LINE_COMMENT",
"MULTILINE_COMMENT", "SPACES", "UNEXPECTED_CHAR",
}
- staticData.ruleNames = []string{
+ staticData.RuleNames = []string{
"parse", "sql_stmt_list", "sql_stmt", "alter_table_stmt", "analyze_stmt",
"attach_stmt", "begin_stmt", "commit_stmt", "rollback_stmt", "savepoint_stmt",
"release_stmt", "create_index_stmt", "indexed_column", "table_option",
@@ -98,9 +98,9 @@ func sqliteparserParserInit() {
"window_name", "alias", "filename", "base_window_name", "simple_func",
"aggregate_func", "table_function_name", "any_name",
}
- staticData.predictionContextCache = antlr.NewPredictionContextCache()
+ staticData.PredictionContextCache = antlr.NewPredictionContextCache()
staticData.serializedATN = []int32{
- 4, 1, 197, 2178, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4,
+ 4, 1, 197, 2176, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4,
7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10,
7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7,
15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20,
@@ -229,947 +229,946 @@ func sqliteparserParserInit() {
37, 1, 37, 1, 37, 5, 37, 1181, 8, 37, 10, 37, 12, 37, 1184, 9, 37, 1, 37,
1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 1192, 8, 37, 10, 37, 12, 37,
1195, 9, 37, 1, 37, 1, 37, 5, 37, 1199, 8, 37, 10, 37, 12, 37, 1202, 9,
- 37, 1, 37, 3, 37, 1205, 8, 37, 1, 37, 3, 37, 1208, 8, 37, 1, 37, 3, 37,
- 1211, 8, 37, 1, 37, 1, 37, 3, 37, 1215, 8, 37, 1, 38, 1, 38, 1, 38, 1,
- 38, 1, 38, 1, 38, 5, 38, 1223, 8, 38, 10, 38, 12, 38, 1226, 9, 38, 1, 38,
- 1, 38, 1, 38, 3, 38, 1231, 8, 38, 3, 38, 1233, 8, 38, 1, 38, 1, 38, 1,
- 38, 1, 38, 1, 38, 1, 38, 3, 38, 1241, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38,
- 1, 38, 3, 38, 1248, 8, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1253, 8, 38, 10,
- 38, 12, 38, 1256, 9, 38, 1, 38, 1, 38, 3, 38, 1260, 8, 38, 3, 38, 1262,
- 8, 38, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1268, 8, 39, 1, 39, 1, 39, 1,
- 39, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 1277, 8, 39, 1, 40, 1, 40, 1, 40,
- 3, 40, 1282, 8, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 3, 41, 1289, 8,
- 41, 1, 41, 1, 41, 3, 41, 1293, 8, 41, 3, 41, 1295, 8, 41, 1, 42, 3, 42,
- 1298, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 5, 42, 1304, 8, 42, 10, 42, 12,
- 42, 1307, 9, 42, 1, 42, 3, 42, 1310, 8, 42, 1, 42, 3, 42, 1313, 8, 42,
- 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 5, 43, 1320, 8, 43, 10, 43, 12, 43,
- 1323, 9, 43, 1, 44, 1, 44, 3, 44, 1327, 8, 44, 1, 44, 1, 44, 1, 44, 5,
- 44, 1332, 8, 44, 10, 44, 12, 44, 1335, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44,
- 5, 44, 1341, 8, 44, 10, 44, 12, 44, 1344, 9, 44, 1, 44, 3, 44, 1347, 8,
- 44, 3, 44, 1349, 8, 44, 1, 44, 1, 44, 3, 44, 1353, 8, 44, 1, 44, 1, 44,
- 1, 44, 1, 44, 1, 44, 5, 44, 1360, 8, 44, 10, 44, 12, 44, 1363, 9, 44, 1,
- 44, 1, 44, 3, 44, 1367, 8, 44, 3, 44, 1369, 8, 44, 1, 44, 1, 44, 1, 44,
- 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1380, 8, 44, 10, 44, 12,
- 44, 1383, 9, 44, 3, 44, 1385, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44,
- 5, 44, 1392, 8, 44, 10, 44, 12, 44, 1395, 9, 44, 1, 44, 1, 44, 1, 44, 1,
- 44, 1, 44, 1, 44, 5, 44, 1403, 8, 44, 10, 44, 12, 44, 1406, 9, 44, 1, 44,
- 1, 44, 5, 44, 1410, 8, 44, 10, 44, 12, 44, 1413, 9, 44, 3, 44, 1415, 8,
- 44, 1, 45, 1, 45, 1, 46, 3, 46, 1420, 8, 46, 1, 46, 1, 46, 3, 46, 1424,
- 8, 46, 1, 46, 3, 46, 1427, 8, 46, 1, 47, 3, 47, 1430, 8, 47, 1, 47, 1,
- 47, 1, 47, 3, 47, 1435, 8, 47, 1, 47, 1, 47, 3, 47, 1439, 8, 47, 1, 47,
- 4, 47, 1442, 8, 47, 11, 47, 12, 47, 1443, 1, 47, 3, 47, 1447, 8, 47, 1,
- 47, 3, 47, 1450, 8, 47, 1, 48, 1, 48, 1, 48, 3, 48, 1455, 8, 48, 1, 48,
- 1, 48, 3, 48, 1459, 8, 48, 1, 48, 3, 48, 1462, 8, 48, 1, 48, 1, 48, 1,
- 48, 1, 48, 1, 48, 3, 48, 1469, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1474,
- 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1481, 8, 48, 10, 48, 12,
- 48, 1484, 9, 48, 1, 48, 1, 48, 3, 48, 1488, 8, 48, 1, 48, 3, 48, 1491,
- 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1497, 8, 48, 10, 48, 12, 48,
- 1500, 9, 48, 1, 48, 3, 48, 1503, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
- 48, 1, 48, 3, 48, 1511, 8, 48, 1, 48, 3, 48, 1514, 8, 48, 1, 48, 1, 48,
- 1, 48, 3, 48, 1519, 8, 48, 1, 48, 1, 48, 3, 48, 1523, 8, 48, 1, 48, 3,
- 48, 1526, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1533, 8, 48,
- 1, 48, 1, 48, 1, 48, 3, 48, 1538, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
- 48, 5, 48, 1545, 8, 48, 10, 48, 12, 48, 1548, 9, 48, 1, 48, 1, 48, 3, 48,
- 1552, 8, 48, 1, 48, 3, 48, 1555, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5,
- 48, 1561, 8, 48, 10, 48, 12, 48, 1564, 9, 48, 1, 48, 3, 48, 1567, 8, 48,
- 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1575, 8, 48, 1, 48, 3,
- 48, 1578, 8, 48, 3, 48, 1580, 8, 48, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49,
- 1, 49, 1, 49, 3, 49, 1589, 8, 49, 1, 49, 3, 49, 1592, 8, 49, 3, 49, 1594,
- 8, 49, 1, 50, 1, 50, 3, 50, 1598, 8, 50, 1, 50, 1, 50, 3, 50, 1602, 8,
- 50, 1, 50, 3, 50, 1605, 8, 50, 1, 50, 1, 50, 1, 50, 3, 50, 1610, 8, 50,
- 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 1, 51, 5, 51, 1619, 8, 51, 10,
- 51, 12, 51, 1622, 9, 51, 1, 51, 1, 51, 3, 51, 1626, 8, 51, 1, 52, 1, 52,
- 3, 52, 1630, 8, 52, 1, 52, 1, 52, 3, 52, 1634, 8, 52, 1, 53, 3, 53, 1637,
- 8, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1642, 8, 53, 1, 53, 1, 53, 1, 53, 1,
- 53, 3, 53, 1648, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1655,
- 8, 53, 1, 53, 1, 53, 1, 53, 5, 53, 1660, 8, 53, 10, 53, 12, 53, 1663, 9,
- 53, 1, 53, 1, 53, 3, 53, 1667, 8, 53, 1, 53, 3, 53, 1670, 8, 53, 1, 54,
- 1, 54, 1, 54, 1, 54, 5, 54, 1676, 8, 54, 10, 54, 12, 54, 1679, 9, 54, 1,
- 54, 1, 54, 1, 55, 3, 55, 1684, 8, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1689,
- 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1695, 8, 55, 1, 55, 1, 55, 1,
- 55, 1, 55, 1, 55, 3, 55, 1702, 8, 55, 1, 55, 1, 55, 1, 55, 5, 55, 1707,
- 8, 55, 10, 55, 12, 55, 1710, 9, 55, 1, 55, 1, 55, 3, 55, 1714, 8, 55, 1,
- 55, 3, 55, 1717, 8, 55, 1, 55, 3, 55, 1720, 8, 55, 1, 56, 1, 56, 1, 56,
- 3, 56, 1725, 8, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1730, 8, 56, 1, 56, 1,
- 56, 1, 56, 1, 56, 1, 56, 3, 56, 1737, 8, 56, 1, 57, 1, 57, 3, 57, 1741,
- 8, 57, 1, 57, 1, 57, 3, 57, 1745, 8, 57, 1, 58, 1, 58, 1, 58, 1, 58, 1,
- 58, 1, 58, 1, 59, 1, 59, 3, 59, 1755, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59,
- 1, 59, 5, 59, 1762, 8, 59, 10, 59, 12, 59, 1765, 9, 59, 3, 59, 1767, 8,
- 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1774, 8, 59, 10, 59, 12,
- 59, 1777, 9, 59, 1, 59, 3, 59, 1780, 8, 59, 1, 59, 1, 59, 1, 60, 1, 60,
- 1, 60, 1, 60, 3, 60, 1788, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5,
- 60, 1795, 8, 60, 10, 60, 12, 60, 1798, 9, 60, 3, 60, 1800, 8, 60, 1, 60,
- 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1807, 8, 60, 10, 60, 12, 60, 1810, 9,
- 60, 3, 60, 1812, 8, 60, 1, 60, 3, 60, 1815, 8, 60, 1, 60, 3, 60, 1818,
- 8, 60, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 3, 61, 1828,
- 8, 61, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 3, 62, 1837, 8,
- 62, 1, 63, 1, 63, 1, 63, 1, 63, 1, 63, 5, 63, 1844, 8, 63, 10, 63, 12,
- 63, 1847, 9, 63, 1, 63, 3, 63, 1850, 8, 63, 1, 63, 1, 63, 1, 64, 1, 64,
- 1, 64, 3, 64, 1857, 8, 64, 1, 64, 1, 64, 1, 64, 5, 64, 1862, 8, 64, 10,
- 64, 12, 64, 1865, 9, 64, 1, 64, 3, 64, 1868, 8, 64, 1, 64, 1, 64, 3, 64,
- 1872, 8, 64, 1, 65, 1, 65, 1, 65, 1, 65, 1, 65, 5, 65, 1879, 8, 65, 10,
- 65, 12, 65, 1882, 9, 65, 1, 65, 3, 65, 1885, 8, 65, 1, 65, 1, 65, 3, 65,
- 1889, 8, 65, 1, 65, 1, 65, 1, 65, 3, 65, 1894, 8, 65, 1, 66, 1, 66, 3,
- 66, 1898, 8, 66, 1, 66, 1, 66, 1, 66, 5, 66, 1903, 8, 66, 10, 66, 12, 66,
- 1906, 9, 66, 1, 67, 1, 67, 1, 67, 1, 67, 1, 67, 5, 67, 1913, 8, 67, 10,
- 67, 12, 67, 1916, 9, 67, 1, 68, 1, 68, 1, 68, 1, 68, 3, 68, 1922, 8, 68,
- 1, 69, 1, 69, 1, 69, 3, 69, 1927, 8, 69, 1, 69, 3, 69, 1930, 8, 69, 1,
- 69, 1, 69, 3, 69, 1934, 8, 69, 1, 70, 1, 70, 1, 71, 1, 71, 1, 71, 1, 71,
- 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 3, 71, 1948, 8, 71, 1, 72, 1,
- 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 3, 72, 1960,
- 8, 72, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 3, 73, 1969, 8,
- 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1978, 8, 74,
- 1, 74, 1, 74, 3, 74, 1982, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1,
- 74, 1, 74, 1, 74, 3, 74, 1992, 8, 74, 1, 74, 3, 74, 1995, 8, 74, 1, 74,
- 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2004, 8, 74, 1, 74, 1,
- 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2013, 8, 74, 1, 74, 3, 74,
- 2016, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2022, 8, 74, 1, 74, 1,
- 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74,
- 3, 74, 2036, 8, 74, 1, 74, 1, 74, 3, 74, 2040, 8, 74, 1, 74, 1, 74, 1,
- 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2051, 8, 74, 1, 74,
- 1, 74, 1, 74, 3, 74, 2056, 8, 74, 1, 75, 1, 75, 1, 75, 1, 76, 1, 76, 1,
- 76, 1, 77, 1, 77, 1, 77, 4, 77, 2067, 8, 77, 11, 77, 12, 77, 2068, 1, 78,
- 1, 78, 1, 78, 4, 78, 2074, 8, 78, 11, 78, 12, 78, 2075, 1, 79, 1, 79, 1,
- 79, 1, 79, 1, 80, 1, 80, 3, 80, 2084, 8, 80, 1, 80, 1, 80, 1, 80, 3, 80,
- 2089, 8, 80, 5, 80, 2091, 8, 80, 10, 80, 12, 80, 2094, 9, 80, 1, 81, 1,
- 81, 1, 82, 1, 82, 1, 83, 1, 83, 1, 84, 1, 84, 1, 85, 1, 85, 3, 85, 2106,
- 8, 85, 1, 86, 1, 86, 1, 87, 1, 87, 1, 88, 1, 88, 1, 89, 1, 89, 1, 90, 1,
- 90, 1, 90, 3, 90, 2119, 8, 90, 1, 90, 1, 90, 1, 91, 1, 91, 1, 92, 1, 92,
- 1, 93, 1, 93, 1, 94, 1, 94, 1, 95, 1, 95, 1, 96, 1, 96, 1, 97, 1, 97, 1,
- 98, 1, 98, 1, 99, 1, 99, 1, 100, 1, 100, 1, 101, 1, 101, 1, 102, 1, 102,
- 1, 103, 1, 103, 1, 104, 1, 104, 1, 105, 1, 105, 1, 106, 1, 106, 1, 107,
- 1, 107, 1, 108, 1, 108, 1, 109, 1, 109, 1, 110, 1, 110, 1, 111, 1, 111,
- 1, 112, 1, 112, 1, 113, 1, 113, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114,
- 1, 114, 1, 114, 3, 114, 2176, 8, 114, 1, 114, 2, 449, 487, 1, 68, 115,
- 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36,
- 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72,
- 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106,
- 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136,
- 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166,
- 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196,
- 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226,
- 228, 0, 30, 3, 0, 60, 60, 71, 71, 84, 84, 2, 0, 49, 49, 68, 68, 1, 0, 136,
- 137, 2, 0, 149, 149, 174, 174, 2, 0, 8, 8, 11, 11, 2, 0, 61, 61, 144, 144,
- 2, 0, 58, 58, 106, 106, 2, 0, 60, 60, 84, 84, 5, 0, 27, 27, 74, 74, 83,
- 83, 124, 124, 128, 128, 4, 0, 86, 86, 135, 135, 141, 141, 148, 148, 1,
- 0, 9, 10, 2, 0, 7, 7, 14, 15, 1, 0, 16, 19, 1, 0, 20, 23, 4, 0, 79, 79,
- 99, 99, 101, 101, 120, 120, 3, 0, 27, 27, 74, 74, 128, 128, 5, 0, 54, 56,
- 106, 106, 175, 176, 189, 189, 192, 193, 2, 0, 31, 31, 64, 64, 3, 0, 78,
- 78, 98, 98, 127, 127, 3, 0, 130, 130, 157, 157, 182, 182, 2, 0, 5, 5, 108,
- 108, 1, 0, 179, 180, 2, 0, 36, 36, 62, 62, 2, 0, 154, 154, 165, 165, 2,
- 0, 162, 162, 169, 169, 2, 0, 163, 163, 170, 171, 2, 0, 164, 164, 166, 166,
- 3, 0, 8, 8, 11, 12, 104, 104, 2, 0, 188, 188, 192, 192, 1, 0, 27, 183,
- 2484, 0, 233, 1, 0, 0, 0, 2, 241, 1, 0, 0, 0, 4, 267, 1, 0, 0, 0, 6, 295,
- 1, 0, 0, 0, 8, 327, 1, 0, 0, 0, 10, 337, 1, 0, 0, 0, 12, 345, 1, 0, 0,
- 0, 14, 355, 1, 0, 0, 0, 16, 359, 1, 0, 0, 0, 18, 370, 1, 0, 0, 0, 20, 373,
- 1, 0, 0, 0, 22, 379, 1, 0, 0, 0, 24, 413, 1, 0, 0, 0, 26, 425, 1, 0, 0,
- 0, 28, 427, 1, 0, 0, 0, 30, 474, 1, 0, 0, 0, 32, 485, 1, 0, 0, 0, 34, 503,
- 1, 0, 0, 0, 36, 555, 1, 0, 0, 0, 38, 561, 1, 0, 0, 0, 40, 602, 1, 0, 0,
- 0, 42, 644, 1, 0, 0, 0, 44, 648, 1, 0, 0, 0, 46, 712, 1, 0, 0, 0, 48, 744,
- 1, 0, 0, 0, 50, 773, 1, 0, 0, 0, 52, 794, 1, 0, 0, 0, 54, 808, 1, 0, 0,
- 0, 56, 819, 1, 0, 0, 0, 58, 838, 1, 0, 0, 0, 60, 866, 1, 0, 0, 0, 62, 879,
- 1, 0, 0, 0, 64, 897, 1, 0, 0, 0, 66, 903, 1, 0, 0, 0, 68, 1005, 1, 0, 0,
- 0, 70, 1129, 1, 0, 0, 0, 72, 1139, 1, 0, 0, 0, 74, 1214, 1, 0, 0, 0, 76,
- 1216, 1, 0, 0, 0, 78, 1263, 1, 0, 0, 0, 80, 1281, 1, 0, 0, 0, 82, 1283,
- 1, 0, 0, 0, 84, 1297, 1, 0, 0, 0, 86, 1314, 1, 0, 0, 0, 88, 1414, 1, 0,
- 0, 0, 90, 1416, 1, 0, 0, 0, 92, 1419, 1, 0, 0, 0, 94, 1429, 1, 0, 0, 0,
- 96, 1579, 1, 0, 0, 0, 98, 1593, 1, 0, 0, 0, 100, 1609, 1, 0, 0, 0, 102,
- 1625, 1, 0, 0, 0, 104, 1633, 1, 0, 0, 0, 106, 1636, 1, 0, 0, 0, 108, 1671,
- 1, 0, 0, 0, 110, 1683, 1, 0, 0, 0, 112, 1724, 1, 0, 0, 0, 114, 1738, 1,
- 0, 0, 0, 116, 1746, 1, 0, 0, 0, 118, 1752, 1, 0, 0, 0, 120, 1783, 1, 0,
- 0, 0, 122, 1819, 1, 0, 0, 0, 124, 1829, 1, 0, 0, 0, 126, 1838, 1, 0, 0,
- 0, 128, 1853, 1, 0, 0, 0, 130, 1873, 1, 0, 0, 0, 132, 1895, 1, 0, 0, 0,
- 134, 1907, 1, 0, 0, 0, 136, 1917, 1, 0, 0, 0, 138, 1923, 1, 0, 0, 0, 140,
- 1935, 1, 0, 0, 0, 142, 1947, 1, 0, 0, 0, 144, 1959, 1, 0, 0, 0, 146, 1968,
- 1, 0, 0, 0, 148, 2055, 1, 0, 0, 0, 150, 2057, 1, 0, 0, 0, 152, 2060, 1,
- 0, 0, 0, 154, 2063, 1, 0, 0, 0, 156, 2070, 1, 0, 0, 0, 158, 2077, 1, 0,
- 0, 0, 160, 2081, 1, 0, 0, 0, 162, 2095, 1, 0, 0, 0, 164, 2097, 1, 0, 0,
- 0, 166, 2099, 1, 0, 0, 0, 168, 2101, 1, 0, 0, 0, 170, 2105, 1, 0, 0, 0,
- 172, 2107, 1, 0, 0, 0, 174, 2109, 1, 0, 0, 0, 176, 2111, 1, 0, 0, 0, 178,
- 2113, 1, 0, 0, 0, 180, 2118, 1, 0, 0, 0, 182, 2122, 1, 0, 0, 0, 184, 2124,
- 1, 0, 0, 0, 186, 2126, 1, 0, 0, 0, 188, 2128, 1, 0, 0, 0, 190, 2130, 1,
- 0, 0, 0, 192, 2132, 1, 0, 0, 0, 194, 2134, 1, 0, 0, 0, 196, 2136, 1, 0,
- 0, 0, 198, 2138, 1, 0, 0, 0, 200, 2140, 1, 0, 0, 0, 202, 2142, 1, 0, 0,
- 0, 204, 2144, 1, 0, 0, 0, 206, 2146, 1, 0, 0, 0, 208, 2148, 1, 0, 0, 0,
- 210, 2150, 1, 0, 0, 0, 212, 2152, 1, 0, 0, 0, 214, 2154, 1, 0, 0, 0, 216,
- 2156, 1, 0, 0, 0, 218, 2158, 1, 0, 0, 0, 220, 2160, 1, 0, 0, 0, 222, 2162,
- 1, 0, 0, 0, 224, 2164, 1, 0, 0, 0, 226, 2166, 1, 0, 0, 0, 228, 2175, 1,
- 0, 0, 0, 230, 232, 3, 2, 1, 0, 231, 230, 1, 0, 0, 0, 232, 235, 1, 0, 0,
- 0, 233, 231, 1, 0, 0, 0, 233, 234, 1, 0, 0, 0, 234, 236, 1, 0, 0, 0, 235,
- 233, 1, 0, 0, 0, 236, 237, 5, 0, 0, 1, 237, 1, 1, 0, 0, 0, 238, 240, 5,
- 1, 0, 0, 239, 238, 1, 0, 0, 0, 240, 243, 1, 0, 0, 0, 241, 239, 1, 0, 0,
- 0, 241, 242, 1, 0, 0, 0, 242, 244, 1, 0, 0, 0, 243, 241, 1, 0, 0, 0, 244,
- 253, 3, 4, 2, 0, 245, 247, 5, 1, 0, 0, 246, 245, 1, 0, 0, 0, 247, 248,
- 1, 0, 0, 0, 248, 246, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 250, 1, 0,
- 0, 0, 250, 252, 3, 4, 2, 0, 251, 246, 1, 0, 0, 0, 252, 255, 1, 0, 0, 0,
- 253, 251, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254, 259, 1, 0, 0, 0, 255,
- 253, 1, 0, 0, 0, 256, 258, 5, 1, 0, 0, 257, 256, 1, 0, 0, 0, 258, 261,
- 1, 0, 0, 0, 259, 257, 1, 0, 0, 0, 259, 260, 1, 0, 0, 0, 260, 3, 1, 0, 0,
- 0, 261, 259, 1, 0, 0, 0, 262, 265, 5, 73, 0, 0, 263, 264, 5, 116, 0, 0,
- 264, 266, 5, 113, 0, 0, 265, 263, 1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266,
- 268, 1, 0, 0, 0, 267, 262, 1, 0, 0, 0, 267, 268, 1, 0, 0, 0, 268, 293,
- 1, 0, 0, 0, 269, 294, 3, 6, 3, 0, 270, 294, 3, 8, 4, 0, 271, 294, 3, 10,
- 5, 0, 272, 294, 3, 12, 6, 0, 273, 294, 3, 14, 7, 0, 274, 294, 3, 22, 11,
- 0, 275, 294, 3, 28, 14, 0, 276, 294, 3, 44, 22, 0, 277, 294, 3, 46, 23,
- 0, 278, 294, 3, 48, 24, 0, 279, 294, 3, 60, 30, 0, 280, 294, 3, 62, 31,
- 0, 281, 294, 3, 64, 32, 0, 282, 294, 3, 66, 33, 0, 283, 294, 3, 74, 37,
- 0, 284, 294, 3, 78, 39, 0, 285, 294, 3, 82, 41, 0, 286, 294, 3, 20, 10,
- 0, 287, 294, 3, 16, 8, 0, 288, 294, 3, 18, 9, 0, 289, 294, 3, 84, 42, 0,
- 290, 294, 3, 106, 53, 0, 291, 294, 3, 110, 55, 0, 292, 294, 3, 114, 57,
- 0, 293, 269, 1, 0, 0, 0, 293, 270, 1, 0, 0, 0, 293, 271, 1, 0, 0, 0, 293,
- 272, 1, 0, 0, 0, 293, 273, 1, 0, 0, 0, 293, 274, 1, 0, 0, 0, 293, 275,
- 1, 0, 0, 0, 293, 276, 1, 0, 0, 0, 293, 277, 1, 0, 0, 0, 293, 278, 1, 0,
- 0, 0, 293, 279, 1, 0, 0, 0, 293, 280, 1, 0, 0, 0, 293, 281, 1, 0, 0, 0,
- 293, 282, 1, 0, 0, 0, 293, 283, 1, 0, 0, 0, 293, 284, 1, 0, 0, 0, 293,
- 285, 1, 0, 0, 0, 293, 286, 1, 0, 0, 0, 293, 287, 1, 0, 0, 0, 293, 288,
- 1, 0, 0, 0, 293, 289, 1, 0, 0, 0, 293, 290, 1, 0, 0, 0, 293, 291, 1, 0,
- 0, 0, 293, 292, 1, 0, 0, 0, 294, 5, 1, 0, 0, 0, 295, 296, 5, 32, 0, 0,
- 296, 300, 5, 135, 0, 0, 297, 298, 3, 182, 91, 0, 298, 299, 5, 2, 0, 0,
- 299, 301, 1, 0, 0, 0, 300, 297, 1, 0, 0, 0, 300, 301, 1, 0, 0, 0, 301,
- 302, 1, 0, 0, 0, 302, 325, 3, 184, 92, 0, 303, 313, 5, 123, 0, 0, 304,
- 305, 5, 139, 0, 0, 305, 314, 3, 188, 94, 0, 306, 308, 5, 48, 0, 0, 307,
- 306, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 309, 1, 0, 0, 0, 309, 310,
- 3, 190, 95, 0, 310, 311, 5, 139, 0, 0, 311, 312, 3, 190, 95, 0, 312, 314,
- 1, 0, 0, 0, 313, 304, 1, 0, 0, 0, 313, 307, 1, 0, 0, 0, 314, 326, 1, 0,
- 0, 0, 315, 317, 5, 29, 0, 0, 316, 318, 5, 48, 0, 0, 317, 316, 1, 0, 0,
- 0, 317, 318, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 326, 3, 30, 15, 0,
- 320, 322, 5, 65, 0, 0, 321, 323, 5, 48, 0, 0, 322, 321, 1, 0, 0, 0, 322,
- 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 326, 3, 190, 95, 0, 325, 303,
- 1, 0, 0, 0, 325, 315, 1, 0, 0, 0, 325, 320, 1, 0, 0, 0, 326, 7, 1, 0, 0,
- 0, 327, 335, 5, 33, 0, 0, 328, 336, 3, 182, 91, 0, 329, 330, 3, 182, 91,
- 0, 330, 331, 5, 2, 0, 0, 331, 333, 1, 0, 0, 0, 332, 329, 1, 0, 0, 0, 332,
- 333, 1, 0, 0, 0, 333, 334, 1, 0, 0, 0, 334, 336, 3, 186, 93, 0, 335, 328,
- 1, 0, 0, 0, 335, 332, 1, 0, 0, 0, 335, 336, 1, 0, 0, 0, 336, 9, 1, 0, 0,
- 0, 337, 339, 5, 37, 0, 0, 338, 340, 5, 57, 0, 0, 339, 338, 1, 0, 0, 0,
- 339, 340, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 342, 3, 68, 34, 0, 342,
- 343, 5, 35, 0, 0, 343, 344, 3, 182, 91, 0, 344, 11, 1, 0, 0, 0, 345, 347,
- 5, 40, 0, 0, 346, 348, 7, 0, 0, 0, 347, 346, 1, 0, 0, 0, 347, 348, 1, 0,
- 0, 0, 348, 353, 1, 0, 0, 0, 349, 351, 5, 140, 0, 0, 350, 352, 3, 212, 106,
- 0, 351, 350, 1, 0, 0, 0, 351, 352, 1, 0, 0, 0, 352, 354, 1, 0, 0, 0, 353,
- 349, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354, 13, 1, 0, 0, 0, 355, 357, 7,
- 1, 0, 0, 356, 358, 5, 140, 0, 0, 357, 356, 1, 0, 0, 0, 357, 358, 1, 0,
- 0, 0, 358, 15, 1, 0, 0, 0, 359, 361, 5, 128, 0, 0, 360, 362, 5, 140, 0,
- 0, 361, 360, 1, 0, 0, 0, 361, 362, 1, 0, 0, 0, 362, 368, 1, 0, 0, 0, 363,
- 365, 5, 139, 0, 0, 364, 366, 5, 131, 0, 0, 365, 364, 1, 0, 0, 0, 365, 366,
- 1, 0, 0, 0, 366, 367, 1, 0, 0, 0, 367, 369, 3, 206, 103, 0, 368, 363, 1,
- 0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 17, 1, 0, 0, 0, 370, 371, 5, 131, 0,
- 0, 371, 372, 3, 206, 103, 0, 372, 19, 1, 0, 0, 0, 373, 375, 5, 122, 0,
- 0, 374, 376, 5, 131, 0, 0, 375, 374, 1, 0, 0, 0, 375, 376, 1, 0, 0, 0,
- 376, 377, 1, 0, 0, 0, 377, 378, 3, 206, 103, 0, 378, 21, 1, 0, 0, 0, 379,
- 381, 5, 52, 0, 0, 380, 382, 5, 143, 0, 0, 381, 380, 1, 0, 0, 0, 381, 382,
- 1, 0, 0, 0, 382, 383, 1, 0, 0, 0, 383, 387, 5, 86, 0, 0, 384, 385, 5, 82,
- 0, 0, 385, 386, 5, 104, 0, 0, 386, 388, 5, 72, 0, 0, 387, 384, 1, 0, 0,
- 0, 387, 388, 1, 0, 0, 0, 388, 392, 1, 0, 0, 0, 389, 390, 3, 182, 91, 0,
- 390, 391, 5, 2, 0, 0, 391, 393, 1, 0, 0, 0, 392, 389, 1, 0, 0, 0, 392,
- 393, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394, 395, 3, 196, 98, 0, 395, 396,
- 5, 109, 0, 0, 396, 397, 3, 184, 92, 0, 397, 398, 5, 3, 0, 0, 398, 403,
- 3, 24, 12, 0, 399, 400, 5, 5, 0, 0, 400, 402, 3, 24, 12, 0, 401, 399, 1,
- 0, 0, 0, 402, 405, 1, 0, 0, 0, 403, 401, 1, 0, 0, 0, 403, 404, 1, 0, 0,
- 0, 404, 406, 1, 0, 0, 0, 405, 403, 1, 0, 0, 0, 406, 409, 5, 4, 0, 0, 407,
- 408, 5, 151, 0, 0, 408, 410, 3, 68, 34, 0, 409, 407, 1, 0, 0, 0, 409, 410,
- 1, 0, 0, 0, 410, 23, 1, 0, 0, 0, 411, 414, 3, 190, 95, 0, 412, 414, 3,
- 68, 34, 0, 413, 411, 1, 0, 0, 0, 413, 412, 1, 0, 0, 0, 414, 417, 1, 0,
- 0, 0, 415, 416, 5, 47, 0, 0, 416, 418, 3, 192, 96, 0, 417, 415, 1, 0, 0,
- 0, 417, 418, 1, 0, 0, 0, 418, 420, 1, 0, 0, 0, 419, 421, 3, 140, 70, 0,
- 420, 419, 1, 0, 0, 0, 420, 421, 1, 0, 0, 0, 421, 25, 1, 0, 0, 0, 422, 423,
- 5, 153, 0, 0, 423, 426, 5, 188, 0, 0, 424, 426, 5, 134, 0, 0, 425, 422,
- 1, 0, 0, 0, 425, 424, 1, 0, 0, 0, 426, 27, 1, 0, 0, 0, 427, 429, 5, 52,
- 0, 0, 428, 430, 7, 2, 0, 0, 429, 428, 1, 0, 0, 0, 429, 430, 1, 0, 0, 0,
- 430, 431, 1, 0, 0, 0, 431, 435, 5, 135, 0, 0, 432, 433, 5, 82, 0, 0, 433,
- 434, 5, 104, 0, 0, 434, 436, 5, 72, 0, 0, 435, 432, 1, 0, 0, 0, 435, 436,
- 1, 0, 0, 0, 436, 440, 1, 0, 0, 0, 437, 438, 3, 182, 91, 0, 438, 439, 5,
- 2, 0, 0, 439, 441, 1, 0, 0, 0, 440, 437, 1, 0, 0, 0, 440, 441, 1, 0, 0,
- 0, 441, 442, 1, 0, 0, 0, 442, 472, 3, 184, 92, 0, 443, 444, 5, 3, 0, 0,
- 444, 449, 3, 30, 15, 0, 445, 446, 5, 5, 0, 0, 446, 448, 3, 30, 15, 0, 447,
- 445, 1, 0, 0, 0, 448, 451, 1, 0, 0, 0, 449, 450, 1, 0, 0, 0, 449, 447,
- 1, 0, 0, 0, 450, 456, 1, 0, 0, 0, 451, 449, 1, 0, 0, 0, 452, 453, 5, 5,
- 0, 0, 453, 455, 3, 38, 19, 0, 454, 452, 1, 0, 0, 0, 455, 458, 1, 0, 0,
- 0, 456, 454, 1, 0, 0, 0, 456, 457, 1, 0, 0, 0, 457, 459, 1, 0, 0, 0, 458,
- 456, 1, 0, 0, 0, 459, 468, 5, 4, 0, 0, 460, 465, 3, 26, 13, 0, 461, 462,
- 5, 5, 0, 0, 462, 464, 3, 26, 13, 0, 463, 461, 1, 0, 0, 0, 464, 467, 1,
- 0, 0, 0, 465, 463, 1, 0, 0, 0, 465, 466, 1, 0, 0, 0, 466, 469, 1, 0, 0,
- 0, 467, 465, 1, 0, 0, 0, 468, 460, 1, 0, 0, 0, 468, 469, 1, 0, 0, 0, 469,
- 473, 1, 0, 0, 0, 470, 471, 5, 35, 0, 0, 471, 473, 3, 84, 42, 0, 472, 443,
- 1, 0, 0, 0, 472, 470, 1, 0, 0, 0, 473, 29, 1, 0, 0, 0, 474, 476, 3, 190,
- 95, 0, 475, 477, 3, 32, 16, 0, 476, 475, 1, 0, 0, 0, 476, 477, 1, 0, 0,
- 0, 477, 481, 1, 0, 0, 0, 478, 480, 3, 34, 17, 0, 479, 478, 1, 0, 0, 0,
- 480, 483, 1, 0, 0, 0, 481, 479, 1, 0, 0, 0, 481, 482, 1, 0, 0, 0, 482,
- 31, 1, 0, 0, 0, 483, 481, 1, 0, 0, 0, 484, 486, 3, 176, 88, 0, 485, 484,
- 1, 0, 0, 0, 486, 487, 1, 0, 0, 0, 487, 488, 1, 0, 0, 0, 487, 485, 1, 0,
- 0, 0, 488, 499, 1, 0, 0, 0, 489, 490, 5, 3, 0, 0, 490, 491, 3, 36, 18,
- 0, 491, 492, 5, 4, 0, 0, 492, 500, 1, 0, 0, 0, 493, 494, 5, 3, 0, 0, 494,
- 495, 3, 36, 18, 0, 495, 496, 5, 5, 0, 0, 496, 497, 3, 36, 18, 0, 497, 498,
- 5, 4, 0, 0, 498, 500, 1, 0, 0, 0, 499, 489, 1, 0, 0, 0, 499, 493, 1, 0,
- 0, 0, 499, 500, 1, 0, 0, 0, 500, 33, 1, 0, 0, 0, 501, 502, 5, 51, 0, 0,
- 502, 504, 3, 176, 88, 0, 503, 501, 1, 0, 0, 0, 503, 504, 1, 0, 0, 0, 504,
- 552, 1, 0, 0, 0, 505, 506, 5, 115, 0, 0, 506, 508, 5, 97, 0, 0, 507, 509,
- 3, 140, 70, 0, 508, 507, 1, 0, 0, 0, 508, 509, 1, 0, 0, 0, 509, 511, 1,
- 0, 0, 0, 510, 512, 3, 42, 21, 0, 511, 510, 1, 0, 0, 0, 511, 512, 1, 0,
- 0, 0, 512, 514, 1, 0, 0, 0, 513, 515, 5, 38, 0, 0, 514, 513, 1, 0, 0, 0,
- 514, 515, 1, 0, 0, 0, 515, 553, 1, 0, 0, 0, 516, 517, 5, 104, 0, 0, 517,
- 520, 5, 106, 0, 0, 518, 520, 5, 143, 0, 0, 519, 516, 1, 0, 0, 0, 519, 518,
- 1, 0, 0, 0, 520, 522, 1, 0, 0, 0, 521, 523, 3, 42, 21, 0, 522, 521, 1,
- 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 553, 1, 0, 0, 0, 524, 525, 5, 46, 0,
- 0, 525, 526, 5, 3, 0, 0, 526, 527, 3, 68, 34, 0, 527, 528, 5, 4, 0, 0,
- 528, 553, 1, 0, 0, 0, 529, 536, 5, 58, 0, 0, 530, 537, 3, 36, 18, 0, 531,
- 537, 3, 72, 36, 0, 532, 533, 5, 3, 0, 0, 533, 534, 3, 68, 34, 0, 534, 535,
- 5, 4, 0, 0, 535, 537, 1, 0, 0, 0, 536, 530, 1, 0, 0, 0, 536, 531, 1, 0,
- 0, 0, 536, 532, 1, 0, 0, 0, 537, 553, 1, 0, 0, 0, 538, 539, 5, 47, 0, 0,
- 539, 553, 3, 192, 96, 0, 540, 553, 3, 40, 20, 0, 541, 542, 5, 172, 0, 0,
- 542, 544, 5, 173, 0, 0, 543, 541, 1, 0, 0, 0, 543, 544, 1, 0, 0, 0, 544,
- 545, 1, 0, 0, 0, 545, 546, 5, 35, 0, 0, 546, 547, 5, 3, 0, 0, 547, 548,
- 3, 68, 34, 0, 548, 550, 5, 4, 0, 0, 549, 551, 7, 3, 0, 0, 550, 549, 1,
- 0, 0, 0, 550, 551, 1, 0, 0, 0, 551, 553, 1, 0, 0, 0, 552, 505, 1, 0, 0,
- 0, 552, 519, 1, 0, 0, 0, 552, 524, 1, 0, 0, 0, 552, 529, 1, 0, 0, 0, 552,
- 538, 1, 0, 0, 0, 552, 540, 1, 0, 0, 0, 552, 543, 1, 0, 0, 0, 553, 35, 1,
- 0, 0, 0, 554, 556, 7, 4, 0, 0, 555, 554, 1, 0, 0, 0, 555, 556, 1, 0, 0,
- 0, 556, 557, 1, 0, 0, 0, 557, 558, 5, 189, 0, 0, 558, 37, 1, 0, 0, 0, 559,
- 560, 5, 51, 0, 0, 560, 562, 3, 176, 88, 0, 561, 559, 1, 0, 0, 0, 561, 562,
- 1, 0, 0, 0, 562, 600, 1, 0, 0, 0, 563, 564, 5, 115, 0, 0, 564, 567, 5,
- 97, 0, 0, 565, 567, 5, 143, 0, 0, 566, 563, 1, 0, 0, 0, 566, 565, 1, 0,
- 0, 0, 567, 568, 1, 0, 0, 0, 568, 569, 5, 3, 0, 0, 569, 574, 3, 24, 12,
- 0, 570, 571, 5, 5, 0, 0, 571, 573, 3, 24, 12, 0, 572, 570, 1, 0, 0, 0,
- 573, 576, 1, 0, 0, 0, 574, 572, 1, 0, 0, 0, 574, 575, 1, 0, 0, 0, 575,
- 577, 1, 0, 0, 0, 576, 574, 1, 0, 0, 0, 577, 579, 5, 4, 0, 0, 578, 580,
- 3, 42, 21, 0, 579, 578, 1, 0, 0, 0, 579, 580, 1, 0, 0, 0, 580, 601, 1,
- 0, 0, 0, 581, 582, 5, 46, 0, 0, 582, 583, 5, 3, 0, 0, 583, 584, 3, 68,
- 34, 0, 584, 585, 5, 4, 0, 0, 585, 601, 1, 0, 0, 0, 586, 587, 5, 76, 0,
- 0, 587, 588, 5, 97, 0, 0, 588, 589, 5, 3, 0, 0, 589, 594, 3, 190, 95, 0,
- 590, 591, 5, 5, 0, 0, 591, 593, 3, 190, 95, 0, 592, 590, 1, 0, 0, 0, 593,
- 596, 1, 0, 0, 0, 594, 592, 1, 0, 0, 0, 594, 595, 1, 0, 0, 0, 595, 597,
- 1, 0, 0, 0, 596, 594, 1, 0, 0, 0, 597, 598, 5, 4, 0, 0, 598, 599, 3, 40,
- 20, 0, 599, 601, 1, 0, 0, 0, 600, 566, 1, 0, 0, 0, 600, 581, 1, 0, 0, 0,
- 600, 586, 1, 0, 0, 0, 601, 39, 1, 0, 0, 0, 602, 603, 5, 119, 0, 0, 603,
- 615, 3, 194, 97, 0, 604, 605, 5, 3, 0, 0, 605, 610, 3, 190, 95, 0, 606,
- 607, 5, 5, 0, 0, 607, 609, 3, 190, 95, 0, 608, 606, 1, 0, 0, 0, 609, 612,
- 1, 0, 0, 0, 610, 608, 1, 0, 0, 0, 610, 611, 1, 0, 0, 0, 611, 613, 1, 0,
- 0, 0, 612, 610, 1, 0, 0, 0, 613, 614, 5, 4, 0, 0, 614, 616, 1, 0, 0, 0,
- 615, 604, 1, 0, 0, 0, 615, 616, 1, 0, 0, 0, 616, 631, 1, 0, 0, 0, 617,
- 618, 5, 109, 0, 0, 618, 625, 7, 5, 0, 0, 619, 620, 5, 133, 0, 0, 620, 626,
- 7, 6, 0, 0, 621, 626, 5, 43, 0, 0, 622, 626, 5, 125, 0, 0, 623, 624, 5,
- 103, 0, 0, 624, 626, 5, 28, 0, 0, 625, 619, 1, 0, 0, 0, 625, 621, 1, 0,
- 0, 0, 625, 622, 1, 0, 0, 0, 625, 623, 1, 0, 0, 0, 626, 630, 1, 0, 0, 0,
- 627, 628, 5, 101, 0, 0, 628, 630, 3, 176, 88, 0, 629, 617, 1, 0, 0, 0,
- 629, 627, 1, 0, 0, 0, 630, 633, 1, 0, 0, 0, 631, 629, 1, 0, 0, 0, 631,
- 632, 1, 0, 0, 0, 632, 642, 1, 0, 0, 0, 633, 631, 1, 0, 0, 0, 634, 636,
- 5, 104, 0, 0, 635, 634, 1, 0, 0, 0, 635, 636, 1, 0, 0, 0, 636, 637, 1,
- 0, 0, 0, 637, 640, 5, 59, 0, 0, 638, 639, 5, 88, 0, 0, 639, 641, 7, 7,
- 0, 0, 640, 638, 1, 0, 0, 0, 640, 641, 1, 0, 0, 0, 641, 643, 1, 0, 0, 0,
- 642, 635, 1, 0, 0, 0, 642, 643, 1, 0, 0, 0, 643, 41, 1, 0, 0, 0, 644, 645,
- 5, 109, 0, 0, 645, 646, 5, 50, 0, 0, 646, 647, 7, 8, 0, 0, 647, 43, 1,
- 0, 0, 0, 648, 650, 5, 52, 0, 0, 649, 651, 7, 2, 0, 0, 650, 649, 1, 0, 0,
- 0, 650, 651, 1, 0, 0, 0, 651, 652, 1, 0, 0, 0, 652, 656, 5, 141, 0, 0,
- 653, 654, 5, 82, 0, 0, 654, 655, 5, 104, 0, 0, 655, 657, 5, 72, 0, 0, 656,
- 653, 1, 0, 0, 0, 656, 657, 1, 0, 0, 0, 657, 661, 1, 0, 0, 0, 658, 659,
- 3, 182, 91, 0, 659, 660, 5, 2, 0, 0, 660, 662, 1, 0, 0, 0, 661, 658, 1,
- 0, 0, 0, 661, 662, 1, 0, 0, 0, 662, 663, 1, 0, 0, 0, 663, 668, 3, 198,
- 99, 0, 664, 669, 5, 39, 0, 0, 665, 669, 5, 30, 0, 0, 666, 667, 5, 91, 0,
- 0, 667, 669, 5, 107, 0, 0, 668, 664, 1, 0, 0, 0, 668, 665, 1, 0, 0, 0,
- 668, 666, 1, 0, 0, 0, 668, 669, 1, 0, 0, 0, 669, 684, 1, 0, 0, 0, 670,
- 685, 5, 61, 0, 0, 671, 685, 5, 90, 0, 0, 672, 682, 5, 144, 0, 0, 673, 674,
- 5, 107, 0, 0, 674, 679, 3, 190, 95, 0, 675, 676, 5, 5, 0, 0, 676, 678,
- 3, 190, 95, 0, 677, 675, 1, 0, 0, 0, 678, 681, 1, 0, 0, 0, 679, 677, 1,
- 0, 0, 0, 679, 680, 1, 0, 0, 0, 680, 683, 1, 0, 0, 0, 681, 679, 1, 0, 0,
- 0, 682, 673, 1, 0, 0, 0, 682, 683, 1, 0, 0, 0, 683, 685, 1, 0, 0, 0, 684,
- 670, 1, 0, 0, 0, 684, 671, 1, 0, 0, 0, 684, 672, 1, 0, 0, 0, 685, 686,
- 1, 0, 0, 0, 686, 687, 5, 109, 0, 0, 687, 691, 3, 184, 92, 0, 688, 689,
- 5, 75, 0, 0, 689, 690, 5, 66, 0, 0, 690, 692, 5, 129, 0, 0, 691, 688, 1,
- 0, 0, 0, 691, 692, 1, 0, 0, 0, 692, 695, 1, 0, 0, 0, 693, 694, 5, 150,
- 0, 0, 694, 696, 3, 68, 34, 0, 695, 693, 1, 0, 0, 0, 695, 696, 1, 0, 0,
- 0, 696, 697, 1, 0, 0, 0, 697, 706, 5, 40, 0, 0, 698, 703, 3, 106, 53, 0,
- 699, 703, 3, 74, 37, 0, 700, 703, 3, 60, 30, 0, 701, 703, 3, 84, 42, 0,
- 702, 698, 1, 0, 0, 0, 702, 699, 1, 0, 0, 0, 702, 700, 1, 0, 0, 0, 702,
- 701, 1, 0, 0, 0, 703, 704, 1, 0, 0, 0, 704, 705, 5, 1, 0, 0, 705, 707,
- 1, 0, 0, 0, 706, 702, 1, 0, 0, 0, 707, 708, 1, 0, 0, 0, 708, 706, 1, 0,
- 0, 0, 708, 709, 1, 0, 0, 0, 709, 710, 1, 0, 0, 0, 710, 711, 5, 68, 0, 0,
- 711, 45, 1, 0, 0, 0, 712, 714, 5, 52, 0, 0, 713, 715, 7, 2, 0, 0, 714,
- 713, 1, 0, 0, 0, 714, 715, 1, 0, 0, 0, 715, 716, 1, 0, 0, 0, 716, 720,
- 5, 148, 0, 0, 717, 718, 5, 82, 0, 0, 718, 719, 5, 104, 0, 0, 719, 721,
- 5, 72, 0, 0, 720, 717, 1, 0, 0, 0, 720, 721, 1, 0, 0, 0, 721, 725, 1, 0,
- 0, 0, 722, 723, 3, 182, 91, 0, 723, 724, 5, 2, 0, 0, 724, 726, 1, 0, 0,
- 0, 725, 722, 1, 0, 0, 0, 725, 726, 1, 0, 0, 0, 726, 727, 1, 0, 0, 0, 727,
- 739, 3, 200, 100, 0, 728, 729, 5, 3, 0, 0, 729, 734, 3, 190, 95, 0, 730,
- 731, 5, 5, 0, 0, 731, 733, 3, 190, 95, 0, 732, 730, 1, 0, 0, 0, 733, 736,
- 1, 0, 0, 0, 734, 732, 1, 0, 0, 0, 734, 735, 1, 0, 0, 0, 735, 737, 1, 0,
- 0, 0, 736, 734, 1, 0, 0, 0, 737, 738, 5, 4, 0, 0, 738, 740, 1, 0, 0, 0,
- 739, 728, 1, 0, 0, 0, 739, 740, 1, 0, 0, 0, 740, 741, 1, 0, 0, 0, 741,
- 742, 5, 35, 0, 0, 742, 743, 3, 84, 42, 0, 743, 47, 1, 0, 0, 0, 744, 745,
- 5, 52, 0, 0, 745, 746, 5, 149, 0, 0, 746, 750, 5, 135, 0, 0, 747, 748,
- 5, 82, 0, 0, 748, 749, 5, 104, 0, 0, 749, 751, 5, 72, 0, 0, 750, 747, 1,
- 0, 0, 0, 750, 751, 1, 0, 0, 0, 751, 755, 1, 0, 0, 0, 752, 753, 3, 182,
- 91, 0, 753, 754, 5, 2, 0, 0, 754, 756, 1, 0, 0, 0, 755, 752, 1, 0, 0, 0,
- 755, 756, 1, 0, 0, 0, 756, 757, 1, 0, 0, 0, 757, 758, 3, 184, 92, 0, 758,
- 759, 5, 145, 0, 0, 759, 771, 3, 202, 101, 0, 760, 761, 5, 3, 0, 0, 761,
- 766, 3, 170, 85, 0, 762, 763, 5, 5, 0, 0, 763, 765, 3, 170, 85, 0, 764,
- 762, 1, 0, 0, 0, 765, 768, 1, 0, 0, 0, 766, 764, 1, 0, 0, 0, 766, 767,
- 1, 0, 0, 0, 767, 769, 1, 0, 0, 0, 768, 766, 1, 0, 0, 0, 769, 770, 5, 4,
- 0, 0, 770, 772, 1, 0, 0, 0, 771, 760, 1, 0, 0, 0, 771, 772, 1, 0, 0, 0,
- 772, 49, 1, 0, 0, 0, 773, 775, 5, 152, 0, 0, 774, 776, 5, 118, 0, 0, 775,
- 774, 1, 0, 0, 0, 775, 776, 1, 0, 0, 0, 776, 777, 1, 0, 0, 0, 777, 778,
- 3, 52, 26, 0, 778, 779, 5, 35, 0, 0, 779, 780, 5, 3, 0, 0, 780, 781, 3,
- 84, 42, 0, 781, 791, 5, 4, 0, 0, 782, 783, 5, 5, 0, 0, 783, 784, 3, 52,
- 26, 0, 784, 785, 5, 35, 0, 0, 785, 786, 5, 3, 0, 0, 786, 787, 3, 84, 42,
- 0, 787, 788, 5, 4, 0, 0, 788, 790, 1, 0, 0, 0, 789, 782, 1, 0, 0, 0, 790,
- 793, 1, 0, 0, 0, 791, 789, 1, 0, 0, 0, 791, 792, 1, 0, 0, 0, 792, 51, 1,
- 0, 0, 0, 793, 791, 1, 0, 0, 0, 794, 806, 3, 184, 92, 0, 795, 796, 5, 3,
- 0, 0, 796, 801, 3, 190, 95, 0, 797, 798, 5, 5, 0, 0, 798, 800, 3, 190,
- 95, 0, 799, 797, 1, 0, 0, 0, 800, 803, 1, 0, 0, 0, 801, 799, 1, 0, 0, 0,
- 801, 802, 1, 0, 0, 0, 802, 804, 1, 0, 0, 0, 803, 801, 1, 0, 0, 0, 804,
- 805, 5, 4, 0, 0, 805, 807, 1, 0, 0, 0, 806, 795, 1, 0, 0, 0, 806, 807,
- 1, 0, 0, 0, 807, 53, 1, 0, 0, 0, 808, 809, 3, 52, 26, 0, 809, 810, 5, 35,
- 0, 0, 810, 811, 5, 3, 0, 0, 811, 812, 3, 162, 81, 0, 812, 814, 5, 142,
- 0, 0, 813, 815, 5, 31, 0, 0, 814, 813, 1, 0, 0, 0, 814, 815, 1, 0, 0, 0,
- 815, 816, 1, 0, 0, 0, 816, 817, 3, 164, 82, 0, 817, 818, 5, 4, 0, 0, 818,
- 55, 1, 0, 0, 0, 819, 831, 3, 184, 92, 0, 820, 821, 5, 3, 0, 0, 821, 826,
- 3, 190, 95, 0, 822, 823, 5, 5, 0, 0, 823, 825, 3, 190, 95, 0, 824, 822,
- 1, 0, 0, 0, 825, 828, 1, 0, 0, 0, 826, 824, 1, 0, 0, 0, 826, 827, 1, 0,
- 0, 0, 827, 829, 1, 0, 0, 0, 828, 826, 1, 0, 0, 0, 829, 830, 5, 4, 0, 0,
- 830, 832, 1, 0, 0, 0, 831, 820, 1, 0, 0, 0, 831, 832, 1, 0, 0, 0, 832,
- 833, 1, 0, 0, 0, 833, 834, 5, 35, 0, 0, 834, 835, 5, 3, 0, 0, 835, 836,
- 3, 84, 42, 0, 836, 837, 5, 4, 0, 0, 837, 57, 1, 0, 0, 0, 838, 847, 5, 126,
- 0, 0, 839, 848, 5, 7, 0, 0, 840, 845, 3, 68, 34, 0, 841, 843, 5, 35, 0,
- 0, 842, 841, 1, 0, 0, 0, 842, 843, 1, 0, 0, 0, 843, 844, 1, 0, 0, 0, 844,
- 846, 3, 172, 86, 0, 845, 842, 1, 0, 0, 0, 845, 846, 1, 0, 0, 0, 846, 848,
- 1, 0, 0, 0, 847, 839, 1, 0, 0, 0, 847, 840, 1, 0, 0, 0, 848, 862, 1, 0,
- 0, 0, 849, 858, 5, 5, 0, 0, 850, 859, 5, 7, 0, 0, 851, 856, 3, 68, 34,
- 0, 852, 854, 5, 35, 0, 0, 853, 852, 1, 0, 0, 0, 853, 854, 1, 0, 0, 0, 854,
- 855, 1, 0, 0, 0, 855, 857, 3, 172, 86, 0, 856, 853, 1, 0, 0, 0, 856, 857,
- 1, 0, 0, 0, 857, 859, 1, 0, 0, 0, 858, 850, 1, 0, 0, 0, 858, 851, 1, 0,
- 0, 0, 859, 861, 1, 0, 0, 0, 860, 849, 1, 0, 0, 0, 861, 864, 1, 0, 0, 0,
- 862, 860, 1, 0, 0, 0, 862, 863, 1, 0, 0, 0, 863, 59, 1, 0, 0, 0, 864, 862,
- 1, 0, 0, 0, 865, 867, 3, 50, 25, 0, 866, 865, 1, 0, 0, 0, 866, 867, 1,
- 0, 0, 0, 867, 868, 1, 0, 0, 0, 868, 869, 5, 61, 0, 0, 869, 870, 5, 77,
- 0, 0, 870, 873, 3, 112, 56, 0, 871, 872, 5, 151, 0, 0, 872, 874, 3, 68,
- 34, 0, 873, 871, 1, 0, 0, 0, 873, 874, 1, 0, 0, 0, 874, 876, 1, 0, 0, 0,
- 875, 877, 3, 58, 29, 0, 876, 875, 1, 0, 0, 0, 876, 877, 1, 0, 0, 0, 877,
- 61, 1, 0, 0, 0, 878, 880, 3, 50, 25, 0, 879, 878, 1, 0, 0, 0, 879, 880,
- 1, 0, 0, 0, 880, 881, 1, 0, 0, 0, 881, 882, 5, 61, 0, 0, 882, 883, 5, 77,
- 0, 0, 883, 886, 3, 112, 56, 0, 884, 885, 5, 151, 0, 0, 885, 887, 3, 68,
- 34, 0, 886, 884, 1, 0, 0, 0, 886, 887, 1, 0, 0, 0, 887, 892, 1, 0, 0, 0,
- 888, 890, 3, 134, 67, 0, 889, 888, 1, 0, 0, 0, 889, 890, 1, 0, 0, 0, 890,
- 891, 1, 0, 0, 0, 891, 893, 3, 136, 68, 0, 892, 889, 1, 0, 0, 0, 892, 893,
- 1, 0, 0, 0, 893, 895, 1, 0, 0, 0, 894, 896, 3, 58, 29, 0, 895, 894, 1,
- 0, 0, 0, 895, 896, 1, 0, 0, 0, 896, 63, 1, 0, 0, 0, 897, 899, 5, 63, 0,
- 0, 898, 900, 5, 57, 0, 0, 899, 898, 1, 0, 0, 0, 899, 900, 1, 0, 0, 0, 900,
- 901, 1, 0, 0, 0, 901, 902, 3, 182, 91, 0, 902, 65, 1, 0, 0, 0, 903, 904,
- 5, 65, 0, 0, 904, 907, 7, 9, 0, 0, 905, 906, 5, 82, 0, 0, 906, 908, 5,
- 72, 0, 0, 907, 905, 1, 0, 0, 0, 907, 908, 1, 0, 0, 0, 908, 912, 1, 0, 0,
- 0, 909, 910, 3, 182, 91, 0, 910, 911, 5, 2, 0, 0, 911, 913, 1, 0, 0, 0,
- 912, 909, 1, 0, 0, 0, 912, 913, 1, 0, 0, 0, 913, 914, 1, 0, 0, 0, 914,
- 915, 3, 228, 114, 0, 915, 67, 1, 0, 0, 0, 916, 917, 6, 34, -1, 0, 917,
- 1006, 3, 72, 36, 0, 918, 1006, 5, 190, 0, 0, 919, 1006, 5, 191, 0, 0, 920,
- 921, 3, 182, 91, 0, 921, 922, 5, 2, 0, 0, 922, 924, 1, 0, 0, 0, 923, 920,
- 1, 0, 0, 0, 923, 924, 1, 0, 0, 0, 924, 925, 1, 0, 0, 0, 925, 926, 3, 184,
- 92, 0, 926, 927, 5, 2, 0, 0, 927, 929, 1, 0, 0, 0, 928, 923, 1, 0, 0, 0,
- 928, 929, 1, 0, 0, 0, 929, 930, 1, 0, 0, 0, 930, 1006, 3, 190, 95, 0, 931,
- 932, 3, 166, 83, 0, 932, 933, 3, 68, 34, 21, 933, 1006, 1, 0, 0, 0, 934,
- 935, 3, 180, 90, 0, 935, 948, 5, 3, 0, 0, 936, 938, 5, 64, 0, 0, 937, 936,
- 1, 0, 0, 0, 937, 938, 1, 0, 0, 0, 938, 939, 1, 0, 0, 0, 939, 944, 3, 68,
- 34, 0, 940, 941, 5, 5, 0, 0, 941, 943, 3, 68, 34, 0, 942, 940, 1, 0, 0,
- 0, 943, 946, 1, 0, 0, 0, 944, 942, 1, 0, 0, 0, 944, 945, 1, 0, 0, 0, 945,
- 949, 1, 0, 0, 0, 946, 944, 1, 0, 0, 0, 947, 949, 5, 7, 0, 0, 948, 937,
- 1, 0, 0, 0, 948, 947, 1, 0, 0, 0, 948, 949, 1, 0, 0, 0, 949, 950, 1, 0,
- 0, 0, 950, 952, 5, 4, 0, 0, 951, 953, 3, 116, 58, 0, 952, 951, 1, 0, 0,
- 0, 952, 953, 1, 0, 0, 0, 953, 955, 1, 0, 0, 0, 954, 956, 3, 120, 60, 0,
- 955, 954, 1, 0, 0, 0, 955, 956, 1, 0, 0, 0, 956, 1006, 1, 0, 0, 0, 957,
- 958, 5, 3, 0, 0, 958, 963, 3, 68, 34, 0, 959, 960, 5, 5, 0, 0, 960, 962,
- 3, 68, 34, 0, 961, 959, 1, 0, 0, 0, 962, 965, 1, 0, 0, 0, 963, 961, 1,
- 0, 0, 0, 963, 964, 1, 0, 0, 0, 964, 966, 1, 0, 0, 0, 965, 963, 1, 0, 0,
- 0, 966, 967, 5, 4, 0, 0, 967, 1006, 1, 0, 0, 0, 968, 969, 5, 45, 0, 0,
- 969, 970, 5, 3, 0, 0, 970, 971, 3, 68, 34, 0, 971, 972, 5, 35, 0, 0, 972,
- 973, 3, 32, 16, 0, 973, 974, 5, 4, 0, 0, 974, 1006, 1, 0, 0, 0, 975, 977,
- 5, 104, 0, 0, 976, 975, 1, 0, 0, 0, 976, 977, 1, 0, 0, 0, 977, 978, 1,
- 0, 0, 0, 978, 980, 5, 72, 0, 0, 979, 976, 1, 0, 0, 0, 979, 980, 1, 0, 0,
- 0, 980, 981, 1, 0, 0, 0, 981, 982, 5, 3, 0, 0, 982, 983, 3, 84, 42, 0,
- 983, 984, 5, 4, 0, 0, 984, 1006, 1, 0, 0, 0, 985, 987, 5, 44, 0, 0, 986,
- 988, 3, 68, 34, 0, 987, 986, 1, 0, 0, 0, 987, 988, 1, 0, 0, 0, 988, 994,
- 1, 0, 0, 0, 989, 990, 5, 150, 0, 0, 990, 991, 3, 68, 34, 0, 991, 992, 5,
- 138, 0, 0, 992, 993, 3, 68, 34, 0, 993, 995, 1, 0, 0, 0, 994, 989, 1, 0,
- 0, 0, 995, 996, 1, 0, 0, 0, 996, 994, 1, 0, 0, 0, 996, 997, 1, 0, 0, 0,
- 997, 1000, 1, 0, 0, 0, 998, 999, 5, 67, 0, 0, 999, 1001, 3, 68, 34, 0,
- 1000, 998, 1, 0, 0, 0, 1000, 1001, 1, 0, 0, 0, 1001, 1002, 1, 0, 0, 0,
- 1002, 1003, 5, 68, 0, 0, 1003, 1006, 1, 0, 0, 0, 1004, 1006, 3, 70, 35,
- 0, 1005, 916, 1, 0, 0, 0, 1005, 918, 1, 0, 0, 0, 1005, 919, 1, 0, 0, 0,
- 1005, 928, 1, 0, 0, 0, 1005, 931, 1, 0, 0, 0, 1005, 934, 1, 0, 0, 0, 1005,
- 957, 1, 0, 0, 0, 1005, 968, 1, 0, 0, 0, 1005, 979, 1, 0, 0, 0, 1005, 985,
- 1, 0, 0, 0, 1005, 1004, 1, 0, 0, 0, 1006, 1126, 1, 0, 0, 0, 1007, 1008,
- 10, 20, 0, 0, 1008, 1009, 5, 13, 0, 0, 1009, 1125, 3, 68, 34, 21, 1010,
- 1011, 10, 19, 0, 0, 1011, 1012, 7, 10, 0, 0, 1012, 1125, 3, 68, 34, 20,
- 1013, 1014, 10, 18, 0, 0, 1014, 1015, 7, 11, 0, 0, 1015, 1125, 3, 68, 34,
- 19, 1016, 1017, 10, 17, 0, 0, 1017, 1018, 7, 4, 0, 0, 1018, 1125, 3, 68,
- 34, 18, 1019, 1020, 10, 16, 0, 0, 1020, 1021, 7, 12, 0, 0, 1021, 1125,
- 3, 68, 34, 17, 1022, 1023, 10, 15, 0, 0, 1023, 1024, 7, 13, 0, 0, 1024,
- 1125, 3, 68, 34, 16, 1025, 1041, 10, 14, 0, 0, 1026, 1042, 5, 6, 0, 0,
- 1027, 1042, 5, 24, 0, 0, 1028, 1042, 5, 25, 0, 0, 1029, 1042, 5, 26, 0,
- 0, 1030, 1042, 5, 94, 0, 0, 1031, 1032, 5, 94, 0, 0, 1032, 1042, 5, 104,
- 0, 0, 1033, 1035, 5, 104, 0, 0, 1034, 1033, 1, 0, 0, 0, 1034, 1035, 1,
- 0, 0, 0, 1035, 1036, 1, 0, 0, 0, 1036, 1042, 5, 85, 0, 0, 1037, 1042, 5,
- 99, 0, 0, 1038, 1042, 5, 79, 0, 0, 1039, 1042, 5, 101, 0, 0, 1040, 1042,
- 5, 120, 0, 0, 1041, 1026, 1, 0, 0, 0, 1041, 1027, 1, 0, 0, 0, 1041, 1028,
- 1, 0, 0, 0, 1041, 1029, 1, 0, 0, 0, 1041, 1030, 1, 0, 0, 0, 1041, 1031,
- 1, 0, 0, 0, 1041, 1034, 1, 0, 0, 0, 1041, 1037, 1, 0, 0, 0, 1041, 1038,
- 1, 0, 0, 0, 1041, 1039, 1, 0, 0, 0, 1041, 1040, 1, 0, 0, 0, 1042, 1043,
- 1, 0, 0, 0, 1043, 1125, 3, 68, 34, 15, 1044, 1045, 10, 12, 0, 0, 1045,
- 1046, 5, 34, 0, 0, 1046, 1125, 3, 68, 34, 13, 1047, 1048, 10, 11, 0, 0,
- 1048, 1049, 5, 110, 0, 0, 1049, 1125, 3, 68, 34, 12, 1050, 1052, 10, 4,
- 0, 0, 1051, 1053, 5, 104, 0, 0, 1052, 1051, 1, 0, 0, 0, 1052, 1053, 1,
- 0, 0, 0, 1053, 1054, 1, 0, 0, 0, 1054, 1055, 5, 41, 0, 0, 1055, 1056, 3,
- 68, 34, 0, 1056, 1057, 5, 34, 0, 0, 1057, 1058, 3, 68, 34, 5, 1058, 1125,
- 1, 0, 0, 0, 1059, 1061, 10, 13, 0, 0, 1060, 1062, 5, 104, 0, 0, 1061, 1060,
- 1, 0, 0, 0, 1061, 1062, 1, 0, 0, 0, 1062, 1063, 1, 0, 0, 0, 1063, 1102,
- 5, 85, 0, 0, 1064, 1074, 5, 3, 0, 0, 1065, 1075, 3, 84, 42, 0, 1066, 1071,
- 3, 68, 34, 0, 1067, 1068, 5, 5, 0, 0, 1068, 1070, 3, 68, 34, 0, 1069, 1067,
- 1, 0, 0, 0, 1070, 1073, 1, 0, 0, 0, 1071, 1069, 1, 0, 0, 0, 1071, 1072,
- 1, 0, 0, 0, 1072, 1075, 1, 0, 0, 0, 1073, 1071, 1, 0, 0, 0, 1074, 1065,
- 1, 0, 0, 0, 1074, 1066, 1, 0, 0, 0, 1074, 1075, 1, 0, 0, 0, 1075, 1076,
- 1, 0, 0, 0, 1076, 1103, 5, 4, 0, 0, 1077, 1078, 3, 182, 91, 0, 1078, 1079,
- 5, 2, 0, 0, 1079, 1081, 1, 0, 0, 0, 1080, 1077, 1, 0, 0, 0, 1080, 1081,
- 1, 0, 0, 0, 1081, 1082, 1, 0, 0, 0, 1082, 1103, 3, 184, 92, 0, 1083, 1084,
- 3, 182, 91, 0, 1084, 1085, 5, 2, 0, 0, 1085, 1087, 1, 0, 0, 0, 1086, 1083,
- 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087, 1088, 1, 0, 0, 0, 1088, 1089,
- 3, 226, 113, 0, 1089, 1098, 5, 3, 0, 0, 1090, 1095, 3, 68, 34, 0, 1091,
- 1092, 5, 5, 0, 0, 1092, 1094, 3, 68, 34, 0, 1093, 1091, 1, 0, 0, 0, 1094,
- 1097, 1, 0, 0, 0, 1095, 1093, 1, 0, 0, 0, 1095, 1096, 1, 0, 0, 0, 1096,
- 1099, 1, 0, 0, 0, 1097, 1095, 1, 0, 0, 0, 1098, 1090, 1, 0, 0, 0, 1098,
- 1099, 1, 0, 0, 0, 1099, 1100, 1, 0, 0, 0, 1100, 1101, 5, 4, 0, 0, 1101,
- 1103, 1, 0, 0, 0, 1102, 1064, 1, 0, 0, 0, 1102, 1080, 1, 0, 0, 0, 1102,
- 1086, 1, 0, 0, 0, 1103, 1125, 1, 0, 0, 0, 1104, 1105, 10, 7, 0, 0, 1105,
- 1106, 5, 47, 0, 0, 1106, 1125, 3, 192, 96, 0, 1107, 1109, 10, 6, 0, 0,
- 1108, 1110, 5, 104, 0, 0, 1109, 1108, 1, 0, 0, 0, 1109, 1110, 1, 0, 0,
- 0, 1110, 1111, 1, 0, 0, 0, 1111, 1112, 7, 14, 0, 0, 1112, 1115, 3, 68,
- 34, 0, 1113, 1114, 5, 69, 0, 0, 1114, 1116, 3, 68, 34, 0, 1115, 1113, 1,
- 0, 0, 0, 1115, 1116, 1, 0, 0, 0, 1116, 1125, 1, 0, 0, 0, 1117, 1122, 10,
- 5, 0, 0, 1118, 1123, 5, 95, 0, 0, 1119, 1123, 5, 105, 0, 0, 1120, 1121,
- 5, 104, 0, 0, 1121, 1123, 5, 106, 0, 0, 1122, 1118, 1, 0, 0, 0, 1122, 1119,
- 1, 0, 0, 0, 1122, 1120, 1, 0, 0, 0, 1123, 1125, 1, 0, 0, 0, 1124, 1007,
- 1, 0, 0, 0, 1124, 1010, 1, 0, 0, 0, 1124, 1013, 1, 0, 0, 0, 1124, 1016,
- 1, 0, 0, 0, 1124, 1019, 1, 0, 0, 0, 1124, 1022, 1, 0, 0, 0, 1124, 1025,
- 1, 0, 0, 0, 1124, 1044, 1, 0, 0, 0, 1124, 1047, 1, 0, 0, 0, 1124, 1050,
- 1, 0, 0, 0, 1124, 1059, 1, 0, 0, 0, 1124, 1104, 1, 0, 0, 0, 1124, 1107,
- 1, 0, 0, 0, 1124, 1117, 1, 0, 0, 0, 1125, 1128, 1, 0, 0, 0, 1126, 1124,
- 1, 0, 0, 0, 1126, 1127, 1, 0, 0, 0, 1127, 69, 1, 0, 0, 0, 1128, 1126, 1,
- 0, 0, 0, 1129, 1130, 5, 117, 0, 0, 1130, 1135, 5, 3, 0, 0, 1131, 1136,
- 5, 83, 0, 0, 1132, 1133, 7, 15, 0, 0, 1133, 1134, 5, 5, 0, 0, 1134, 1136,
- 3, 168, 84, 0, 1135, 1131, 1, 0, 0, 0, 1135, 1132, 1, 0, 0, 0, 1136, 1137,
- 1, 0, 0, 0, 1137, 1138, 5, 4, 0, 0, 1138, 71, 1, 0, 0, 0, 1139, 1140, 7,
- 16, 0, 0, 1140, 73, 1, 0, 0, 0, 1141, 1143, 3, 50, 25, 0, 1142, 1141, 1,
- 0, 0, 0, 1142, 1143, 1, 0, 0, 0, 1143, 1149, 1, 0, 0, 0, 1144, 1150, 5,
- 90, 0, 0, 1145, 1150, 5, 124, 0, 0, 1146, 1147, 5, 90, 0, 0, 1147, 1148,
- 5, 110, 0, 0, 1148, 1150, 7, 8, 0, 0, 1149, 1144, 1, 0, 0, 0, 1149, 1145,
- 1, 0, 0, 0, 1149, 1146, 1, 0, 0, 0, 1150, 1151, 1, 0, 0, 0, 1151, 1155,
- 5, 93, 0, 0, 1152, 1153, 3, 182, 91, 0, 1153, 1154, 5, 2, 0, 0, 1154, 1156,
- 1, 0, 0, 0, 1155, 1152, 1, 0, 0, 0, 1155, 1156, 1, 0, 0, 0, 1156, 1157,
- 1, 0, 0, 0, 1157, 1160, 3, 184, 92, 0, 1158, 1159, 5, 35, 0, 0, 1159, 1161,
- 3, 208, 104, 0, 1160, 1158, 1, 0, 0, 0, 1160, 1161, 1, 0, 0, 0, 1161, 1173,
- 1, 0, 0, 0, 1162, 1163, 5, 3, 0, 0, 1163, 1168, 3, 190, 95, 0, 1164, 1165,
- 5, 5, 0, 0, 1165, 1167, 3, 190, 95, 0, 1166, 1164, 1, 0, 0, 0, 1167, 1170,
- 1, 0, 0, 0, 1168, 1166, 1, 0, 0, 0, 1168, 1169, 1, 0, 0, 0, 1169, 1171,
- 1, 0, 0, 0, 1170, 1168, 1, 0, 0, 0, 1171, 1172, 5, 4, 0, 0, 1172, 1174,
- 1, 0, 0, 0, 1173, 1162, 1, 0, 0, 0, 1173, 1174, 1, 0, 0, 0, 1174, 1204,
- 1, 0, 0, 0, 1175, 1176, 5, 147, 0, 0, 1176, 1177, 5, 3, 0, 0, 1177, 1182,
- 3, 68, 34, 0, 1178, 1179, 5, 5, 0, 0, 1179, 1181, 3, 68, 34, 0, 1180, 1178,
- 1, 0, 0, 0, 1181, 1184, 1, 0, 0, 0, 1182, 1180, 1, 0, 0, 0, 1182, 1183,
- 1, 0, 0, 0, 1183, 1185, 1, 0, 0, 0, 1184, 1182, 1, 0, 0, 0, 1185, 1200,
- 5, 4, 0, 0, 1186, 1187, 5, 5, 0, 0, 1187, 1188, 5, 3, 0, 0, 1188, 1193,
- 3, 68, 34, 0, 1189, 1190, 5, 5, 0, 0, 1190, 1192, 3, 68, 34, 0, 1191, 1189,
- 1, 0, 0, 0, 1192, 1195, 1, 0, 0, 0, 1193, 1191, 1, 0, 0, 0, 1193, 1194,
- 1, 0, 0, 0, 1194, 1196, 1, 0, 0, 0, 1195, 1193, 1, 0, 0, 0, 1196, 1197,
- 5, 4, 0, 0, 1197, 1199, 1, 0, 0, 0, 1198, 1186, 1, 0, 0, 0, 1199, 1202,
- 1, 0, 0, 0, 1200, 1198, 1, 0, 0, 0, 1200, 1201, 1, 0, 0, 0, 1201, 1205,
- 1, 0, 0, 0, 1202, 1200, 1, 0, 0, 0, 1203, 1205, 3, 84, 42, 0, 1204, 1175,
- 1, 0, 0, 0, 1204, 1203, 1, 0, 0, 0, 1205, 1207, 1, 0, 0, 0, 1206, 1208,
- 3, 76, 38, 0, 1207, 1206, 1, 0, 0, 0, 1207, 1208, 1, 0, 0, 0, 1208, 1210,
- 1, 0, 0, 0, 1209, 1211, 3, 58, 29, 0, 1210, 1209, 1, 0, 0, 0, 1210, 1211,
- 1, 0, 0, 0, 1211, 1215, 1, 0, 0, 0, 1212, 1213, 5, 58, 0, 0, 1213, 1215,
- 5, 147, 0, 0, 1214, 1142, 1, 0, 0, 0, 1214, 1212, 1, 0, 0, 0, 1215, 75,
- 1, 0, 0, 0, 1216, 1217, 5, 109, 0, 0, 1217, 1232, 5, 50, 0, 0, 1218, 1219,
- 5, 3, 0, 0, 1219, 1224, 3, 24, 12, 0, 1220, 1221, 5, 5, 0, 0, 1221, 1223,
- 3, 24, 12, 0, 1222, 1220, 1, 0, 0, 0, 1223, 1226, 1, 0, 0, 0, 1224, 1222,
- 1, 0, 0, 0, 1224, 1225, 1, 0, 0, 0, 1225, 1227, 1, 0, 0, 0, 1226, 1224,
- 1, 0, 0, 0, 1227, 1230, 5, 4, 0, 0, 1228, 1229, 5, 151, 0, 0, 1229, 1231,
- 3, 68, 34, 0, 1230, 1228, 1, 0, 0, 0, 1230, 1231, 1, 0, 0, 0, 1231, 1233,
- 1, 0, 0, 0, 1232, 1218, 1, 0, 0, 0, 1232, 1233, 1, 0, 0, 0, 1233, 1234,
- 1, 0, 0, 0, 1234, 1261, 5, 186, 0, 0, 1235, 1262, 5, 187, 0, 0, 1236, 1237,
- 5, 144, 0, 0, 1237, 1240, 5, 133, 0, 0, 1238, 1241, 3, 190, 95, 0, 1239,
- 1241, 3, 108, 54, 0, 1240, 1238, 1, 0, 0, 0, 1240, 1239, 1, 0, 0, 0, 1241,
- 1242, 1, 0, 0, 0, 1242, 1243, 5, 6, 0, 0, 1243, 1254, 3, 68, 34, 0, 1244,
- 1247, 5, 5, 0, 0, 1245, 1248, 3, 190, 95, 0, 1246, 1248, 3, 108, 54, 0,
- 1247, 1245, 1, 0, 0, 0, 1247, 1246, 1, 0, 0, 0, 1248, 1249, 1, 0, 0, 0,
- 1249, 1250, 5, 6, 0, 0, 1250, 1251, 3, 68, 34, 0, 1251, 1253, 1, 0, 0,
- 0, 1252, 1244, 1, 0, 0, 0, 1253, 1256, 1, 0, 0, 0, 1254, 1252, 1, 0, 0,
- 0, 1254, 1255, 1, 0, 0, 0, 1255, 1259, 1, 0, 0, 0, 1256, 1254, 1, 0, 0,
- 0, 1257, 1258, 5, 151, 0, 0, 1258, 1260, 3, 68, 34, 0, 1259, 1257, 1, 0,
- 0, 0, 1259, 1260, 1, 0, 0, 0, 1260, 1262, 1, 0, 0, 0, 1261, 1235, 1, 0,
- 0, 0, 1261, 1236, 1, 0, 0, 0, 1262, 77, 1, 0, 0, 0, 1263, 1267, 5, 114,
- 0, 0, 1264, 1265, 3, 182, 91, 0, 1265, 1266, 5, 2, 0, 0, 1266, 1268, 1,
- 0, 0, 0, 1267, 1264, 1, 0, 0, 0, 1267, 1268, 1, 0, 0, 0, 1268, 1269, 1,
- 0, 0, 0, 1269, 1276, 3, 204, 102, 0, 1270, 1271, 5, 6, 0, 0, 1271, 1277,
- 3, 80, 40, 0, 1272, 1273, 5, 3, 0, 0, 1273, 1274, 3, 80, 40, 0, 1274, 1275,
- 5, 4, 0, 0, 1275, 1277, 1, 0, 0, 0, 1276, 1270, 1, 0, 0, 0, 1276, 1272,
- 1, 0, 0, 0, 1276, 1277, 1, 0, 0, 0, 1277, 79, 1, 0, 0, 0, 1278, 1282, 3,
- 36, 18, 0, 1279, 1282, 3, 176, 88, 0, 1280, 1282, 5, 192, 0, 0, 1281, 1278,
- 1, 0, 0, 0, 1281, 1279, 1, 0, 0, 0, 1281, 1280, 1, 0, 0, 0, 1282, 81, 1,
- 0, 0, 0, 1283, 1294, 5, 121, 0, 0, 1284, 1295, 3, 192, 96, 0, 1285, 1286,
- 3, 182, 91, 0, 1286, 1287, 5, 2, 0, 0, 1287, 1289, 1, 0, 0, 0, 1288, 1285,
- 1, 0, 0, 0, 1288, 1289, 1, 0, 0, 0, 1289, 1292, 1, 0, 0, 0, 1290, 1293,
- 3, 184, 92, 0, 1291, 1293, 3, 196, 98, 0, 1292, 1290, 1, 0, 0, 0, 1292,
- 1291, 1, 0, 0, 0, 1293, 1295, 1, 0, 0, 0, 1294, 1284, 1, 0, 0, 0, 1294,
- 1288, 1, 0, 0, 0, 1294, 1295, 1, 0, 0, 0, 1295, 83, 1, 0, 0, 0, 1296, 1298,
- 3, 132, 66, 0, 1297, 1296, 1, 0, 0, 0, 1297, 1298, 1, 0, 0, 0, 1298, 1299,
- 1, 0, 0, 0, 1299, 1305, 3, 88, 44, 0, 1300, 1301, 3, 104, 52, 0, 1301,
- 1302, 3, 88, 44, 0, 1302, 1304, 1, 0, 0, 0, 1303, 1300, 1, 0, 0, 0, 1304,
- 1307, 1, 0, 0, 0, 1305, 1303, 1, 0, 0, 0, 1305, 1306, 1, 0, 0, 0, 1306,
- 1309, 1, 0, 0, 0, 1307, 1305, 1, 0, 0, 0, 1308, 1310, 3, 134, 67, 0, 1309,
- 1308, 1, 0, 0, 0, 1309, 1310, 1, 0, 0, 0, 1310, 1312, 1, 0, 0, 0, 1311,
- 1313, 3, 136, 68, 0, 1312, 1311, 1, 0, 0, 0, 1312, 1313, 1, 0, 0, 0, 1313,
- 85, 1, 0, 0, 0, 1314, 1321, 3, 96, 48, 0, 1315, 1316, 3, 100, 50, 0, 1316,
- 1317, 3, 96, 48, 0, 1317, 1318, 3, 102, 51, 0, 1318, 1320, 1, 0, 0, 0,
- 1319, 1315, 1, 0, 0, 0, 1320, 1323, 1, 0, 0, 0, 1321, 1319, 1, 0, 0, 0,
- 1321, 1322, 1, 0, 0, 0, 1322, 87, 1, 0, 0, 0, 1323, 1321, 1, 0, 0, 0, 1324,
- 1326, 5, 132, 0, 0, 1325, 1327, 7, 17, 0, 0, 1326, 1325, 1, 0, 0, 0, 1326,
- 1327, 1, 0, 0, 0, 1327, 1328, 1, 0, 0, 0, 1328, 1333, 3, 98, 49, 0, 1329,
- 1330, 5, 5, 0, 0, 1330, 1332, 3, 98, 49, 0, 1331, 1329, 1, 0, 0, 0, 1332,
- 1335, 1, 0, 0, 0, 1333, 1331, 1, 0, 0, 0, 1333, 1334, 1, 0, 0, 0, 1334,
- 1348, 1, 0, 0, 0, 1335, 1333, 1, 0, 0, 0, 1336, 1346, 5, 77, 0, 0, 1337,
- 1342, 3, 96, 48, 0, 1338, 1339, 5, 5, 0, 0, 1339, 1341, 3, 96, 48, 0, 1340,
- 1338, 1, 0, 0, 0, 1341, 1344, 1, 0, 0, 0, 1342, 1340, 1, 0, 0, 0, 1342,
- 1343, 1, 0, 0, 0, 1343, 1347, 1, 0, 0, 0, 1344, 1342, 1, 0, 0, 0, 1345,
- 1347, 3, 86, 43, 0, 1346, 1337, 1, 0, 0, 0, 1346, 1345, 1, 0, 0, 0, 1347,
- 1349, 1, 0, 0, 0, 1348, 1336, 1, 0, 0, 0, 1348, 1349, 1, 0, 0, 0, 1349,
- 1352, 1, 0, 0, 0, 1350, 1351, 5, 151, 0, 0, 1351, 1353, 3, 68, 34, 0, 1352,
- 1350, 1, 0, 0, 0, 1352, 1353, 1, 0, 0, 0, 1353, 1368, 1, 0, 0, 0, 1354,
- 1355, 5, 80, 0, 0, 1355, 1356, 5, 42, 0, 0, 1356, 1361, 3, 68, 34, 0, 1357,
- 1358, 5, 5, 0, 0, 1358, 1360, 3, 68, 34, 0, 1359, 1357, 1, 0, 0, 0, 1360,
- 1363, 1, 0, 0, 0, 1361, 1359, 1, 0, 0, 0, 1361, 1362, 1, 0, 0, 0, 1362,
- 1366, 1, 0, 0, 0, 1363, 1361, 1, 0, 0, 0, 1364, 1365, 5, 81, 0, 0, 1365,
- 1367, 3, 68, 34, 0, 1366, 1364, 1, 0, 0, 0, 1366, 1367, 1, 0, 0, 0, 1367,
- 1369, 1, 0, 0, 0, 1368, 1354, 1, 0, 0, 0, 1368, 1369, 1, 0, 0, 0, 1369,
- 1384, 1, 0, 0, 0, 1370, 1371, 5, 177, 0, 0, 1371, 1372, 3, 214, 107, 0,
- 1372, 1373, 5, 35, 0, 0, 1373, 1381, 3, 118, 59, 0, 1374, 1375, 5, 5, 0,
- 0, 1375, 1376, 3, 214, 107, 0, 1376, 1377, 5, 35, 0, 0, 1377, 1378, 3,
- 118, 59, 0, 1378, 1380, 1, 0, 0, 0, 1379, 1374, 1, 0, 0, 0, 1380, 1383,
- 1, 0, 0, 0, 1381, 1379, 1, 0, 0, 0, 1381, 1382, 1, 0, 0, 0, 1382, 1385,
- 1, 0, 0, 0, 1383, 1381, 1, 0, 0, 0, 1384, 1370, 1, 0, 0, 0, 1384, 1385,
- 1, 0, 0, 0, 1385, 1415, 1, 0, 0, 0, 1386, 1387, 5, 147, 0, 0, 1387, 1388,
- 5, 3, 0, 0, 1388, 1393, 3, 68, 34, 0, 1389, 1390, 5, 5, 0, 0, 1390, 1392,
- 3, 68, 34, 0, 1391, 1389, 1, 0, 0, 0, 1392, 1395, 1, 0, 0, 0, 1393, 1391,
- 1, 0, 0, 0, 1393, 1394, 1, 0, 0, 0, 1394, 1396, 1, 0, 0, 0, 1395, 1393,
- 1, 0, 0, 0, 1396, 1411, 5, 4, 0, 0, 1397, 1398, 5, 5, 0, 0, 1398, 1399,
- 5, 3, 0, 0, 1399, 1404, 3, 68, 34, 0, 1400, 1401, 5, 5, 0, 0, 1401, 1403,
- 3, 68, 34, 0, 1402, 1400, 1, 0, 0, 0, 1403, 1406, 1, 0, 0, 0, 1404, 1402,
- 1, 0, 0, 0, 1404, 1405, 1, 0, 0, 0, 1405, 1407, 1, 0, 0, 0, 1406, 1404,
- 1, 0, 0, 0, 1407, 1408, 5, 4, 0, 0, 1408, 1410, 1, 0, 0, 0, 1409, 1397,
- 1, 0, 0, 0, 1410, 1413, 1, 0, 0, 0, 1411, 1409, 1, 0, 0, 0, 1411, 1412,
- 1, 0, 0, 0, 1412, 1415, 1, 0, 0, 0, 1413, 1411, 1, 0, 0, 0, 1414, 1324,
- 1, 0, 0, 0, 1414, 1386, 1, 0, 0, 0, 1415, 89, 1, 0, 0, 0, 1416, 1417, 3,
- 84, 42, 0, 1417, 91, 1, 0, 0, 0, 1418, 1420, 3, 132, 66, 0, 1419, 1418,
- 1, 0, 0, 0, 1419, 1420, 1, 0, 0, 0, 1420, 1421, 1, 0, 0, 0, 1421, 1423,
- 3, 88, 44, 0, 1422, 1424, 3, 134, 67, 0, 1423, 1422, 1, 0, 0, 0, 1423,
- 1424, 1, 0, 0, 0, 1424, 1426, 1, 0, 0, 0, 1425, 1427, 3, 136, 68, 0, 1426,
- 1425, 1, 0, 0, 0, 1426, 1427, 1, 0, 0, 0, 1427, 93, 1, 0, 0, 0, 1428, 1430,
- 3, 132, 66, 0, 1429, 1428, 1, 0, 0, 0, 1429, 1430, 1, 0, 0, 0, 1430, 1431,
- 1, 0, 0, 0, 1431, 1441, 3, 88, 44, 0, 1432, 1434, 5, 142, 0, 0, 1433, 1435,
- 5, 31, 0, 0, 1434, 1433, 1, 0, 0, 0, 1434, 1435, 1, 0, 0, 0, 1435, 1439,
- 1, 0, 0, 0, 1436, 1439, 5, 92, 0, 0, 1437, 1439, 5, 70, 0, 0, 1438, 1432,
- 1, 0, 0, 0, 1438, 1436, 1, 0, 0, 0, 1438, 1437, 1, 0, 0, 0, 1439, 1440,
- 1, 0, 0, 0, 1440, 1442, 3, 88, 44, 0, 1441, 1438, 1, 0, 0, 0, 1442, 1443,
- 1, 0, 0, 0, 1443, 1441, 1, 0, 0, 0, 1443, 1444, 1, 0, 0, 0, 1444, 1446,
- 1, 0, 0, 0, 1445, 1447, 3, 134, 67, 0, 1446, 1445, 1, 0, 0, 0, 1446, 1447,
- 1, 0, 0, 0, 1447, 1449, 1, 0, 0, 0, 1448, 1450, 3, 136, 68, 0, 1449, 1448,
- 1, 0, 0, 0, 1449, 1450, 1, 0, 0, 0, 1450, 95, 1, 0, 0, 0, 1451, 1452, 3,
- 182, 91, 0, 1452, 1453, 5, 2, 0, 0, 1453, 1455, 1, 0, 0, 0, 1454, 1451,
- 1, 0, 0, 0, 1454, 1455, 1, 0, 0, 0, 1455, 1456, 1, 0, 0, 0, 1456, 1461,
- 3, 184, 92, 0, 1457, 1459, 5, 35, 0, 0, 1458, 1457, 1, 0, 0, 0, 1458, 1459,
- 1, 0, 0, 0, 1459, 1460, 1, 0, 0, 0, 1460, 1462, 3, 208, 104, 0, 1461, 1458,
- 1, 0, 0, 0, 1461, 1462, 1, 0, 0, 0, 1462, 1468, 1, 0, 0, 0, 1463, 1464,
- 5, 87, 0, 0, 1464, 1465, 5, 42, 0, 0, 1465, 1469, 3, 196, 98, 0, 1466,
- 1467, 5, 104, 0, 0, 1467, 1469, 5, 87, 0, 0, 1468, 1463, 1, 0, 0, 0, 1468,
- 1466, 1, 0, 0, 0, 1468, 1469, 1, 0, 0, 0, 1469, 1580, 1, 0, 0, 0, 1470,
- 1471, 3, 182, 91, 0, 1471, 1472, 5, 2, 0, 0, 1472, 1474, 1, 0, 0, 0, 1473,
- 1470, 1, 0, 0, 0, 1473, 1474, 1, 0, 0, 0, 1474, 1475, 1, 0, 0, 0, 1475,
- 1476, 3, 226, 113, 0, 1476, 1477, 5, 3, 0, 0, 1477, 1482, 3, 68, 34, 0,
- 1478, 1479, 5, 5, 0, 0, 1479, 1481, 3, 68, 34, 0, 1480, 1478, 1, 0, 0,
- 0, 1481, 1484, 1, 0, 0, 0, 1482, 1480, 1, 0, 0, 0, 1482, 1483, 1, 0, 0,
- 0, 1483, 1485, 1, 0, 0, 0, 1484, 1482, 1, 0, 0, 0, 1485, 1490, 5, 4, 0,
- 0, 1486, 1488, 5, 35, 0, 0, 1487, 1486, 1, 0, 0, 0, 1487, 1488, 1, 0, 0,
- 0, 1488, 1489, 1, 0, 0, 0, 1489, 1491, 3, 208, 104, 0, 1490, 1487, 1, 0,
- 0, 0, 1490, 1491, 1, 0, 0, 0, 1491, 1580, 1, 0, 0, 0, 1492, 1502, 5, 3,
- 0, 0, 1493, 1498, 3, 96, 48, 0, 1494, 1495, 5, 5, 0, 0, 1495, 1497, 3,
- 96, 48, 0, 1496, 1494, 1, 0, 0, 0, 1497, 1500, 1, 0, 0, 0, 1498, 1496,
- 1, 0, 0, 0, 1498, 1499, 1, 0, 0, 0, 1499, 1503, 1, 0, 0, 0, 1500, 1498,
- 1, 0, 0, 0, 1501, 1503, 3, 86, 43, 0, 1502, 1493, 1, 0, 0, 0, 1502, 1501,
- 1, 0, 0, 0, 1503, 1504, 1, 0, 0, 0, 1504, 1505, 5, 4, 0, 0, 1505, 1580,
- 1, 0, 0, 0, 1506, 1507, 5, 3, 0, 0, 1507, 1508, 3, 84, 42, 0, 1508, 1513,
- 5, 4, 0, 0, 1509, 1511, 5, 35, 0, 0, 1510, 1509, 1, 0, 0, 0, 1510, 1511,
- 1, 0, 0, 0, 1511, 1512, 1, 0, 0, 0, 1512, 1514, 3, 208, 104, 0, 1513, 1510,
- 1, 0, 0, 0, 1513, 1514, 1, 0, 0, 0, 1514, 1580, 1, 0, 0, 0, 1515, 1516,
- 3, 182, 91, 0, 1516, 1517, 5, 2, 0, 0, 1517, 1519, 1, 0, 0, 0, 1518, 1515,
- 1, 0, 0, 0, 1518, 1519, 1, 0, 0, 0, 1519, 1520, 1, 0, 0, 0, 1520, 1525,
- 3, 184, 92, 0, 1521, 1523, 5, 35, 0, 0, 1522, 1521, 1, 0, 0, 0, 1522, 1523,
- 1, 0, 0, 0, 1523, 1524, 1, 0, 0, 0, 1524, 1526, 3, 210, 105, 0, 1525, 1522,
- 1, 0, 0, 0, 1525, 1526, 1, 0, 0, 0, 1526, 1532, 1, 0, 0, 0, 1527, 1528,
- 5, 87, 0, 0, 1528, 1529, 5, 42, 0, 0, 1529, 1533, 3, 196, 98, 0, 1530,
- 1531, 5, 104, 0, 0, 1531, 1533, 5, 87, 0, 0, 1532, 1527, 1, 0, 0, 0, 1532,
- 1530, 1, 0, 0, 0, 1532, 1533, 1, 0, 0, 0, 1533, 1580, 1, 0, 0, 0, 1534,
- 1535, 3, 182, 91, 0, 1535, 1536, 5, 2, 0, 0, 1536, 1538, 1, 0, 0, 0, 1537,
- 1534, 1, 0, 0, 0, 1537, 1538, 1, 0, 0, 0, 1538, 1539, 1, 0, 0, 0, 1539,
- 1540, 3, 226, 113, 0, 1540, 1541, 5, 3, 0, 0, 1541, 1546, 3, 68, 34, 0,
- 1542, 1543, 5, 5, 0, 0, 1543, 1545, 3, 68, 34, 0, 1544, 1542, 1, 0, 0,
- 0, 1545, 1548, 1, 0, 0, 0, 1546, 1544, 1, 0, 0, 0, 1546, 1547, 1, 0, 0,
- 0, 1547, 1549, 1, 0, 0, 0, 1548, 1546, 1, 0, 0, 0, 1549, 1554, 5, 4, 0,
- 0, 1550, 1552, 5, 35, 0, 0, 1551, 1550, 1, 0, 0, 0, 1551, 1552, 1, 0, 0,
- 0, 1552, 1553, 1, 0, 0, 0, 1553, 1555, 3, 210, 105, 0, 1554, 1551, 1, 0,
- 0, 0, 1554, 1555, 1, 0, 0, 0, 1555, 1580, 1, 0, 0, 0, 1556, 1566, 5, 3,
- 0, 0, 1557, 1562, 3, 96, 48, 0, 1558, 1559, 5, 5, 0, 0, 1559, 1561, 3,
- 96, 48, 0, 1560, 1558, 1, 0, 0, 0, 1561, 1564, 1, 0, 0, 0, 1562, 1560,
- 1, 0, 0, 0, 1562, 1563, 1, 0, 0, 0, 1563, 1567, 1, 0, 0, 0, 1564, 1562,
- 1, 0, 0, 0, 1565, 1567, 3, 86, 43, 0, 1566, 1557, 1, 0, 0, 0, 1566, 1565,
- 1, 0, 0, 0, 1567, 1568, 1, 0, 0, 0, 1568, 1569, 5, 4, 0, 0, 1569, 1580,
- 1, 0, 0, 0, 1570, 1571, 5, 3, 0, 0, 1571, 1572, 3, 84, 42, 0, 1572, 1577,
- 5, 4, 0, 0, 1573, 1575, 5, 35, 0, 0, 1574, 1573, 1, 0, 0, 0, 1574, 1575,
- 1, 0, 0, 0, 1575, 1576, 1, 0, 0, 0, 1576, 1578, 3, 210, 105, 0, 1577, 1574,
- 1, 0, 0, 0, 1577, 1578, 1, 0, 0, 0, 1578, 1580, 1, 0, 0, 0, 1579, 1454,
- 1, 0, 0, 0, 1579, 1473, 1, 0, 0, 0, 1579, 1492, 1, 0, 0, 0, 1579, 1506,
- 1, 0, 0, 0, 1579, 1518, 1, 0, 0, 0, 1579, 1537, 1, 0, 0, 0, 1579, 1556,
- 1, 0, 0, 0, 1579, 1570, 1, 0, 0, 0, 1580, 97, 1, 0, 0, 0, 1581, 1594, 5,
- 7, 0, 0, 1582, 1583, 3, 184, 92, 0, 1583, 1584, 5, 2, 0, 0, 1584, 1585,
- 5, 7, 0, 0, 1585, 1594, 1, 0, 0, 0, 1586, 1591, 3, 68, 34, 0, 1587, 1589,
- 5, 35, 0, 0, 1588, 1587, 1, 0, 0, 0, 1588, 1589, 1, 0, 0, 0, 1589, 1590,
- 1, 0, 0, 0, 1590, 1592, 3, 172, 86, 0, 1591, 1588, 1, 0, 0, 0, 1591, 1592,
- 1, 0, 0, 0, 1592, 1594, 1, 0, 0, 0, 1593, 1581, 1, 0, 0, 0, 1593, 1582,
- 1, 0, 0, 0, 1593, 1586, 1, 0, 0, 0, 1594, 99, 1, 0, 0, 0, 1595, 1610, 5,
- 5, 0, 0, 1596, 1598, 5, 102, 0, 0, 1597, 1596, 1, 0, 0, 0, 1597, 1598,
- 1, 0, 0, 0, 1598, 1604, 1, 0, 0, 0, 1599, 1601, 7, 18, 0, 0, 1600, 1602,
- 5, 112, 0, 0, 1601, 1600, 1, 0, 0, 0, 1601, 1602, 1, 0, 0, 0, 1602, 1605,
- 1, 0, 0, 0, 1603, 1605, 5, 89, 0, 0, 1604, 1599, 1, 0, 0, 0, 1604, 1603,
- 1, 0, 0, 0, 1604, 1605, 1, 0, 0, 0, 1605, 1606, 1, 0, 0, 0, 1606, 1610,
- 5, 96, 0, 0, 1607, 1608, 5, 53, 0, 0, 1608, 1610, 5, 96, 0, 0, 1609, 1595,
- 1, 0, 0, 0, 1609, 1597, 1, 0, 0, 0, 1609, 1607, 1, 0, 0, 0, 1610, 101,
- 1, 0, 0, 0, 1611, 1612, 5, 109, 0, 0, 1612, 1626, 3, 68, 34, 0, 1613, 1614,
- 5, 145, 0, 0, 1614, 1615, 5, 3, 0, 0, 1615, 1620, 3, 190, 95, 0, 1616,
- 1617, 5, 5, 0, 0, 1617, 1619, 3, 190, 95, 0, 1618, 1616, 1, 0, 0, 0, 1619,
- 1622, 1, 0, 0, 0, 1620, 1618, 1, 0, 0, 0, 1620, 1621, 1, 0, 0, 0, 1621,
- 1623, 1, 0, 0, 0, 1622, 1620, 1, 0, 0, 0, 1623, 1624, 5, 4, 0, 0, 1624,
- 1626, 1, 0, 0, 0, 1625, 1611, 1, 0, 0, 0, 1625, 1613, 1, 0, 0, 0, 1625,
- 1626, 1, 0, 0, 0, 1626, 103, 1, 0, 0, 0, 1627, 1629, 5, 142, 0, 0, 1628,
- 1630, 5, 31, 0, 0, 1629, 1628, 1, 0, 0, 0, 1629, 1630, 1, 0, 0, 0, 1630,
- 1634, 1, 0, 0, 0, 1631, 1634, 5, 92, 0, 0, 1632, 1634, 5, 70, 0, 0, 1633,
- 1627, 1, 0, 0, 0, 1633, 1631, 1, 0, 0, 0, 1633, 1632, 1, 0, 0, 0, 1634,
- 105, 1, 0, 0, 0, 1635, 1637, 3, 50, 25, 0, 1636, 1635, 1, 0, 0, 0, 1636,
- 1637, 1, 0, 0, 0, 1637, 1638, 1, 0, 0, 0, 1638, 1641, 5, 144, 0, 0, 1639,
- 1640, 5, 110, 0, 0, 1640, 1642, 7, 8, 0, 0, 1641, 1639, 1, 0, 0, 0, 1641,
- 1642, 1, 0, 0, 0, 1642, 1643, 1, 0, 0, 0, 1643, 1644, 3, 112, 56, 0, 1644,
- 1647, 5, 133, 0, 0, 1645, 1648, 3, 190, 95, 0, 1646, 1648, 3, 108, 54,
- 0, 1647, 1645, 1, 0, 0, 0, 1647, 1646, 1, 0, 0, 0, 1648, 1649, 1, 0, 0,
- 0, 1649, 1650, 5, 6, 0, 0, 1650, 1661, 3, 68, 34, 0, 1651, 1654, 5, 5,
- 0, 0, 1652, 1655, 3, 190, 95, 0, 1653, 1655, 3, 108, 54, 0, 1654, 1652,
- 1, 0, 0, 0, 1654, 1653, 1, 0, 0, 0, 1655, 1656, 1, 0, 0, 0, 1656, 1657,
- 5, 6, 0, 0, 1657, 1658, 3, 68, 34, 0, 1658, 1660, 1, 0, 0, 0, 1659, 1651,
- 1, 0, 0, 0, 1660, 1663, 1, 0, 0, 0, 1661, 1659, 1, 0, 0, 0, 1661, 1662,
- 1, 0, 0, 0, 1662, 1666, 1, 0, 0, 0, 1663, 1661, 1, 0, 0, 0, 1664, 1665,
- 5, 151, 0, 0, 1665, 1667, 3, 68, 34, 0, 1666, 1664, 1, 0, 0, 0, 1666, 1667,
- 1, 0, 0, 0, 1667, 1669, 1, 0, 0, 0, 1668, 1670, 3, 58, 29, 0, 1669, 1668,
- 1, 0, 0, 0, 1669, 1670, 1, 0, 0, 0, 1670, 107, 1, 0, 0, 0, 1671, 1672,
- 5, 3, 0, 0, 1672, 1677, 3, 190, 95, 0, 1673, 1674, 5, 5, 0, 0, 1674, 1676,
- 3, 190, 95, 0, 1675, 1673, 1, 0, 0, 0, 1676, 1679, 1, 0, 0, 0, 1677, 1675,
- 1, 0, 0, 0, 1677, 1678, 1, 0, 0, 0, 1678, 1680, 1, 0, 0, 0, 1679, 1677,
- 1, 0, 0, 0, 1680, 1681, 5, 4, 0, 0, 1681, 109, 1, 0, 0, 0, 1682, 1684,
- 3, 50, 25, 0, 1683, 1682, 1, 0, 0, 0, 1683, 1684, 1, 0, 0, 0, 1684, 1685,
- 1, 0, 0, 0, 1685, 1688, 5, 144, 0, 0, 1686, 1687, 5, 110, 0, 0, 1687, 1689,
- 7, 8, 0, 0, 1688, 1686, 1, 0, 0, 0, 1688, 1689, 1, 0, 0, 0, 1689, 1690,
- 1, 0, 0, 0, 1690, 1691, 3, 112, 56, 0, 1691, 1694, 5, 133, 0, 0, 1692,
- 1695, 3, 190, 95, 0, 1693, 1695, 3, 108, 54, 0, 1694, 1692, 1, 0, 0, 0,
- 1694, 1693, 1, 0, 0, 0, 1695, 1696, 1, 0, 0, 0, 1696, 1697, 5, 6, 0, 0,
- 1697, 1708, 3, 68, 34, 0, 1698, 1701, 5, 5, 0, 0, 1699, 1702, 3, 190, 95,
- 0, 1700, 1702, 3, 108, 54, 0, 1701, 1699, 1, 0, 0, 0, 1701, 1700, 1, 0,
- 0, 0, 1702, 1703, 1, 0, 0, 0, 1703, 1704, 5, 6, 0, 0, 1704, 1705, 3, 68,
- 34, 0, 1705, 1707, 1, 0, 0, 0, 1706, 1698, 1, 0, 0, 0, 1707, 1710, 1, 0,
- 0, 0, 1708, 1706, 1, 0, 0, 0, 1708, 1709, 1, 0, 0, 0, 1709, 1713, 1, 0,
- 0, 0, 1710, 1708, 1, 0, 0, 0, 1711, 1712, 5, 151, 0, 0, 1712, 1714, 3,
- 68, 34, 0, 1713, 1711, 1, 0, 0, 0, 1713, 1714, 1, 0, 0, 0, 1714, 1719,
- 1, 0, 0, 0, 1715, 1717, 3, 134, 67, 0, 1716, 1715, 1, 0, 0, 0, 1716, 1717,
- 1, 0, 0, 0, 1717, 1718, 1, 0, 0, 0, 1718, 1720, 3, 136, 68, 0, 1719, 1716,
- 1, 0, 0, 0, 1719, 1720, 1, 0, 0, 0, 1720, 111, 1, 0, 0, 0, 1721, 1722,
- 3, 182, 91, 0, 1722, 1723, 5, 2, 0, 0, 1723, 1725, 1, 0, 0, 0, 1724, 1721,
- 1, 0, 0, 0, 1724, 1725, 1, 0, 0, 0, 1725, 1726, 1, 0, 0, 0, 1726, 1729,
- 3, 184, 92, 0, 1727, 1728, 5, 35, 0, 0, 1728, 1730, 3, 216, 108, 0, 1729,
- 1727, 1, 0, 0, 0, 1729, 1730, 1, 0, 0, 0, 1730, 1736, 1, 0, 0, 0, 1731,
- 1732, 5, 87, 0, 0, 1732, 1733, 5, 42, 0, 0, 1733, 1737, 3, 196, 98, 0,
- 1734, 1735, 5, 104, 0, 0, 1735, 1737, 5, 87, 0, 0, 1736, 1731, 1, 0, 0,
- 0, 1736, 1734, 1, 0, 0, 0, 1736, 1737, 1, 0, 0, 0, 1737, 113, 1, 0, 0,
- 0, 1738, 1740, 5, 146, 0, 0, 1739, 1741, 3, 182, 91, 0, 1740, 1739, 1,
- 0, 0, 0, 1740, 1741, 1, 0, 0, 0, 1741, 1744, 1, 0, 0, 0, 1742, 1743, 5,
- 93, 0, 0, 1743, 1745, 3, 218, 109, 0, 1744, 1742, 1, 0, 0, 0, 1744, 1745,
- 1, 0, 0, 0, 1745, 115, 1, 0, 0, 0, 1746, 1747, 5, 181, 0, 0, 1747, 1748,
- 5, 3, 0, 0, 1748, 1749, 5, 151, 0, 0, 1749, 1750, 3, 68, 34, 0, 1750, 1751,
- 5, 4, 0, 0, 1751, 117, 1, 0, 0, 0, 1752, 1754, 5, 3, 0, 0, 1753, 1755,
- 3, 220, 110, 0, 1754, 1753, 1, 0, 0, 0, 1754, 1755, 1, 0, 0, 0, 1755, 1766,
- 1, 0, 0, 0, 1756, 1757, 5, 156, 0, 0, 1757, 1758, 5, 42, 0, 0, 1758, 1763,
- 3, 68, 34, 0, 1759, 1760, 5, 5, 0, 0, 1760, 1762, 3, 68, 34, 0, 1761, 1759,
- 1, 0, 0, 0, 1762, 1765, 1, 0, 0, 0, 1763, 1761, 1, 0, 0, 0, 1763, 1764,
- 1, 0, 0, 0, 1764, 1767, 1, 0, 0, 0, 1765, 1763, 1, 0, 0, 0, 1766, 1756,
- 1, 0, 0, 0, 1766, 1767, 1, 0, 0, 0, 1767, 1768, 1, 0, 0, 0, 1768, 1769,
- 5, 111, 0, 0, 1769, 1770, 5, 42, 0, 0, 1770, 1775, 3, 138, 69, 0, 1771,
- 1772, 5, 5, 0, 0, 1772, 1774, 3, 138, 69, 0, 1773, 1771, 1, 0, 0, 0, 1774,
- 1777, 1, 0, 0, 0, 1775, 1773, 1, 0, 0, 0, 1775, 1776, 1, 0, 0, 0, 1776,
- 1779, 1, 0, 0, 0, 1777, 1775, 1, 0, 0, 0, 1778, 1780, 3, 122, 61, 0, 1779,
- 1778, 1, 0, 0, 0, 1779, 1780, 1, 0, 0, 0, 1780, 1781, 1, 0, 0, 0, 1781,
- 1782, 5, 4, 0, 0, 1782, 119, 1, 0, 0, 0, 1783, 1817, 5, 155, 0, 0, 1784,
- 1818, 3, 214, 107, 0, 1785, 1787, 5, 3, 0, 0, 1786, 1788, 3, 220, 110,
- 0, 1787, 1786, 1, 0, 0, 0, 1787, 1788, 1, 0, 0, 0, 1788, 1799, 1, 0, 0,
- 0, 1789, 1790, 5, 156, 0, 0, 1790, 1791, 5, 42, 0, 0, 1791, 1796, 3, 68,
- 34, 0, 1792, 1793, 5, 5, 0, 0, 1793, 1795, 3, 68, 34, 0, 1794, 1792, 1,
- 0, 0, 0, 1795, 1798, 1, 0, 0, 0, 1796, 1794, 1, 0, 0, 0, 1796, 1797, 1,
- 0, 0, 0, 1797, 1800, 1, 0, 0, 0, 1798, 1796, 1, 0, 0, 0, 1799, 1789, 1,
- 0, 0, 0, 1799, 1800, 1, 0, 0, 0, 1800, 1811, 1, 0, 0, 0, 1801, 1802, 5,
- 111, 0, 0, 1802, 1803, 5, 42, 0, 0, 1803, 1808, 3, 138, 69, 0, 1804, 1805,
- 5, 5, 0, 0, 1805, 1807, 3, 138, 69, 0, 1806, 1804, 1, 0, 0, 0, 1807, 1810,
- 1, 0, 0, 0, 1808, 1806, 1, 0, 0, 0, 1808, 1809, 1, 0, 0, 0, 1809, 1812,
- 1, 0, 0, 0, 1810, 1808, 1, 0, 0, 0, 1811, 1801, 1, 0, 0, 0, 1811, 1812,
- 1, 0, 0, 0, 1812, 1814, 1, 0, 0, 0, 1813, 1815, 3, 122, 61, 0, 1814, 1813,
- 1, 0, 0, 0, 1814, 1815, 1, 0, 0, 0, 1815, 1816, 1, 0, 0, 0, 1816, 1818,
- 5, 4, 0, 0, 1817, 1784, 1, 0, 0, 0, 1817, 1785, 1, 0, 0, 0, 1818, 121,
- 1, 0, 0, 0, 1819, 1827, 3, 124, 62, 0, 1820, 1821, 5, 183, 0, 0, 1821,
- 1822, 5, 103, 0, 0, 1822, 1828, 5, 185, 0, 0, 1823, 1824, 5, 160, 0, 0,
- 1824, 1828, 5, 129, 0, 0, 1825, 1828, 5, 80, 0, 0, 1826, 1828, 5, 184,
- 0, 0, 1827, 1820, 1, 0, 0, 0, 1827, 1823, 1, 0, 0, 0, 1827, 1825, 1, 0,
- 0, 0, 1827, 1826, 1, 0, 0, 0, 1827, 1828, 1, 0, 0, 0, 1828, 123, 1, 0,
- 0, 0, 1829, 1836, 7, 19, 0, 0, 1830, 1837, 3, 146, 73, 0, 1831, 1832, 5,
- 41, 0, 0, 1832, 1833, 3, 142, 71, 0, 1833, 1834, 5, 34, 0, 0, 1834, 1835,
- 3, 144, 72, 0, 1835, 1837, 1, 0, 0, 0, 1836, 1830, 1, 0, 0, 0, 1836, 1831,
- 1, 0, 0, 0, 1837, 125, 1, 0, 0, 0, 1838, 1839, 3, 222, 111, 0, 1839, 1849,
- 5, 3, 0, 0, 1840, 1845, 3, 68, 34, 0, 1841, 1842, 5, 5, 0, 0, 1842, 1844,
- 3, 68, 34, 0, 1843, 1841, 1, 0, 0, 0, 1844, 1847, 1, 0, 0, 0, 1845, 1843,
- 1, 0, 0, 0, 1845, 1846, 1, 0, 0, 0, 1846, 1850, 1, 0, 0, 0, 1847, 1845,
- 1, 0, 0, 0, 1848, 1850, 5, 7, 0, 0, 1849, 1840, 1, 0, 0, 0, 1849, 1848,
- 1, 0, 0, 0, 1850, 1851, 1, 0, 0, 0, 1851, 1852, 5, 4, 0, 0, 1852, 127,
- 1, 0, 0, 0, 1853, 1854, 3, 224, 112, 0, 1854, 1867, 5, 3, 0, 0, 1855, 1857,
- 5, 64, 0, 0, 1856, 1855, 1, 0, 0, 0, 1856, 1857, 1, 0, 0, 0, 1857, 1858,
- 1, 0, 0, 0, 1858, 1863, 3, 68, 34, 0, 1859, 1860, 5, 5, 0, 0, 1860, 1862,
- 3, 68, 34, 0, 1861, 1859, 1, 0, 0, 0, 1862, 1865, 1, 0, 0, 0, 1863, 1861,
- 1, 0, 0, 0, 1863, 1864, 1, 0, 0, 0, 1864, 1868, 1, 0, 0, 0, 1865, 1863,
- 1, 0, 0, 0, 1866, 1868, 5, 7, 0, 0, 1867, 1856, 1, 0, 0, 0, 1867, 1866,
- 1, 0, 0, 0, 1867, 1868, 1, 0, 0, 0, 1868, 1869, 1, 0, 0, 0, 1869, 1871,
- 5, 4, 0, 0, 1870, 1872, 3, 116, 58, 0, 1871, 1870, 1, 0, 0, 0, 1871, 1872,
- 1, 0, 0, 0, 1872, 129, 1, 0, 0, 0, 1873, 1874, 3, 148, 74, 0, 1874, 1884,
- 5, 3, 0, 0, 1875, 1880, 3, 68, 34, 0, 1876, 1877, 5, 5, 0, 0, 1877, 1879,
- 3, 68, 34, 0, 1878, 1876, 1, 0, 0, 0, 1879, 1882, 1, 0, 0, 0, 1880, 1878,
- 1, 0, 0, 0, 1880, 1881, 1, 0, 0, 0, 1881, 1885, 1, 0, 0, 0, 1882, 1880,
- 1, 0, 0, 0, 1883, 1885, 5, 7, 0, 0, 1884, 1875, 1, 0, 0, 0, 1884, 1883,
- 1, 0, 0, 0, 1884, 1885, 1, 0, 0, 0, 1885, 1886, 1, 0, 0, 0, 1886, 1888,
- 5, 4, 0, 0, 1887, 1889, 3, 116, 58, 0, 1888, 1887, 1, 0, 0, 0, 1888, 1889,
- 1, 0, 0, 0, 1889, 1890, 1, 0, 0, 0, 1890, 1893, 5, 155, 0, 0, 1891, 1894,
- 3, 118, 59, 0, 1892, 1894, 3, 214, 107, 0, 1893, 1891, 1, 0, 0, 0, 1893,
- 1892, 1, 0, 0, 0, 1894, 131, 1, 0, 0, 0, 1895, 1897, 5, 152, 0, 0, 1896,
- 1898, 5, 118, 0, 0, 1897, 1896, 1, 0, 0, 0, 1897, 1898, 1, 0, 0, 0, 1898,
- 1899, 1, 0, 0, 0, 1899, 1904, 3, 56, 28, 0, 1900, 1901, 5, 5, 0, 0, 1901,
- 1903, 3, 56, 28, 0, 1902, 1900, 1, 0, 0, 0, 1903, 1906, 1, 0, 0, 0, 1904,
- 1902, 1, 0, 0, 0, 1904, 1905, 1, 0, 0, 0, 1905, 133, 1, 0, 0, 0, 1906,
- 1904, 1, 0, 0, 0, 1907, 1908, 5, 111, 0, 0, 1908, 1909, 5, 42, 0, 0, 1909,
- 1914, 3, 138, 69, 0, 1910, 1911, 5, 5, 0, 0, 1911, 1913, 3, 138, 69, 0,
- 1912, 1910, 1, 0, 0, 0, 1913, 1916, 1, 0, 0, 0, 1914, 1912, 1, 0, 0, 0,
- 1914, 1915, 1, 0, 0, 0, 1915, 135, 1, 0, 0, 0, 1916, 1914, 1, 0, 0, 0,
- 1917, 1918, 5, 100, 0, 0, 1918, 1921, 3, 68, 34, 0, 1919, 1920, 7, 20,
- 0, 0, 1920, 1922, 3, 68, 34, 0, 1921, 1919, 1, 0, 0, 0, 1921, 1922, 1,
- 0, 0, 0, 1922, 137, 1, 0, 0, 0, 1923, 1926, 3, 68, 34, 0, 1924, 1925, 5,
- 47, 0, 0, 1925, 1927, 3, 192, 96, 0, 1926, 1924, 1, 0, 0, 0, 1926, 1927,
- 1, 0, 0, 0, 1927, 1929, 1, 0, 0, 0, 1928, 1930, 3, 140, 70, 0, 1929, 1928,
- 1, 0, 0, 0, 1929, 1930, 1, 0, 0, 0, 1930, 1933, 1, 0, 0, 0, 1931, 1932,
- 5, 178, 0, 0, 1932, 1934, 7, 21, 0, 0, 1933, 1931, 1, 0, 0, 0, 1933, 1934,
- 1, 0, 0, 0, 1934, 139, 1, 0, 0, 0, 1935, 1936, 7, 22, 0, 0, 1936, 141,
- 1, 0, 0, 0, 1937, 1938, 3, 68, 34, 0, 1938, 1939, 5, 158, 0, 0, 1939, 1948,
- 1, 0, 0, 0, 1940, 1941, 3, 68, 34, 0, 1941, 1942, 5, 161, 0, 0, 1942, 1948,
- 1, 0, 0, 0, 1943, 1944, 5, 160, 0, 0, 1944, 1948, 5, 129, 0, 0, 1945, 1946,
- 5, 159, 0, 0, 1946, 1948, 5, 158, 0, 0, 1947, 1937, 1, 0, 0, 0, 1947, 1940,
- 1, 0, 0, 0, 1947, 1943, 1, 0, 0, 0, 1947, 1945, 1, 0, 0, 0, 1948, 143,
- 1, 0, 0, 0, 1949, 1950, 3, 68, 34, 0, 1950, 1951, 5, 158, 0, 0, 1951, 1960,
- 1, 0, 0, 0, 1952, 1953, 3, 68, 34, 0, 1953, 1954, 5, 161, 0, 0, 1954, 1960,
- 1, 0, 0, 0, 1955, 1956, 5, 160, 0, 0, 1956, 1960, 5, 129, 0, 0, 1957, 1958,
- 5, 159, 0, 0, 1958, 1960, 5, 161, 0, 0, 1959, 1949, 1, 0, 0, 0, 1959, 1952,
- 1, 0, 0, 0, 1959, 1955, 1, 0, 0, 0, 1959, 1957, 1, 0, 0, 0, 1960, 145,
- 1, 0, 0, 0, 1961, 1962, 3, 68, 34, 0, 1962, 1963, 5, 158, 0, 0, 1963, 1969,
- 1, 0, 0, 0, 1964, 1965, 5, 159, 0, 0, 1965, 1969, 5, 158, 0, 0, 1966, 1967,
- 5, 160, 0, 0, 1967, 1969, 5, 129, 0, 0, 1968, 1961, 1, 0, 0, 0, 1968, 1964,
- 1, 0, 0, 0, 1968, 1966, 1, 0, 0, 0, 1969, 147, 1, 0, 0, 0, 1970, 1971,
- 7, 23, 0, 0, 1971, 1972, 5, 3, 0, 0, 1972, 1973, 3, 68, 34, 0, 1973, 1974,
- 5, 4, 0, 0, 1974, 1975, 5, 155, 0, 0, 1975, 1977, 5, 3, 0, 0, 1976, 1978,
- 3, 154, 77, 0, 1977, 1976, 1, 0, 0, 0, 1977, 1978, 1, 0, 0, 0, 1978, 1979,
- 1, 0, 0, 0, 1979, 1981, 3, 158, 79, 0, 1980, 1982, 3, 124, 62, 0, 1981,
- 1980, 1, 0, 0, 0, 1981, 1982, 1, 0, 0, 0, 1982, 1983, 1, 0, 0, 0, 1983,
- 1984, 5, 4, 0, 0, 1984, 2056, 1, 0, 0, 0, 1985, 1986, 7, 24, 0, 0, 1986,
- 1987, 5, 3, 0, 0, 1987, 1988, 5, 4, 0, 0, 1988, 1989, 5, 155, 0, 0, 1989,
- 1991, 5, 3, 0, 0, 1990, 1992, 3, 154, 77, 0, 1991, 1990, 1, 0, 0, 0, 1991,
- 1992, 1, 0, 0, 0, 1992, 1994, 1, 0, 0, 0, 1993, 1995, 3, 156, 78, 0, 1994,
- 1993, 1, 0, 0, 0, 1994, 1995, 1, 0, 0, 0, 1995, 1996, 1, 0, 0, 0, 1996,
- 2056, 5, 4, 0, 0, 1997, 1998, 7, 25, 0, 0, 1998, 1999, 5, 3, 0, 0, 1999,
- 2000, 5, 4, 0, 0, 2000, 2001, 5, 155, 0, 0, 2001, 2003, 5, 3, 0, 0, 2002,
- 2004, 3, 154, 77, 0, 2003, 2002, 1, 0, 0, 0, 2003, 2004, 1, 0, 0, 0, 2004,
- 2005, 1, 0, 0, 0, 2005, 2006, 3, 158, 79, 0, 2006, 2007, 5, 4, 0, 0, 2007,
- 2056, 1, 0, 0, 0, 2008, 2009, 7, 26, 0, 0, 2009, 2010, 5, 3, 0, 0, 2010,
- 2012, 3, 68, 34, 0, 2011, 2013, 3, 150, 75, 0, 2012, 2011, 1, 0, 0, 0,
- 2012, 2013, 1, 0, 0, 0, 2013, 2015, 1, 0, 0, 0, 2014, 2016, 3, 152, 76,
- 0, 2015, 2014, 1, 0, 0, 0, 2015, 2016, 1, 0, 0, 0, 2016, 2017, 1, 0, 0,
- 0, 2017, 2018, 5, 4, 0, 0, 2018, 2019, 5, 155, 0, 0, 2019, 2021, 5, 3,
- 0, 0, 2020, 2022, 3, 154, 77, 0, 2021, 2020, 1, 0, 0, 0, 2021, 2022, 1,
- 0, 0, 0, 2022, 2023, 1, 0, 0, 0, 2023, 2024, 3, 158, 79, 0, 2024, 2025,
- 5, 4, 0, 0, 2025, 2056, 1, 0, 0, 0, 2026, 2027, 5, 167, 0, 0, 2027, 2028,
- 5, 3, 0, 0, 2028, 2029, 3, 68, 34, 0, 2029, 2030, 5, 5, 0, 0, 2030, 2031,
- 3, 36, 18, 0, 2031, 2032, 5, 4, 0, 0, 2032, 2033, 5, 155, 0, 0, 2033, 2035,
- 5, 3, 0, 0, 2034, 2036, 3, 154, 77, 0, 2035, 2034, 1, 0, 0, 0, 2035, 2036,
- 1, 0, 0, 0, 2036, 2037, 1, 0, 0, 0, 2037, 2039, 3, 158, 79, 0, 2038, 2040,
- 3, 124, 62, 0, 2039, 2038, 1, 0, 0, 0, 2039, 2040, 1, 0, 0, 0, 2040, 2041,
- 1, 0, 0, 0, 2041, 2042, 5, 4, 0, 0, 2042, 2056, 1, 0, 0, 0, 2043, 2044,
- 5, 168, 0, 0, 2044, 2045, 5, 3, 0, 0, 2045, 2046, 3, 68, 34, 0, 2046, 2047,
- 5, 4, 0, 0, 2047, 2048, 5, 155, 0, 0, 2048, 2050, 5, 3, 0, 0, 2049, 2051,
- 3, 154, 77, 0, 2050, 2049, 1, 0, 0, 0, 2050, 2051, 1, 0, 0, 0, 2051, 2052,
- 1, 0, 0, 0, 2052, 2053, 3, 158, 79, 0, 2053, 2054, 5, 4, 0, 0, 2054, 2056,
- 1, 0, 0, 0, 2055, 1970, 1, 0, 0, 0, 2055, 1985, 1, 0, 0, 0, 2055, 1997,
- 1, 0, 0, 0, 2055, 2008, 1, 0, 0, 0, 2055, 2026, 1, 0, 0, 0, 2055, 2043,
- 1, 0, 0, 0, 2056, 149, 1, 0, 0, 0, 2057, 2058, 5, 5, 0, 0, 2058, 2059,
- 3, 36, 18, 0, 2059, 151, 1, 0, 0, 0, 2060, 2061, 5, 5, 0, 0, 2061, 2062,
- 3, 36, 18, 0, 2062, 153, 1, 0, 0, 0, 2063, 2064, 5, 156, 0, 0, 2064, 2066,
- 5, 42, 0, 0, 2065, 2067, 3, 68, 34, 0, 2066, 2065, 1, 0, 0, 0, 2067, 2068,
- 1, 0, 0, 0, 2068, 2066, 1, 0, 0, 0, 2068, 2069, 1, 0, 0, 0, 2069, 155,
- 1, 0, 0, 0, 2070, 2071, 5, 111, 0, 0, 2071, 2073, 5, 42, 0, 0, 2072, 2074,
- 3, 68, 34, 0, 2073, 2072, 1, 0, 0, 0, 2074, 2075, 1, 0, 0, 0, 2075, 2073,
- 1, 0, 0, 0, 2075, 2076, 1, 0, 0, 0, 2076, 157, 1, 0, 0, 0, 2077, 2078,
- 5, 111, 0, 0, 2078, 2079, 5, 42, 0, 0, 2079, 2080, 3, 158, 79, 0, 2080,
- 159, 1, 0, 0, 0, 2081, 2083, 3, 68, 34, 0, 2082, 2084, 3, 140, 70, 0, 2083,
- 2082, 1, 0, 0, 0, 2083, 2084, 1, 0, 0, 0, 2084, 2092, 1, 0, 0, 0, 2085,
- 2086, 5, 5, 0, 0, 2086, 2088, 3, 68, 34, 0, 2087, 2089, 3, 140, 70, 0,
- 2088, 2087, 1, 0, 0, 0, 2088, 2089, 1, 0, 0, 0, 2089, 2091, 1, 0, 0, 0,
- 2090, 2085, 1, 0, 0, 0, 2091, 2094, 1, 0, 0, 0, 2092, 2090, 1, 0, 0, 0,
- 2092, 2093, 1, 0, 0, 0, 2093, 161, 1, 0, 0, 0, 2094, 2092, 1, 0, 0, 0,
- 2095, 2096, 3, 84, 42, 0, 2096, 163, 1, 0, 0, 0, 2097, 2098, 3, 84, 42,
- 0, 2098, 165, 1, 0, 0, 0, 2099, 2100, 7, 27, 0, 0, 2100, 167, 1, 0, 0,
- 0, 2101, 2102, 5, 192, 0, 0, 2102, 169, 1, 0, 0, 0, 2103, 2106, 3, 68,
- 34, 0, 2104, 2106, 3, 30, 15, 0, 2105, 2103, 1, 0, 0, 0, 2105, 2104, 1,
- 0, 0, 0, 2106, 171, 1, 0, 0, 0, 2107, 2108, 7, 28, 0, 0, 2108, 173, 1,
- 0, 0, 0, 2109, 2110, 7, 29, 0, 0, 2110, 175, 1, 0, 0, 0, 2111, 2112, 3,
- 228, 114, 0, 2112, 177, 1, 0, 0, 0, 2113, 2114, 3, 228, 114, 0, 2114, 179,
- 1, 0, 0, 0, 2115, 2116, 3, 182, 91, 0, 2116, 2117, 5, 2, 0, 0, 2117, 2119,
- 1, 0, 0, 0, 2118, 2115, 1, 0, 0, 0, 2118, 2119, 1, 0, 0, 0, 2119, 2120,
- 1, 0, 0, 0, 2120, 2121, 3, 178, 89, 0, 2121, 181, 1, 0, 0, 0, 2122, 2123,
- 3, 228, 114, 0, 2123, 183, 1, 0, 0, 0, 2124, 2125, 3, 228, 114, 0, 2125,
- 185, 1, 0, 0, 0, 2126, 2127, 3, 228, 114, 0, 2127, 187, 1, 0, 0, 0, 2128,
- 2129, 3, 228, 114, 0, 2129, 189, 1, 0, 0, 0, 2130, 2131, 3, 228, 114, 0,
- 2131, 191, 1, 0, 0, 0, 2132, 2133, 3, 228, 114, 0, 2133, 193, 1, 0, 0,
- 0, 2134, 2135, 3, 228, 114, 0, 2135, 195, 1, 0, 0, 0, 2136, 2137, 3, 228,
- 114, 0, 2137, 197, 1, 0, 0, 0, 2138, 2139, 3, 228, 114, 0, 2139, 199, 1,
- 0, 0, 0, 2140, 2141, 3, 228, 114, 0, 2141, 201, 1, 0, 0, 0, 2142, 2143,
- 3, 228, 114, 0, 2143, 203, 1, 0, 0, 0, 2144, 2145, 3, 228, 114, 0, 2145,
- 205, 1, 0, 0, 0, 2146, 2147, 3, 228, 114, 0, 2147, 207, 1, 0, 0, 0, 2148,
- 2149, 7, 28, 0, 0, 2149, 209, 1, 0, 0, 0, 2150, 2151, 3, 228, 114, 0, 2151,
- 211, 1, 0, 0, 0, 2152, 2153, 3, 228, 114, 0, 2153, 213, 1, 0, 0, 0, 2154,
- 2155, 3, 228, 114, 0, 2155, 215, 1, 0, 0, 0, 2156, 2157, 3, 228, 114, 0,
- 2157, 217, 1, 0, 0, 0, 2158, 2159, 3, 228, 114, 0, 2159, 219, 1, 0, 0,
- 0, 2160, 2161, 3, 228, 114, 0, 2161, 221, 1, 0, 0, 0, 2162, 2163, 3, 228,
- 114, 0, 2163, 223, 1, 0, 0, 0, 2164, 2165, 3, 228, 114, 0, 2165, 225, 1,
- 0, 0, 0, 2166, 2167, 3, 228, 114, 0, 2167, 227, 1, 0, 0, 0, 2168, 2176,
- 5, 188, 0, 0, 2169, 2176, 3, 174, 87, 0, 2170, 2176, 5, 192, 0, 0, 2171,
- 2172, 5, 3, 0, 0, 2172, 2173, 3, 228, 114, 0, 2173, 2174, 5, 4, 0, 0, 2174,
- 2176, 1, 0, 0, 0, 2175, 2168, 1, 0, 0, 0, 2175, 2169, 1, 0, 0, 0, 2175,
- 2170, 1, 0, 0, 0, 2175, 2171, 1, 0, 0, 0, 2176, 229, 1, 0, 0, 0, 314, 233,
+ 37, 1, 37, 1, 37, 1, 37, 3, 37, 1207, 8, 37, 1, 37, 3, 37, 1210, 8, 37,
+ 1, 37, 3, 37, 1213, 8, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 5,
+ 38, 1221, 8, 38, 10, 38, 12, 38, 1224, 9, 38, 1, 38, 1, 38, 1, 38, 3, 38,
+ 1229, 8, 38, 3, 38, 1231, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1,
+ 38, 3, 38, 1239, 8, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 1246,
+ 8, 38, 1, 38, 1, 38, 1, 38, 5, 38, 1251, 8, 38, 10, 38, 12, 38, 1254, 9,
+ 38, 1, 38, 1, 38, 3, 38, 1258, 8, 38, 3, 38, 1260, 8, 38, 1, 39, 1, 39,
+ 1, 39, 1, 39, 3, 39, 1266, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1,
+ 39, 1, 39, 3, 39, 1275, 8, 39, 1, 40, 1, 40, 1, 40, 3, 40, 1280, 8, 40,
+ 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 3, 41, 1287, 8, 41, 1, 41, 1, 41, 3,
+ 41, 1291, 8, 41, 3, 41, 1293, 8, 41, 1, 42, 3, 42, 1296, 8, 42, 1, 42,
+ 1, 42, 1, 42, 1, 42, 5, 42, 1302, 8, 42, 10, 42, 12, 42, 1305, 9, 42, 1,
+ 42, 3, 42, 1308, 8, 42, 1, 42, 3, 42, 1311, 8, 42, 1, 43, 1, 43, 1, 43,
+ 1, 43, 1, 43, 5, 43, 1318, 8, 43, 10, 43, 12, 43, 1321, 9, 43, 1, 44, 1,
+ 44, 3, 44, 1325, 8, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1330, 8, 44, 10, 44,
+ 12, 44, 1333, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1339, 8, 44, 10,
+ 44, 12, 44, 1342, 9, 44, 1, 44, 3, 44, 1345, 8, 44, 3, 44, 1347, 8, 44,
+ 1, 44, 1, 44, 3, 44, 1351, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5,
+ 44, 1358, 8, 44, 10, 44, 12, 44, 1361, 9, 44, 1, 44, 1, 44, 3, 44, 1365,
+ 8, 44, 3, 44, 1367, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1,
+ 44, 1, 44, 1, 44, 5, 44, 1378, 8, 44, 10, 44, 12, 44, 1381, 9, 44, 3, 44,
+ 1383, 8, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 1390, 8, 44, 10,
+ 44, 12, 44, 1393, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44,
+ 1401, 8, 44, 10, 44, 12, 44, 1404, 9, 44, 1, 44, 1, 44, 5, 44, 1408, 8,
+ 44, 10, 44, 12, 44, 1411, 9, 44, 3, 44, 1413, 8, 44, 1, 45, 1, 45, 1, 46,
+ 3, 46, 1418, 8, 46, 1, 46, 1, 46, 3, 46, 1422, 8, 46, 1, 46, 3, 46, 1425,
+ 8, 46, 1, 47, 3, 47, 1428, 8, 47, 1, 47, 1, 47, 1, 47, 3, 47, 1433, 8,
+ 47, 1, 47, 1, 47, 3, 47, 1437, 8, 47, 1, 47, 4, 47, 1440, 8, 47, 11, 47,
+ 12, 47, 1441, 1, 47, 3, 47, 1445, 8, 47, 1, 47, 3, 47, 1448, 8, 47, 1,
+ 48, 1, 48, 1, 48, 3, 48, 1453, 8, 48, 1, 48, 1, 48, 3, 48, 1457, 8, 48,
+ 1, 48, 3, 48, 1460, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1467,
+ 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1472, 8, 48, 1, 48, 1, 48, 1, 48, 1,
+ 48, 1, 48, 5, 48, 1479, 8, 48, 10, 48, 12, 48, 1482, 9, 48, 1, 48, 1, 48,
+ 3, 48, 1486, 8, 48, 1, 48, 3, 48, 1489, 8, 48, 1, 48, 1, 48, 1, 48, 1,
+ 48, 5, 48, 1495, 8, 48, 10, 48, 12, 48, 1498, 9, 48, 1, 48, 3, 48, 1501,
+ 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1509, 8, 48, 1,
+ 48, 3, 48, 1512, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1517, 8, 48, 1, 48,
+ 1, 48, 3, 48, 1521, 8, 48, 1, 48, 3, 48, 1524, 8, 48, 1, 48, 1, 48, 1,
+ 48, 1, 48, 1, 48, 3, 48, 1531, 8, 48, 1, 48, 1, 48, 1, 48, 3, 48, 1536,
+ 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1543, 8, 48, 10, 48, 12,
+ 48, 1546, 9, 48, 1, 48, 1, 48, 3, 48, 1550, 8, 48, 1, 48, 3, 48, 1553,
+ 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 5, 48, 1559, 8, 48, 10, 48, 12, 48,
+ 1562, 9, 48, 1, 48, 3, 48, 1565, 8, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
+ 48, 1, 48, 3, 48, 1573, 8, 48, 1, 48, 3, 48, 1576, 8, 48, 3, 48, 1578,
+ 8, 48, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 1, 49, 3, 49, 1587, 8,
+ 49, 1, 49, 3, 49, 1590, 8, 49, 3, 49, 1592, 8, 49, 1, 50, 1, 50, 3, 50,
+ 1596, 8, 50, 1, 50, 1, 50, 3, 50, 1600, 8, 50, 1, 50, 3, 50, 1603, 8, 50,
+ 1, 50, 1, 50, 1, 50, 3, 50, 1608, 8, 50, 1, 51, 1, 51, 1, 51, 1, 51, 1,
+ 51, 1, 51, 1, 51, 5, 51, 1617, 8, 51, 10, 51, 12, 51, 1620, 9, 51, 1, 51,
+ 1, 51, 3, 51, 1624, 8, 51, 1, 52, 1, 52, 3, 52, 1628, 8, 52, 1, 52, 1,
+ 52, 3, 52, 1632, 8, 52, 1, 53, 3, 53, 1635, 8, 53, 1, 53, 1, 53, 1, 53,
+ 3, 53, 1640, 8, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1646, 8, 53, 1,
+ 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 1653, 8, 53, 1, 53, 1, 53, 1, 53,
+ 5, 53, 1658, 8, 53, 10, 53, 12, 53, 1661, 9, 53, 1, 53, 1, 53, 3, 53, 1665,
+ 8, 53, 1, 53, 3, 53, 1668, 8, 53, 1, 54, 1, 54, 1, 54, 1, 54, 5, 54, 1674,
+ 8, 54, 10, 54, 12, 54, 1677, 9, 54, 1, 54, 1, 54, 1, 55, 3, 55, 1682, 8,
+ 55, 1, 55, 1, 55, 1, 55, 3, 55, 1687, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55,
+ 3, 55, 1693, 8, 55, 1, 55, 1, 55, 1, 55, 1, 55, 1, 55, 3, 55, 1700, 8,
+ 55, 1, 55, 1, 55, 1, 55, 5, 55, 1705, 8, 55, 10, 55, 12, 55, 1708, 9, 55,
+ 1, 55, 1, 55, 3, 55, 1712, 8, 55, 1, 55, 3, 55, 1715, 8, 55, 1, 55, 3,
+ 55, 1718, 8, 55, 1, 56, 1, 56, 1, 56, 3, 56, 1723, 8, 56, 1, 56, 1, 56,
+ 1, 56, 3, 56, 1728, 8, 56, 1, 56, 1, 56, 1, 56, 1, 56, 1, 56, 3, 56, 1735,
+ 8, 56, 1, 57, 1, 57, 3, 57, 1739, 8, 57, 1, 57, 1, 57, 3, 57, 1743, 8,
+ 57, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 58, 1, 59, 1, 59, 3, 59, 1753,
+ 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 1760, 8, 59, 10, 59, 12,
+ 59, 1763, 9, 59, 3, 59, 1765, 8, 59, 1, 59, 1, 59, 1, 59, 1, 59, 1, 59,
+ 5, 59, 1772, 8, 59, 10, 59, 12, 59, 1775, 9, 59, 1, 59, 3, 59, 1778, 8,
+ 59, 1, 59, 1, 59, 1, 60, 1, 60, 1, 60, 1, 60, 3, 60, 1786, 8, 60, 1, 60,
+ 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1793, 8, 60, 10, 60, 12, 60, 1796, 9,
+ 60, 3, 60, 1798, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 1, 60, 5, 60, 1805,
+ 8, 60, 10, 60, 12, 60, 1808, 9, 60, 3, 60, 1810, 8, 60, 1, 60, 3, 60, 1813,
+ 8, 60, 1, 60, 3, 60, 1816, 8, 60, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1,
+ 61, 1, 61, 1, 61, 3, 61, 1826, 8, 61, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62,
+ 1, 62, 1, 62, 3, 62, 1835, 8, 62, 1, 63, 1, 63, 1, 63, 1, 63, 1, 63, 5,
+ 63, 1842, 8, 63, 10, 63, 12, 63, 1845, 9, 63, 1, 63, 3, 63, 1848, 8, 63,
+ 1, 63, 1, 63, 1, 64, 1, 64, 1, 64, 3, 64, 1855, 8, 64, 1, 64, 1, 64, 1,
+ 64, 5, 64, 1860, 8, 64, 10, 64, 12, 64, 1863, 9, 64, 1, 64, 3, 64, 1866,
+ 8, 64, 1, 64, 1, 64, 3, 64, 1870, 8, 64, 1, 65, 1, 65, 1, 65, 1, 65, 1,
+ 65, 5, 65, 1877, 8, 65, 10, 65, 12, 65, 1880, 9, 65, 1, 65, 3, 65, 1883,
+ 8, 65, 1, 65, 1, 65, 3, 65, 1887, 8, 65, 1, 65, 1, 65, 1, 65, 3, 65, 1892,
+ 8, 65, 1, 66, 1, 66, 3, 66, 1896, 8, 66, 1, 66, 1, 66, 1, 66, 5, 66, 1901,
+ 8, 66, 10, 66, 12, 66, 1904, 9, 66, 1, 67, 1, 67, 1, 67, 1, 67, 1, 67,
+ 5, 67, 1911, 8, 67, 10, 67, 12, 67, 1914, 9, 67, 1, 68, 1, 68, 1, 68, 1,
+ 68, 3, 68, 1920, 8, 68, 1, 69, 1, 69, 1, 69, 3, 69, 1925, 8, 69, 1, 69,
+ 3, 69, 1928, 8, 69, 1, 69, 1, 69, 3, 69, 1932, 8, 69, 1, 70, 1, 70, 1,
+ 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 3, 71,
+ 1946, 8, 71, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1, 72, 1,
+ 72, 1, 72, 3, 72, 1958, 8, 72, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73,
+ 1, 73, 3, 73, 1967, 8, 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1,
+ 74, 3, 74, 1976, 8, 74, 1, 74, 1, 74, 3, 74, 1980, 8, 74, 1, 74, 1, 74,
+ 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1990, 8, 74, 1, 74, 3,
+ 74, 1993, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74,
+ 2002, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2011,
+ 8, 74, 1, 74, 3, 74, 2014, 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2020,
+ 8, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1,
+ 74, 1, 74, 1, 74, 3, 74, 2034, 8, 74, 1, 74, 1, 74, 3, 74, 2038, 8, 74,
+ 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2049,
+ 8, 74, 1, 74, 1, 74, 1, 74, 3, 74, 2054, 8, 74, 1, 75, 1, 75, 1, 75, 1,
+ 76, 1, 76, 1, 76, 1, 77, 1, 77, 1, 77, 4, 77, 2065, 8, 77, 11, 77, 12,
+ 77, 2066, 1, 78, 1, 78, 1, 78, 4, 78, 2072, 8, 78, 11, 78, 12, 78, 2073,
+ 1, 79, 1, 79, 1, 79, 1, 79, 1, 80, 1, 80, 3, 80, 2082, 8, 80, 1, 80, 1,
+ 80, 1, 80, 3, 80, 2087, 8, 80, 5, 80, 2089, 8, 80, 10, 80, 12, 80, 2092,
+ 9, 80, 1, 81, 1, 81, 1, 82, 1, 82, 1, 83, 1, 83, 1, 84, 1, 84, 1, 85, 1,
+ 85, 3, 85, 2104, 8, 85, 1, 86, 1, 86, 1, 87, 1, 87, 1, 88, 1, 88, 1, 89,
+ 1, 89, 1, 90, 1, 90, 1, 90, 3, 90, 2117, 8, 90, 1, 90, 1, 90, 1, 91, 1,
+ 91, 1, 92, 1, 92, 1, 93, 1, 93, 1, 94, 1, 94, 1, 95, 1, 95, 1, 96, 1, 96,
+ 1, 97, 1, 97, 1, 98, 1, 98, 1, 99, 1, 99, 1, 100, 1, 100, 1, 101, 1, 101,
+ 1, 102, 1, 102, 1, 103, 1, 103, 1, 104, 1, 104, 1, 105, 1, 105, 1, 106,
+ 1, 106, 1, 107, 1, 107, 1, 108, 1, 108, 1, 109, 1, 109, 1, 110, 1, 110,
+ 1, 111, 1, 111, 1, 112, 1, 112, 1, 113, 1, 113, 1, 114, 1, 114, 1, 114,
+ 1, 114, 1, 114, 1, 114, 1, 114, 3, 114, 2174, 8, 114, 1, 114, 2, 449, 487,
+ 1, 68, 115, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30,
+ 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66,
+ 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102,
+ 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132,
+ 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162,
+ 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192,
+ 194, 196, 198, 200, 202, 204, 206, 208, 210, 212, 214, 216, 218, 220, 222,
+ 224, 226, 228, 0, 30, 3, 0, 60, 60, 71, 71, 84, 84, 2, 0, 49, 49, 68, 68,
+ 1, 0, 136, 137, 2, 0, 149, 149, 174, 174, 2, 0, 8, 8, 11, 11, 2, 0, 61,
+ 61, 144, 144, 2, 0, 58, 58, 106, 106, 2, 0, 60, 60, 84, 84, 5, 0, 27, 27,
+ 74, 74, 83, 83, 124, 124, 128, 128, 4, 0, 86, 86, 135, 135, 141, 141, 148,
+ 148, 1, 0, 9, 10, 2, 0, 7, 7, 14, 15, 1, 0, 16, 19, 1, 0, 20, 23, 4, 0,
+ 79, 79, 99, 99, 101, 101, 120, 120, 3, 0, 27, 27, 74, 74, 128, 128, 5,
+ 0, 54, 56, 106, 106, 175, 176, 189, 189, 192, 193, 2, 0, 31, 31, 64, 64,
+ 3, 0, 78, 78, 98, 98, 127, 127, 3, 0, 130, 130, 157, 157, 182, 182, 2,
+ 0, 5, 5, 108, 108, 1, 0, 179, 180, 2, 0, 36, 36, 62, 62, 2, 0, 154, 154,
+ 165, 165, 2, 0, 162, 162, 169, 169, 2, 0, 163, 163, 170, 171, 2, 0, 164,
+ 164, 166, 166, 3, 0, 8, 8, 11, 12, 104, 104, 2, 0, 188, 188, 192, 192,
+ 1, 0, 27, 183, 2482, 0, 233, 1, 0, 0, 0, 2, 241, 1, 0, 0, 0, 4, 267, 1,
+ 0, 0, 0, 6, 295, 1, 0, 0, 0, 8, 327, 1, 0, 0, 0, 10, 337, 1, 0, 0, 0, 12,
+ 345, 1, 0, 0, 0, 14, 355, 1, 0, 0, 0, 16, 359, 1, 0, 0, 0, 18, 370, 1,
+ 0, 0, 0, 20, 373, 1, 0, 0, 0, 22, 379, 1, 0, 0, 0, 24, 413, 1, 0, 0, 0,
+ 26, 425, 1, 0, 0, 0, 28, 427, 1, 0, 0, 0, 30, 474, 1, 0, 0, 0, 32, 485,
+ 1, 0, 0, 0, 34, 503, 1, 0, 0, 0, 36, 555, 1, 0, 0, 0, 38, 561, 1, 0, 0,
+ 0, 40, 602, 1, 0, 0, 0, 42, 644, 1, 0, 0, 0, 44, 648, 1, 0, 0, 0, 46, 712,
+ 1, 0, 0, 0, 48, 744, 1, 0, 0, 0, 50, 773, 1, 0, 0, 0, 52, 794, 1, 0, 0,
+ 0, 54, 808, 1, 0, 0, 0, 56, 819, 1, 0, 0, 0, 58, 838, 1, 0, 0, 0, 60, 866,
+ 1, 0, 0, 0, 62, 879, 1, 0, 0, 0, 64, 897, 1, 0, 0, 0, 66, 903, 1, 0, 0,
+ 0, 68, 1005, 1, 0, 0, 0, 70, 1129, 1, 0, 0, 0, 72, 1139, 1, 0, 0, 0, 74,
+ 1142, 1, 0, 0, 0, 76, 1214, 1, 0, 0, 0, 78, 1261, 1, 0, 0, 0, 80, 1279,
+ 1, 0, 0, 0, 82, 1281, 1, 0, 0, 0, 84, 1295, 1, 0, 0, 0, 86, 1312, 1, 0,
+ 0, 0, 88, 1412, 1, 0, 0, 0, 90, 1414, 1, 0, 0, 0, 92, 1417, 1, 0, 0, 0,
+ 94, 1427, 1, 0, 0, 0, 96, 1577, 1, 0, 0, 0, 98, 1591, 1, 0, 0, 0, 100,
+ 1607, 1, 0, 0, 0, 102, 1623, 1, 0, 0, 0, 104, 1631, 1, 0, 0, 0, 106, 1634,
+ 1, 0, 0, 0, 108, 1669, 1, 0, 0, 0, 110, 1681, 1, 0, 0, 0, 112, 1722, 1,
+ 0, 0, 0, 114, 1736, 1, 0, 0, 0, 116, 1744, 1, 0, 0, 0, 118, 1750, 1, 0,
+ 0, 0, 120, 1781, 1, 0, 0, 0, 122, 1817, 1, 0, 0, 0, 124, 1827, 1, 0, 0,
+ 0, 126, 1836, 1, 0, 0, 0, 128, 1851, 1, 0, 0, 0, 130, 1871, 1, 0, 0, 0,
+ 132, 1893, 1, 0, 0, 0, 134, 1905, 1, 0, 0, 0, 136, 1915, 1, 0, 0, 0, 138,
+ 1921, 1, 0, 0, 0, 140, 1933, 1, 0, 0, 0, 142, 1945, 1, 0, 0, 0, 144, 1957,
+ 1, 0, 0, 0, 146, 1966, 1, 0, 0, 0, 148, 2053, 1, 0, 0, 0, 150, 2055, 1,
+ 0, 0, 0, 152, 2058, 1, 0, 0, 0, 154, 2061, 1, 0, 0, 0, 156, 2068, 1, 0,
+ 0, 0, 158, 2075, 1, 0, 0, 0, 160, 2079, 1, 0, 0, 0, 162, 2093, 1, 0, 0,
+ 0, 164, 2095, 1, 0, 0, 0, 166, 2097, 1, 0, 0, 0, 168, 2099, 1, 0, 0, 0,
+ 170, 2103, 1, 0, 0, 0, 172, 2105, 1, 0, 0, 0, 174, 2107, 1, 0, 0, 0, 176,
+ 2109, 1, 0, 0, 0, 178, 2111, 1, 0, 0, 0, 180, 2116, 1, 0, 0, 0, 182, 2120,
+ 1, 0, 0, 0, 184, 2122, 1, 0, 0, 0, 186, 2124, 1, 0, 0, 0, 188, 2126, 1,
+ 0, 0, 0, 190, 2128, 1, 0, 0, 0, 192, 2130, 1, 0, 0, 0, 194, 2132, 1, 0,
+ 0, 0, 196, 2134, 1, 0, 0, 0, 198, 2136, 1, 0, 0, 0, 200, 2138, 1, 0, 0,
+ 0, 202, 2140, 1, 0, 0, 0, 204, 2142, 1, 0, 0, 0, 206, 2144, 1, 0, 0, 0,
+ 208, 2146, 1, 0, 0, 0, 210, 2148, 1, 0, 0, 0, 212, 2150, 1, 0, 0, 0, 214,
+ 2152, 1, 0, 0, 0, 216, 2154, 1, 0, 0, 0, 218, 2156, 1, 0, 0, 0, 220, 2158,
+ 1, 0, 0, 0, 222, 2160, 1, 0, 0, 0, 224, 2162, 1, 0, 0, 0, 226, 2164, 1,
+ 0, 0, 0, 228, 2173, 1, 0, 0, 0, 230, 232, 3, 2, 1, 0, 231, 230, 1, 0, 0,
+ 0, 232, 235, 1, 0, 0, 0, 233, 231, 1, 0, 0, 0, 233, 234, 1, 0, 0, 0, 234,
+ 236, 1, 0, 0, 0, 235, 233, 1, 0, 0, 0, 236, 237, 5, 0, 0, 1, 237, 1, 1,
+ 0, 0, 0, 238, 240, 5, 1, 0, 0, 239, 238, 1, 0, 0, 0, 240, 243, 1, 0, 0,
+ 0, 241, 239, 1, 0, 0, 0, 241, 242, 1, 0, 0, 0, 242, 244, 1, 0, 0, 0, 243,
+ 241, 1, 0, 0, 0, 244, 253, 3, 4, 2, 0, 245, 247, 5, 1, 0, 0, 246, 245,
+ 1, 0, 0, 0, 247, 248, 1, 0, 0, 0, 248, 246, 1, 0, 0, 0, 248, 249, 1, 0,
+ 0, 0, 249, 250, 1, 0, 0, 0, 250, 252, 3, 4, 2, 0, 251, 246, 1, 0, 0, 0,
+ 252, 255, 1, 0, 0, 0, 253, 251, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254,
+ 259, 1, 0, 0, 0, 255, 253, 1, 0, 0, 0, 256, 258, 5, 1, 0, 0, 257, 256,
+ 1, 0, 0, 0, 258, 261, 1, 0, 0, 0, 259, 257, 1, 0, 0, 0, 259, 260, 1, 0,
+ 0, 0, 260, 3, 1, 0, 0, 0, 261, 259, 1, 0, 0, 0, 262, 265, 5, 73, 0, 0,
+ 263, 264, 5, 116, 0, 0, 264, 266, 5, 113, 0, 0, 265, 263, 1, 0, 0, 0, 265,
+ 266, 1, 0, 0, 0, 266, 268, 1, 0, 0, 0, 267, 262, 1, 0, 0, 0, 267, 268,
+ 1, 0, 0, 0, 268, 293, 1, 0, 0, 0, 269, 294, 3, 6, 3, 0, 270, 294, 3, 8,
+ 4, 0, 271, 294, 3, 10, 5, 0, 272, 294, 3, 12, 6, 0, 273, 294, 3, 14, 7,
+ 0, 274, 294, 3, 22, 11, 0, 275, 294, 3, 28, 14, 0, 276, 294, 3, 44, 22,
+ 0, 277, 294, 3, 46, 23, 0, 278, 294, 3, 48, 24, 0, 279, 294, 3, 60, 30,
+ 0, 280, 294, 3, 62, 31, 0, 281, 294, 3, 64, 32, 0, 282, 294, 3, 66, 33,
+ 0, 283, 294, 3, 74, 37, 0, 284, 294, 3, 78, 39, 0, 285, 294, 3, 82, 41,
+ 0, 286, 294, 3, 20, 10, 0, 287, 294, 3, 16, 8, 0, 288, 294, 3, 18, 9, 0,
+ 289, 294, 3, 84, 42, 0, 290, 294, 3, 106, 53, 0, 291, 294, 3, 110, 55,
+ 0, 292, 294, 3, 114, 57, 0, 293, 269, 1, 0, 0, 0, 293, 270, 1, 0, 0, 0,
+ 293, 271, 1, 0, 0, 0, 293, 272, 1, 0, 0, 0, 293, 273, 1, 0, 0, 0, 293,
+ 274, 1, 0, 0, 0, 293, 275, 1, 0, 0, 0, 293, 276, 1, 0, 0, 0, 293, 277,
+ 1, 0, 0, 0, 293, 278, 1, 0, 0, 0, 293, 279, 1, 0, 0, 0, 293, 280, 1, 0,
+ 0, 0, 293, 281, 1, 0, 0, 0, 293, 282, 1, 0, 0, 0, 293, 283, 1, 0, 0, 0,
+ 293, 284, 1, 0, 0, 0, 293, 285, 1, 0, 0, 0, 293, 286, 1, 0, 0, 0, 293,
+ 287, 1, 0, 0, 0, 293, 288, 1, 0, 0, 0, 293, 289, 1, 0, 0, 0, 293, 290,
+ 1, 0, 0, 0, 293, 291, 1, 0, 0, 0, 293, 292, 1, 0, 0, 0, 294, 5, 1, 0, 0,
+ 0, 295, 296, 5, 32, 0, 0, 296, 300, 5, 135, 0, 0, 297, 298, 3, 182, 91,
+ 0, 298, 299, 5, 2, 0, 0, 299, 301, 1, 0, 0, 0, 300, 297, 1, 0, 0, 0, 300,
+ 301, 1, 0, 0, 0, 301, 302, 1, 0, 0, 0, 302, 325, 3, 184, 92, 0, 303, 313,
+ 5, 123, 0, 0, 304, 305, 5, 139, 0, 0, 305, 314, 3, 188, 94, 0, 306, 308,
+ 5, 48, 0, 0, 307, 306, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 309, 1, 0,
+ 0, 0, 309, 310, 3, 190, 95, 0, 310, 311, 5, 139, 0, 0, 311, 312, 3, 190,
+ 95, 0, 312, 314, 1, 0, 0, 0, 313, 304, 1, 0, 0, 0, 313, 307, 1, 0, 0, 0,
+ 314, 326, 1, 0, 0, 0, 315, 317, 5, 29, 0, 0, 316, 318, 5, 48, 0, 0, 317,
+ 316, 1, 0, 0, 0, 317, 318, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 326,
+ 3, 30, 15, 0, 320, 322, 5, 65, 0, 0, 321, 323, 5, 48, 0, 0, 322, 321, 1,
+ 0, 0, 0, 322, 323, 1, 0, 0, 0, 323, 324, 1, 0, 0, 0, 324, 326, 3, 190,
+ 95, 0, 325, 303, 1, 0, 0, 0, 325, 315, 1, 0, 0, 0, 325, 320, 1, 0, 0, 0,
+ 326, 7, 1, 0, 0, 0, 327, 335, 5, 33, 0, 0, 328, 336, 3, 182, 91, 0, 329,
+ 330, 3, 182, 91, 0, 330, 331, 5, 2, 0, 0, 331, 333, 1, 0, 0, 0, 332, 329,
+ 1, 0, 0, 0, 332, 333, 1, 0, 0, 0, 333, 334, 1, 0, 0, 0, 334, 336, 3, 186,
+ 93, 0, 335, 328, 1, 0, 0, 0, 335, 332, 1, 0, 0, 0, 335, 336, 1, 0, 0, 0,
+ 336, 9, 1, 0, 0, 0, 337, 339, 5, 37, 0, 0, 338, 340, 5, 57, 0, 0, 339,
+ 338, 1, 0, 0, 0, 339, 340, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 342,
+ 3, 68, 34, 0, 342, 343, 5, 35, 0, 0, 343, 344, 3, 182, 91, 0, 344, 11,
+ 1, 0, 0, 0, 345, 347, 5, 40, 0, 0, 346, 348, 7, 0, 0, 0, 347, 346, 1, 0,
+ 0, 0, 347, 348, 1, 0, 0, 0, 348, 353, 1, 0, 0, 0, 349, 351, 5, 140, 0,
+ 0, 350, 352, 3, 212, 106, 0, 351, 350, 1, 0, 0, 0, 351, 352, 1, 0, 0, 0,
+ 352, 354, 1, 0, 0, 0, 353, 349, 1, 0, 0, 0, 353, 354, 1, 0, 0, 0, 354,
+ 13, 1, 0, 0, 0, 355, 357, 7, 1, 0, 0, 356, 358, 5, 140, 0, 0, 357, 356,
+ 1, 0, 0, 0, 357, 358, 1, 0, 0, 0, 358, 15, 1, 0, 0, 0, 359, 361, 5, 128,
+ 0, 0, 360, 362, 5, 140, 0, 0, 361, 360, 1, 0, 0, 0, 361, 362, 1, 0, 0,
+ 0, 362, 368, 1, 0, 0, 0, 363, 365, 5, 139, 0, 0, 364, 366, 5, 131, 0, 0,
+ 365, 364, 1, 0, 0, 0, 365, 366, 1, 0, 0, 0, 366, 367, 1, 0, 0, 0, 367,
+ 369, 3, 206, 103, 0, 368, 363, 1, 0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 17,
+ 1, 0, 0, 0, 370, 371, 5, 131, 0, 0, 371, 372, 3, 206, 103, 0, 372, 19,
+ 1, 0, 0, 0, 373, 375, 5, 122, 0, 0, 374, 376, 5, 131, 0, 0, 375, 374, 1,
+ 0, 0, 0, 375, 376, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 378, 3, 206,
+ 103, 0, 378, 21, 1, 0, 0, 0, 379, 381, 5, 52, 0, 0, 380, 382, 5, 143, 0,
+ 0, 381, 380, 1, 0, 0, 0, 381, 382, 1, 0, 0, 0, 382, 383, 1, 0, 0, 0, 383,
+ 387, 5, 86, 0, 0, 384, 385, 5, 82, 0, 0, 385, 386, 5, 104, 0, 0, 386, 388,
+ 5, 72, 0, 0, 387, 384, 1, 0, 0, 0, 387, 388, 1, 0, 0, 0, 388, 392, 1, 0,
+ 0, 0, 389, 390, 3, 182, 91, 0, 390, 391, 5, 2, 0, 0, 391, 393, 1, 0, 0,
+ 0, 392, 389, 1, 0, 0, 0, 392, 393, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394,
+ 395, 3, 196, 98, 0, 395, 396, 5, 109, 0, 0, 396, 397, 3, 184, 92, 0, 397,
+ 398, 5, 3, 0, 0, 398, 403, 3, 24, 12, 0, 399, 400, 5, 5, 0, 0, 400, 402,
+ 3, 24, 12, 0, 401, 399, 1, 0, 0, 0, 402, 405, 1, 0, 0, 0, 403, 401, 1,
+ 0, 0, 0, 403, 404, 1, 0, 0, 0, 404, 406, 1, 0, 0, 0, 405, 403, 1, 0, 0,
+ 0, 406, 409, 5, 4, 0, 0, 407, 408, 5, 151, 0, 0, 408, 410, 3, 68, 34, 0,
+ 409, 407, 1, 0, 0, 0, 409, 410, 1, 0, 0, 0, 410, 23, 1, 0, 0, 0, 411, 414,
+ 3, 190, 95, 0, 412, 414, 3, 68, 34, 0, 413, 411, 1, 0, 0, 0, 413, 412,
+ 1, 0, 0, 0, 414, 417, 1, 0, 0, 0, 415, 416, 5, 47, 0, 0, 416, 418, 3, 192,
+ 96, 0, 417, 415, 1, 0, 0, 0, 417, 418, 1, 0, 0, 0, 418, 420, 1, 0, 0, 0,
+ 419, 421, 3, 140, 70, 0, 420, 419, 1, 0, 0, 0, 420, 421, 1, 0, 0, 0, 421,
+ 25, 1, 0, 0, 0, 422, 423, 5, 153, 0, 0, 423, 426, 5, 188, 0, 0, 424, 426,
+ 5, 134, 0, 0, 425, 422, 1, 0, 0, 0, 425, 424, 1, 0, 0, 0, 426, 27, 1, 0,
+ 0, 0, 427, 429, 5, 52, 0, 0, 428, 430, 7, 2, 0, 0, 429, 428, 1, 0, 0, 0,
+ 429, 430, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, 431, 435, 5, 135, 0, 0, 432,
+ 433, 5, 82, 0, 0, 433, 434, 5, 104, 0, 0, 434, 436, 5, 72, 0, 0, 435, 432,
+ 1, 0, 0, 0, 435, 436, 1, 0, 0, 0, 436, 440, 1, 0, 0, 0, 437, 438, 3, 182,
+ 91, 0, 438, 439, 5, 2, 0, 0, 439, 441, 1, 0, 0, 0, 440, 437, 1, 0, 0, 0,
+ 440, 441, 1, 0, 0, 0, 441, 442, 1, 0, 0, 0, 442, 472, 3, 184, 92, 0, 443,
+ 444, 5, 3, 0, 0, 444, 449, 3, 30, 15, 0, 445, 446, 5, 5, 0, 0, 446, 448,
+ 3, 30, 15, 0, 447, 445, 1, 0, 0, 0, 448, 451, 1, 0, 0, 0, 449, 450, 1,
+ 0, 0, 0, 449, 447, 1, 0, 0, 0, 450, 456, 1, 0, 0, 0, 451, 449, 1, 0, 0,
+ 0, 452, 453, 5, 5, 0, 0, 453, 455, 3, 38, 19, 0, 454, 452, 1, 0, 0, 0,
+ 455, 458, 1, 0, 0, 0, 456, 454, 1, 0, 0, 0, 456, 457, 1, 0, 0, 0, 457,
+ 459, 1, 0, 0, 0, 458, 456, 1, 0, 0, 0, 459, 468, 5, 4, 0, 0, 460, 465,
+ 3, 26, 13, 0, 461, 462, 5, 5, 0, 0, 462, 464, 3, 26, 13, 0, 463, 461, 1,
+ 0, 0, 0, 464, 467, 1, 0, 0, 0, 465, 463, 1, 0, 0, 0, 465, 466, 1, 0, 0,
+ 0, 466, 469, 1, 0, 0, 0, 467, 465, 1, 0, 0, 0, 468, 460, 1, 0, 0, 0, 468,
+ 469, 1, 0, 0, 0, 469, 473, 1, 0, 0, 0, 470, 471, 5, 35, 0, 0, 471, 473,
+ 3, 84, 42, 0, 472, 443, 1, 0, 0, 0, 472, 470, 1, 0, 0, 0, 473, 29, 1, 0,
+ 0, 0, 474, 476, 3, 190, 95, 0, 475, 477, 3, 32, 16, 0, 476, 475, 1, 0,
+ 0, 0, 476, 477, 1, 0, 0, 0, 477, 481, 1, 0, 0, 0, 478, 480, 3, 34, 17,
+ 0, 479, 478, 1, 0, 0, 0, 480, 483, 1, 0, 0, 0, 481, 479, 1, 0, 0, 0, 481,
+ 482, 1, 0, 0, 0, 482, 31, 1, 0, 0, 0, 483, 481, 1, 0, 0, 0, 484, 486, 3,
+ 176, 88, 0, 485, 484, 1, 0, 0, 0, 486, 487, 1, 0, 0, 0, 487, 488, 1, 0,
+ 0, 0, 487, 485, 1, 0, 0, 0, 488, 499, 1, 0, 0, 0, 489, 490, 5, 3, 0, 0,
+ 490, 491, 3, 36, 18, 0, 491, 492, 5, 4, 0, 0, 492, 500, 1, 0, 0, 0, 493,
+ 494, 5, 3, 0, 0, 494, 495, 3, 36, 18, 0, 495, 496, 5, 5, 0, 0, 496, 497,
+ 3, 36, 18, 0, 497, 498, 5, 4, 0, 0, 498, 500, 1, 0, 0, 0, 499, 489, 1,
+ 0, 0, 0, 499, 493, 1, 0, 0, 0, 499, 500, 1, 0, 0, 0, 500, 33, 1, 0, 0,
+ 0, 501, 502, 5, 51, 0, 0, 502, 504, 3, 176, 88, 0, 503, 501, 1, 0, 0, 0,
+ 503, 504, 1, 0, 0, 0, 504, 552, 1, 0, 0, 0, 505, 506, 5, 115, 0, 0, 506,
+ 508, 5, 97, 0, 0, 507, 509, 3, 140, 70, 0, 508, 507, 1, 0, 0, 0, 508, 509,
+ 1, 0, 0, 0, 509, 511, 1, 0, 0, 0, 510, 512, 3, 42, 21, 0, 511, 510, 1,
+ 0, 0, 0, 511, 512, 1, 0, 0, 0, 512, 514, 1, 0, 0, 0, 513, 515, 5, 38, 0,
+ 0, 514, 513, 1, 0, 0, 0, 514, 515, 1, 0, 0, 0, 515, 553, 1, 0, 0, 0, 516,
+ 517, 5, 104, 0, 0, 517, 520, 5, 106, 0, 0, 518, 520, 5, 143, 0, 0, 519,
+ 516, 1, 0, 0, 0, 519, 518, 1, 0, 0, 0, 520, 522, 1, 0, 0, 0, 521, 523,
+ 3, 42, 21, 0, 522, 521, 1, 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 553, 1,
+ 0, 0, 0, 524, 525, 5, 46, 0, 0, 525, 526, 5, 3, 0, 0, 526, 527, 3, 68,
+ 34, 0, 527, 528, 5, 4, 0, 0, 528, 553, 1, 0, 0, 0, 529, 536, 5, 58, 0,
+ 0, 530, 537, 3, 36, 18, 0, 531, 537, 3, 72, 36, 0, 532, 533, 5, 3, 0, 0,
+ 533, 534, 3, 68, 34, 0, 534, 535, 5, 4, 0, 0, 535, 537, 1, 0, 0, 0, 536,
+ 530, 1, 0, 0, 0, 536, 531, 1, 0, 0, 0, 536, 532, 1, 0, 0, 0, 537, 553,
+ 1, 0, 0, 0, 538, 539, 5, 47, 0, 0, 539, 553, 3, 192, 96, 0, 540, 553, 3,
+ 40, 20, 0, 541, 542, 5, 172, 0, 0, 542, 544, 5, 173, 0, 0, 543, 541, 1,
+ 0, 0, 0, 543, 544, 1, 0, 0, 0, 544, 545, 1, 0, 0, 0, 545, 546, 5, 35, 0,
+ 0, 546, 547, 5, 3, 0, 0, 547, 548, 3, 68, 34, 0, 548, 550, 5, 4, 0, 0,
+ 549, 551, 7, 3, 0, 0, 550, 549, 1, 0, 0, 0, 550, 551, 1, 0, 0, 0, 551,
+ 553, 1, 0, 0, 0, 552, 505, 1, 0, 0, 0, 552, 519, 1, 0, 0, 0, 552, 524,
+ 1, 0, 0, 0, 552, 529, 1, 0, 0, 0, 552, 538, 1, 0, 0, 0, 552, 540, 1, 0,
+ 0, 0, 552, 543, 1, 0, 0, 0, 553, 35, 1, 0, 0, 0, 554, 556, 7, 4, 0, 0,
+ 555, 554, 1, 0, 0, 0, 555, 556, 1, 0, 0, 0, 556, 557, 1, 0, 0, 0, 557,
+ 558, 5, 189, 0, 0, 558, 37, 1, 0, 0, 0, 559, 560, 5, 51, 0, 0, 560, 562,
+ 3, 176, 88, 0, 561, 559, 1, 0, 0, 0, 561, 562, 1, 0, 0, 0, 562, 600, 1,
+ 0, 0, 0, 563, 564, 5, 115, 0, 0, 564, 567, 5, 97, 0, 0, 565, 567, 5, 143,
+ 0, 0, 566, 563, 1, 0, 0, 0, 566, 565, 1, 0, 0, 0, 567, 568, 1, 0, 0, 0,
+ 568, 569, 5, 3, 0, 0, 569, 574, 3, 24, 12, 0, 570, 571, 5, 5, 0, 0, 571,
+ 573, 3, 24, 12, 0, 572, 570, 1, 0, 0, 0, 573, 576, 1, 0, 0, 0, 574, 572,
+ 1, 0, 0, 0, 574, 575, 1, 0, 0, 0, 575, 577, 1, 0, 0, 0, 576, 574, 1, 0,
+ 0, 0, 577, 579, 5, 4, 0, 0, 578, 580, 3, 42, 21, 0, 579, 578, 1, 0, 0,
+ 0, 579, 580, 1, 0, 0, 0, 580, 601, 1, 0, 0, 0, 581, 582, 5, 46, 0, 0, 582,
+ 583, 5, 3, 0, 0, 583, 584, 3, 68, 34, 0, 584, 585, 5, 4, 0, 0, 585, 601,
+ 1, 0, 0, 0, 586, 587, 5, 76, 0, 0, 587, 588, 5, 97, 0, 0, 588, 589, 5,
+ 3, 0, 0, 589, 594, 3, 190, 95, 0, 590, 591, 5, 5, 0, 0, 591, 593, 3, 190,
+ 95, 0, 592, 590, 1, 0, 0, 0, 593, 596, 1, 0, 0, 0, 594, 592, 1, 0, 0, 0,
+ 594, 595, 1, 0, 0, 0, 595, 597, 1, 0, 0, 0, 596, 594, 1, 0, 0, 0, 597,
+ 598, 5, 4, 0, 0, 598, 599, 3, 40, 20, 0, 599, 601, 1, 0, 0, 0, 600, 566,
+ 1, 0, 0, 0, 600, 581, 1, 0, 0, 0, 600, 586, 1, 0, 0, 0, 601, 39, 1, 0,
+ 0, 0, 602, 603, 5, 119, 0, 0, 603, 615, 3, 194, 97, 0, 604, 605, 5, 3,
+ 0, 0, 605, 610, 3, 190, 95, 0, 606, 607, 5, 5, 0, 0, 607, 609, 3, 190,
+ 95, 0, 608, 606, 1, 0, 0, 0, 609, 612, 1, 0, 0, 0, 610, 608, 1, 0, 0, 0,
+ 610, 611, 1, 0, 0, 0, 611, 613, 1, 0, 0, 0, 612, 610, 1, 0, 0, 0, 613,
+ 614, 5, 4, 0, 0, 614, 616, 1, 0, 0, 0, 615, 604, 1, 0, 0, 0, 615, 616,
+ 1, 0, 0, 0, 616, 631, 1, 0, 0, 0, 617, 618, 5, 109, 0, 0, 618, 625, 7,
+ 5, 0, 0, 619, 620, 5, 133, 0, 0, 620, 626, 7, 6, 0, 0, 621, 626, 5, 43,
+ 0, 0, 622, 626, 5, 125, 0, 0, 623, 624, 5, 103, 0, 0, 624, 626, 5, 28,
+ 0, 0, 625, 619, 1, 0, 0, 0, 625, 621, 1, 0, 0, 0, 625, 622, 1, 0, 0, 0,
+ 625, 623, 1, 0, 0, 0, 626, 630, 1, 0, 0, 0, 627, 628, 5, 101, 0, 0, 628,
+ 630, 3, 176, 88, 0, 629, 617, 1, 0, 0, 0, 629, 627, 1, 0, 0, 0, 630, 633,
+ 1, 0, 0, 0, 631, 629, 1, 0, 0, 0, 631, 632, 1, 0, 0, 0, 632, 642, 1, 0,
+ 0, 0, 633, 631, 1, 0, 0, 0, 634, 636, 5, 104, 0, 0, 635, 634, 1, 0, 0,
+ 0, 635, 636, 1, 0, 0, 0, 636, 637, 1, 0, 0, 0, 637, 640, 5, 59, 0, 0, 638,
+ 639, 5, 88, 0, 0, 639, 641, 7, 7, 0, 0, 640, 638, 1, 0, 0, 0, 640, 641,
+ 1, 0, 0, 0, 641, 643, 1, 0, 0, 0, 642, 635, 1, 0, 0, 0, 642, 643, 1, 0,
+ 0, 0, 643, 41, 1, 0, 0, 0, 644, 645, 5, 109, 0, 0, 645, 646, 5, 50, 0,
+ 0, 646, 647, 7, 8, 0, 0, 647, 43, 1, 0, 0, 0, 648, 650, 5, 52, 0, 0, 649,
+ 651, 7, 2, 0, 0, 650, 649, 1, 0, 0, 0, 650, 651, 1, 0, 0, 0, 651, 652,
+ 1, 0, 0, 0, 652, 656, 5, 141, 0, 0, 653, 654, 5, 82, 0, 0, 654, 655, 5,
+ 104, 0, 0, 655, 657, 5, 72, 0, 0, 656, 653, 1, 0, 0, 0, 656, 657, 1, 0,
+ 0, 0, 657, 661, 1, 0, 0, 0, 658, 659, 3, 182, 91, 0, 659, 660, 5, 2, 0,
+ 0, 660, 662, 1, 0, 0, 0, 661, 658, 1, 0, 0, 0, 661, 662, 1, 0, 0, 0, 662,
+ 663, 1, 0, 0, 0, 663, 668, 3, 198, 99, 0, 664, 669, 5, 39, 0, 0, 665, 669,
+ 5, 30, 0, 0, 666, 667, 5, 91, 0, 0, 667, 669, 5, 107, 0, 0, 668, 664, 1,
+ 0, 0, 0, 668, 665, 1, 0, 0, 0, 668, 666, 1, 0, 0, 0, 668, 669, 1, 0, 0,
+ 0, 669, 684, 1, 0, 0, 0, 670, 685, 5, 61, 0, 0, 671, 685, 5, 90, 0, 0,
+ 672, 682, 5, 144, 0, 0, 673, 674, 5, 107, 0, 0, 674, 679, 3, 190, 95, 0,
+ 675, 676, 5, 5, 0, 0, 676, 678, 3, 190, 95, 0, 677, 675, 1, 0, 0, 0, 678,
+ 681, 1, 0, 0, 0, 679, 677, 1, 0, 0, 0, 679, 680, 1, 0, 0, 0, 680, 683,
+ 1, 0, 0, 0, 681, 679, 1, 0, 0, 0, 682, 673, 1, 0, 0, 0, 682, 683, 1, 0,
+ 0, 0, 683, 685, 1, 0, 0, 0, 684, 670, 1, 0, 0, 0, 684, 671, 1, 0, 0, 0,
+ 684, 672, 1, 0, 0, 0, 685, 686, 1, 0, 0, 0, 686, 687, 5, 109, 0, 0, 687,
+ 691, 3, 184, 92, 0, 688, 689, 5, 75, 0, 0, 689, 690, 5, 66, 0, 0, 690,
+ 692, 5, 129, 0, 0, 691, 688, 1, 0, 0, 0, 691, 692, 1, 0, 0, 0, 692, 695,
+ 1, 0, 0, 0, 693, 694, 5, 150, 0, 0, 694, 696, 3, 68, 34, 0, 695, 693, 1,
+ 0, 0, 0, 695, 696, 1, 0, 0, 0, 696, 697, 1, 0, 0, 0, 697, 706, 5, 40, 0,
+ 0, 698, 703, 3, 106, 53, 0, 699, 703, 3, 74, 37, 0, 700, 703, 3, 60, 30,
+ 0, 701, 703, 3, 84, 42, 0, 702, 698, 1, 0, 0, 0, 702, 699, 1, 0, 0, 0,
+ 702, 700, 1, 0, 0, 0, 702, 701, 1, 0, 0, 0, 703, 704, 1, 0, 0, 0, 704,
+ 705, 5, 1, 0, 0, 705, 707, 1, 0, 0, 0, 706, 702, 1, 0, 0, 0, 707, 708,
+ 1, 0, 0, 0, 708, 706, 1, 0, 0, 0, 708, 709, 1, 0, 0, 0, 709, 710, 1, 0,
+ 0, 0, 710, 711, 5, 68, 0, 0, 711, 45, 1, 0, 0, 0, 712, 714, 5, 52, 0, 0,
+ 713, 715, 7, 2, 0, 0, 714, 713, 1, 0, 0, 0, 714, 715, 1, 0, 0, 0, 715,
+ 716, 1, 0, 0, 0, 716, 720, 5, 148, 0, 0, 717, 718, 5, 82, 0, 0, 718, 719,
+ 5, 104, 0, 0, 719, 721, 5, 72, 0, 0, 720, 717, 1, 0, 0, 0, 720, 721, 1,
+ 0, 0, 0, 721, 725, 1, 0, 0, 0, 722, 723, 3, 182, 91, 0, 723, 724, 5, 2,
+ 0, 0, 724, 726, 1, 0, 0, 0, 725, 722, 1, 0, 0, 0, 725, 726, 1, 0, 0, 0,
+ 726, 727, 1, 0, 0, 0, 727, 739, 3, 200, 100, 0, 728, 729, 5, 3, 0, 0, 729,
+ 734, 3, 190, 95, 0, 730, 731, 5, 5, 0, 0, 731, 733, 3, 190, 95, 0, 732,
+ 730, 1, 0, 0, 0, 733, 736, 1, 0, 0, 0, 734, 732, 1, 0, 0, 0, 734, 735,
+ 1, 0, 0, 0, 735, 737, 1, 0, 0, 0, 736, 734, 1, 0, 0, 0, 737, 738, 5, 4,
+ 0, 0, 738, 740, 1, 0, 0, 0, 739, 728, 1, 0, 0, 0, 739, 740, 1, 0, 0, 0,
+ 740, 741, 1, 0, 0, 0, 741, 742, 5, 35, 0, 0, 742, 743, 3, 84, 42, 0, 743,
+ 47, 1, 0, 0, 0, 744, 745, 5, 52, 0, 0, 745, 746, 5, 149, 0, 0, 746, 750,
+ 5, 135, 0, 0, 747, 748, 5, 82, 0, 0, 748, 749, 5, 104, 0, 0, 749, 751,
+ 5, 72, 0, 0, 750, 747, 1, 0, 0, 0, 750, 751, 1, 0, 0, 0, 751, 755, 1, 0,
+ 0, 0, 752, 753, 3, 182, 91, 0, 753, 754, 5, 2, 0, 0, 754, 756, 1, 0, 0,
+ 0, 755, 752, 1, 0, 0, 0, 755, 756, 1, 0, 0, 0, 756, 757, 1, 0, 0, 0, 757,
+ 758, 3, 184, 92, 0, 758, 759, 5, 145, 0, 0, 759, 771, 3, 202, 101, 0, 760,
+ 761, 5, 3, 0, 0, 761, 766, 3, 170, 85, 0, 762, 763, 5, 5, 0, 0, 763, 765,
+ 3, 170, 85, 0, 764, 762, 1, 0, 0, 0, 765, 768, 1, 0, 0, 0, 766, 764, 1,
+ 0, 0, 0, 766, 767, 1, 0, 0, 0, 767, 769, 1, 0, 0, 0, 768, 766, 1, 0, 0,
+ 0, 769, 770, 5, 4, 0, 0, 770, 772, 1, 0, 0, 0, 771, 760, 1, 0, 0, 0, 771,
+ 772, 1, 0, 0, 0, 772, 49, 1, 0, 0, 0, 773, 775, 5, 152, 0, 0, 774, 776,
+ 5, 118, 0, 0, 775, 774, 1, 0, 0, 0, 775, 776, 1, 0, 0, 0, 776, 777, 1,
+ 0, 0, 0, 777, 778, 3, 52, 26, 0, 778, 779, 5, 35, 0, 0, 779, 780, 5, 3,
+ 0, 0, 780, 781, 3, 84, 42, 0, 781, 791, 5, 4, 0, 0, 782, 783, 5, 5, 0,
+ 0, 783, 784, 3, 52, 26, 0, 784, 785, 5, 35, 0, 0, 785, 786, 5, 3, 0, 0,
+ 786, 787, 3, 84, 42, 0, 787, 788, 5, 4, 0, 0, 788, 790, 1, 0, 0, 0, 789,
+ 782, 1, 0, 0, 0, 790, 793, 1, 0, 0, 0, 791, 789, 1, 0, 0, 0, 791, 792,
+ 1, 0, 0, 0, 792, 51, 1, 0, 0, 0, 793, 791, 1, 0, 0, 0, 794, 806, 3, 184,
+ 92, 0, 795, 796, 5, 3, 0, 0, 796, 801, 3, 190, 95, 0, 797, 798, 5, 5, 0,
+ 0, 798, 800, 3, 190, 95, 0, 799, 797, 1, 0, 0, 0, 800, 803, 1, 0, 0, 0,
+ 801, 799, 1, 0, 0, 0, 801, 802, 1, 0, 0, 0, 802, 804, 1, 0, 0, 0, 803,
+ 801, 1, 0, 0, 0, 804, 805, 5, 4, 0, 0, 805, 807, 1, 0, 0, 0, 806, 795,
+ 1, 0, 0, 0, 806, 807, 1, 0, 0, 0, 807, 53, 1, 0, 0, 0, 808, 809, 3, 52,
+ 26, 0, 809, 810, 5, 35, 0, 0, 810, 811, 5, 3, 0, 0, 811, 812, 3, 162, 81,
+ 0, 812, 814, 5, 142, 0, 0, 813, 815, 5, 31, 0, 0, 814, 813, 1, 0, 0, 0,
+ 814, 815, 1, 0, 0, 0, 815, 816, 1, 0, 0, 0, 816, 817, 3, 164, 82, 0, 817,
+ 818, 5, 4, 0, 0, 818, 55, 1, 0, 0, 0, 819, 831, 3, 184, 92, 0, 820, 821,
+ 5, 3, 0, 0, 821, 826, 3, 190, 95, 0, 822, 823, 5, 5, 0, 0, 823, 825, 3,
+ 190, 95, 0, 824, 822, 1, 0, 0, 0, 825, 828, 1, 0, 0, 0, 826, 824, 1, 0,
+ 0, 0, 826, 827, 1, 0, 0, 0, 827, 829, 1, 0, 0, 0, 828, 826, 1, 0, 0, 0,
+ 829, 830, 5, 4, 0, 0, 830, 832, 1, 0, 0, 0, 831, 820, 1, 0, 0, 0, 831,
+ 832, 1, 0, 0, 0, 832, 833, 1, 0, 0, 0, 833, 834, 5, 35, 0, 0, 834, 835,
+ 5, 3, 0, 0, 835, 836, 3, 84, 42, 0, 836, 837, 5, 4, 0, 0, 837, 57, 1, 0,
+ 0, 0, 838, 847, 5, 126, 0, 0, 839, 848, 5, 7, 0, 0, 840, 845, 3, 68, 34,
+ 0, 841, 843, 5, 35, 0, 0, 842, 841, 1, 0, 0, 0, 842, 843, 1, 0, 0, 0, 843,
+ 844, 1, 0, 0, 0, 844, 846, 3, 172, 86, 0, 845, 842, 1, 0, 0, 0, 845, 846,
+ 1, 0, 0, 0, 846, 848, 1, 0, 0, 0, 847, 839, 1, 0, 0, 0, 847, 840, 1, 0,
+ 0, 0, 848, 862, 1, 0, 0, 0, 849, 858, 5, 5, 0, 0, 850, 859, 5, 7, 0, 0,
+ 851, 856, 3, 68, 34, 0, 852, 854, 5, 35, 0, 0, 853, 852, 1, 0, 0, 0, 853,
+ 854, 1, 0, 0, 0, 854, 855, 1, 0, 0, 0, 855, 857, 3, 172, 86, 0, 856, 853,
+ 1, 0, 0, 0, 856, 857, 1, 0, 0, 0, 857, 859, 1, 0, 0, 0, 858, 850, 1, 0,
+ 0, 0, 858, 851, 1, 0, 0, 0, 859, 861, 1, 0, 0, 0, 860, 849, 1, 0, 0, 0,
+ 861, 864, 1, 0, 0, 0, 862, 860, 1, 0, 0, 0, 862, 863, 1, 0, 0, 0, 863,
+ 59, 1, 0, 0, 0, 864, 862, 1, 0, 0, 0, 865, 867, 3, 50, 25, 0, 866, 865,
+ 1, 0, 0, 0, 866, 867, 1, 0, 0, 0, 867, 868, 1, 0, 0, 0, 868, 869, 5, 61,
+ 0, 0, 869, 870, 5, 77, 0, 0, 870, 873, 3, 112, 56, 0, 871, 872, 5, 151,
+ 0, 0, 872, 874, 3, 68, 34, 0, 873, 871, 1, 0, 0, 0, 873, 874, 1, 0, 0,
+ 0, 874, 876, 1, 0, 0, 0, 875, 877, 3, 58, 29, 0, 876, 875, 1, 0, 0, 0,
+ 876, 877, 1, 0, 0, 0, 877, 61, 1, 0, 0, 0, 878, 880, 3, 50, 25, 0, 879,
+ 878, 1, 0, 0, 0, 879, 880, 1, 0, 0, 0, 880, 881, 1, 0, 0, 0, 881, 882,
+ 5, 61, 0, 0, 882, 883, 5, 77, 0, 0, 883, 886, 3, 112, 56, 0, 884, 885,
+ 5, 151, 0, 0, 885, 887, 3, 68, 34, 0, 886, 884, 1, 0, 0, 0, 886, 887, 1,
+ 0, 0, 0, 887, 892, 1, 0, 0, 0, 888, 890, 3, 134, 67, 0, 889, 888, 1, 0,
+ 0, 0, 889, 890, 1, 0, 0, 0, 890, 891, 1, 0, 0, 0, 891, 893, 3, 136, 68,
+ 0, 892, 889, 1, 0, 0, 0, 892, 893, 1, 0, 0, 0, 893, 895, 1, 0, 0, 0, 894,
+ 896, 3, 58, 29, 0, 895, 894, 1, 0, 0, 0, 895, 896, 1, 0, 0, 0, 896, 63,
+ 1, 0, 0, 0, 897, 899, 5, 63, 0, 0, 898, 900, 5, 57, 0, 0, 899, 898, 1,
+ 0, 0, 0, 899, 900, 1, 0, 0, 0, 900, 901, 1, 0, 0, 0, 901, 902, 3, 182,
+ 91, 0, 902, 65, 1, 0, 0, 0, 903, 904, 5, 65, 0, 0, 904, 907, 7, 9, 0, 0,
+ 905, 906, 5, 82, 0, 0, 906, 908, 5, 72, 0, 0, 907, 905, 1, 0, 0, 0, 907,
+ 908, 1, 0, 0, 0, 908, 912, 1, 0, 0, 0, 909, 910, 3, 182, 91, 0, 910, 911,
+ 5, 2, 0, 0, 911, 913, 1, 0, 0, 0, 912, 909, 1, 0, 0, 0, 912, 913, 1, 0,
+ 0, 0, 913, 914, 1, 0, 0, 0, 914, 915, 3, 228, 114, 0, 915, 67, 1, 0, 0,
+ 0, 916, 917, 6, 34, -1, 0, 917, 1006, 3, 72, 36, 0, 918, 1006, 5, 190,
+ 0, 0, 919, 1006, 5, 191, 0, 0, 920, 921, 3, 182, 91, 0, 921, 922, 5, 2,
+ 0, 0, 922, 924, 1, 0, 0, 0, 923, 920, 1, 0, 0, 0, 923, 924, 1, 0, 0, 0,
+ 924, 925, 1, 0, 0, 0, 925, 926, 3, 184, 92, 0, 926, 927, 5, 2, 0, 0, 927,
+ 929, 1, 0, 0, 0, 928, 923, 1, 0, 0, 0, 928, 929, 1, 0, 0, 0, 929, 930,
+ 1, 0, 0, 0, 930, 1006, 3, 190, 95, 0, 931, 932, 3, 166, 83, 0, 932, 933,
+ 3, 68, 34, 21, 933, 1006, 1, 0, 0, 0, 934, 935, 3, 180, 90, 0, 935, 948,
+ 5, 3, 0, 0, 936, 938, 5, 64, 0, 0, 937, 936, 1, 0, 0, 0, 937, 938, 1, 0,
+ 0, 0, 938, 939, 1, 0, 0, 0, 939, 944, 3, 68, 34, 0, 940, 941, 5, 5, 0,
+ 0, 941, 943, 3, 68, 34, 0, 942, 940, 1, 0, 0, 0, 943, 946, 1, 0, 0, 0,
+ 944, 942, 1, 0, 0, 0, 944, 945, 1, 0, 0, 0, 945, 949, 1, 0, 0, 0, 946,
+ 944, 1, 0, 0, 0, 947, 949, 5, 7, 0, 0, 948, 937, 1, 0, 0, 0, 948, 947,
+ 1, 0, 0, 0, 948, 949, 1, 0, 0, 0, 949, 950, 1, 0, 0, 0, 950, 952, 5, 4,
+ 0, 0, 951, 953, 3, 116, 58, 0, 952, 951, 1, 0, 0, 0, 952, 953, 1, 0, 0,
+ 0, 953, 955, 1, 0, 0, 0, 954, 956, 3, 120, 60, 0, 955, 954, 1, 0, 0, 0,
+ 955, 956, 1, 0, 0, 0, 956, 1006, 1, 0, 0, 0, 957, 958, 5, 3, 0, 0, 958,
+ 963, 3, 68, 34, 0, 959, 960, 5, 5, 0, 0, 960, 962, 3, 68, 34, 0, 961, 959,
+ 1, 0, 0, 0, 962, 965, 1, 0, 0, 0, 963, 961, 1, 0, 0, 0, 963, 964, 1, 0,
+ 0, 0, 964, 966, 1, 0, 0, 0, 965, 963, 1, 0, 0, 0, 966, 967, 5, 4, 0, 0,
+ 967, 1006, 1, 0, 0, 0, 968, 969, 5, 45, 0, 0, 969, 970, 5, 3, 0, 0, 970,
+ 971, 3, 68, 34, 0, 971, 972, 5, 35, 0, 0, 972, 973, 3, 32, 16, 0, 973,
+ 974, 5, 4, 0, 0, 974, 1006, 1, 0, 0, 0, 975, 977, 5, 104, 0, 0, 976, 975,
+ 1, 0, 0, 0, 976, 977, 1, 0, 0, 0, 977, 978, 1, 0, 0, 0, 978, 980, 5, 72,
+ 0, 0, 979, 976, 1, 0, 0, 0, 979, 980, 1, 0, 0, 0, 980, 981, 1, 0, 0, 0,
+ 981, 982, 5, 3, 0, 0, 982, 983, 3, 84, 42, 0, 983, 984, 5, 4, 0, 0, 984,
+ 1006, 1, 0, 0, 0, 985, 987, 5, 44, 0, 0, 986, 988, 3, 68, 34, 0, 987, 986,
+ 1, 0, 0, 0, 987, 988, 1, 0, 0, 0, 988, 994, 1, 0, 0, 0, 989, 990, 5, 150,
+ 0, 0, 990, 991, 3, 68, 34, 0, 991, 992, 5, 138, 0, 0, 992, 993, 3, 68,
+ 34, 0, 993, 995, 1, 0, 0, 0, 994, 989, 1, 0, 0, 0, 995, 996, 1, 0, 0, 0,
+ 996, 994, 1, 0, 0, 0, 996, 997, 1, 0, 0, 0, 997, 1000, 1, 0, 0, 0, 998,
+ 999, 5, 67, 0, 0, 999, 1001, 3, 68, 34, 0, 1000, 998, 1, 0, 0, 0, 1000,
+ 1001, 1, 0, 0, 0, 1001, 1002, 1, 0, 0, 0, 1002, 1003, 5, 68, 0, 0, 1003,
+ 1006, 1, 0, 0, 0, 1004, 1006, 3, 70, 35, 0, 1005, 916, 1, 0, 0, 0, 1005,
+ 918, 1, 0, 0, 0, 1005, 919, 1, 0, 0, 0, 1005, 928, 1, 0, 0, 0, 1005, 931,
+ 1, 0, 0, 0, 1005, 934, 1, 0, 0, 0, 1005, 957, 1, 0, 0, 0, 1005, 968, 1,
+ 0, 0, 0, 1005, 979, 1, 0, 0, 0, 1005, 985, 1, 0, 0, 0, 1005, 1004, 1, 0,
+ 0, 0, 1006, 1126, 1, 0, 0, 0, 1007, 1008, 10, 20, 0, 0, 1008, 1009, 5,
+ 13, 0, 0, 1009, 1125, 3, 68, 34, 21, 1010, 1011, 10, 19, 0, 0, 1011, 1012,
+ 7, 10, 0, 0, 1012, 1125, 3, 68, 34, 20, 1013, 1014, 10, 18, 0, 0, 1014,
+ 1015, 7, 11, 0, 0, 1015, 1125, 3, 68, 34, 19, 1016, 1017, 10, 17, 0, 0,
+ 1017, 1018, 7, 4, 0, 0, 1018, 1125, 3, 68, 34, 18, 1019, 1020, 10, 16,
+ 0, 0, 1020, 1021, 7, 12, 0, 0, 1021, 1125, 3, 68, 34, 17, 1022, 1023, 10,
+ 15, 0, 0, 1023, 1024, 7, 13, 0, 0, 1024, 1125, 3, 68, 34, 16, 1025, 1041,
+ 10, 14, 0, 0, 1026, 1042, 5, 6, 0, 0, 1027, 1042, 5, 24, 0, 0, 1028, 1042,
+ 5, 25, 0, 0, 1029, 1042, 5, 26, 0, 0, 1030, 1042, 5, 94, 0, 0, 1031, 1032,
+ 5, 94, 0, 0, 1032, 1042, 5, 104, 0, 0, 1033, 1035, 5, 104, 0, 0, 1034,
+ 1033, 1, 0, 0, 0, 1034, 1035, 1, 0, 0, 0, 1035, 1036, 1, 0, 0, 0, 1036,
+ 1042, 5, 85, 0, 0, 1037, 1042, 5, 99, 0, 0, 1038, 1042, 5, 79, 0, 0, 1039,
+ 1042, 5, 101, 0, 0, 1040, 1042, 5, 120, 0, 0, 1041, 1026, 1, 0, 0, 0, 1041,
+ 1027, 1, 0, 0, 0, 1041, 1028, 1, 0, 0, 0, 1041, 1029, 1, 0, 0, 0, 1041,
+ 1030, 1, 0, 0, 0, 1041, 1031, 1, 0, 0, 0, 1041, 1034, 1, 0, 0, 0, 1041,
+ 1037, 1, 0, 0, 0, 1041, 1038, 1, 0, 0, 0, 1041, 1039, 1, 0, 0, 0, 1041,
+ 1040, 1, 0, 0, 0, 1042, 1043, 1, 0, 0, 0, 1043, 1125, 3, 68, 34, 15, 1044,
+ 1045, 10, 12, 0, 0, 1045, 1046, 5, 34, 0, 0, 1046, 1125, 3, 68, 34, 13,
+ 1047, 1048, 10, 11, 0, 0, 1048, 1049, 5, 110, 0, 0, 1049, 1125, 3, 68,
+ 34, 12, 1050, 1052, 10, 4, 0, 0, 1051, 1053, 5, 104, 0, 0, 1052, 1051,
+ 1, 0, 0, 0, 1052, 1053, 1, 0, 0, 0, 1053, 1054, 1, 0, 0, 0, 1054, 1055,
+ 5, 41, 0, 0, 1055, 1056, 3, 68, 34, 0, 1056, 1057, 5, 34, 0, 0, 1057, 1058,
+ 3, 68, 34, 5, 1058, 1125, 1, 0, 0, 0, 1059, 1061, 10, 13, 0, 0, 1060, 1062,
+ 5, 104, 0, 0, 1061, 1060, 1, 0, 0, 0, 1061, 1062, 1, 0, 0, 0, 1062, 1063,
+ 1, 0, 0, 0, 1063, 1102, 5, 85, 0, 0, 1064, 1074, 5, 3, 0, 0, 1065, 1075,
+ 3, 84, 42, 0, 1066, 1071, 3, 68, 34, 0, 1067, 1068, 5, 5, 0, 0, 1068, 1070,
+ 3, 68, 34, 0, 1069, 1067, 1, 0, 0, 0, 1070, 1073, 1, 0, 0, 0, 1071, 1069,
+ 1, 0, 0, 0, 1071, 1072, 1, 0, 0, 0, 1072, 1075, 1, 0, 0, 0, 1073, 1071,
+ 1, 0, 0, 0, 1074, 1065, 1, 0, 0, 0, 1074, 1066, 1, 0, 0, 0, 1074, 1075,
+ 1, 0, 0, 0, 1075, 1076, 1, 0, 0, 0, 1076, 1103, 5, 4, 0, 0, 1077, 1078,
+ 3, 182, 91, 0, 1078, 1079, 5, 2, 0, 0, 1079, 1081, 1, 0, 0, 0, 1080, 1077,
+ 1, 0, 0, 0, 1080, 1081, 1, 0, 0, 0, 1081, 1082, 1, 0, 0, 0, 1082, 1103,
+ 3, 184, 92, 0, 1083, 1084, 3, 182, 91, 0, 1084, 1085, 5, 2, 0, 0, 1085,
+ 1087, 1, 0, 0, 0, 1086, 1083, 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087,
+ 1088, 1, 0, 0, 0, 1088, 1089, 3, 226, 113, 0, 1089, 1098, 5, 3, 0, 0, 1090,
+ 1095, 3, 68, 34, 0, 1091, 1092, 5, 5, 0, 0, 1092, 1094, 3, 68, 34, 0, 1093,
+ 1091, 1, 0, 0, 0, 1094, 1097, 1, 0, 0, 0, 1095, 1093, 1, 0, 0, 0, 1095,
+ 1096, 1, 0, 0, 0, 1096, 1099, 1, 0, 0, 0, 1097, 1095, 1, 0, 0, 0, 1098,
+ 1090, 1, 0, 0, 0, 1098, 1099, 1, 0, 0, 0, 1099, 1100, 1, 0, 0, 0, 1100,
+ 1101, 5, 4, 0, 0, 1101, 1103, 1, 0, 0, 0, 1102, 1064, 1, 0, 0, 0, 1102,
+ 1080, 1, 0, 0, 0, 1102, 1086, 1, 0, 0, 0, 1103, 1125, 1, 0, 0, 0, 1104,
+ 1105, 10, 7, 0, 0, 1105, 1106, 5, 47, 0, 0, 1106, 1125, 3, 192, 96, 0,
+ 1107, 1109, 10, 6, 0, 0, 1108, 1110, 5, 104, 0, 0, 1109, 1108, 1, 0, 0,
+ 0, 1109, 1110, 1, 0, 0, 0, 1110, 1111, 1, 0, 0, 0, 1111, 1112, 7, 14, 0,
+ 0, 1112, 1115, 3, 68, 34, 0, 1113, 1114, 5, 69, 0, 0, 1114, 1116, 3, 68,
+ 34, 0, 1115, 1113, 1, 0, 0, 0, 1115, 1116, 1, 0, 0, 0, 1116, 1125, 1, 0,
+ 0, 0, 1117, 1122, 10, 5, 0, 0, 1118, 1123, 5, 95, 0, 0, 1119, 1123, 5,
+ 105, 0, 0, 1120, 1121, 5, 104, 0, 0, 1121, 1123, 5, 106, 0, 0, 1122, 1118,
+ 1, 0, 0, 0, 1122, 1119, 1, 0, 0, 0, 1122, 1120, 1, 0, 0, 0, 1123, 1125,
+ 1, 0, 0, 0, 1124, 1007, 1, 0, 0, 0, 1124, 1010, 1, 0, 0, 0, 1124, 1013,
+ 1, 0, 0, 0, 1124, 1016, 1, 0, 0, 0, 1124, 1019, 1, 0, 0, 0, 1124, 1022,
+ 1, 0, 0, 0, 1124, 1025, 1, 0, 0, 0, 1124, 1044, 1, 0, 0, 0, 1124, 1047,
+ 1, 0, 0, 0, 1124, 1050, 1, 0, 0, 0, 1124, 1059, 1, 0, 0, 0, 1124, 1104,
+ 1, 0, 0, 0, 1124, 1107, 1, 0, 0, 0, 1124, 1117, 1, 0, 0, 0, 1125, 1128,
+ 1, 0, 0, 0, 1126, 1124, 1, 0, 0, 0, 1126, 1127, 1, 0, 0, 0, 1127, 69, 1,
+ 0, 0, 0, 1128, 1126, 1, 0, 0, 0, 1129, 1130, 5, 117, 0, 0, 1130, 1135,
+ 5, 3, 0, 0, 1131, 1136, 5, 83, 0, 0, 1132, 1133, 7, 15, 0, 0, 1133, 1134,
+ 5, 5, 0, 0, 1134, 1136, 3, 168, 84, 0, 1135, 1131, 1, 0, 0, 0, 1135, 1132,
+ 1, 0, 0, 0, 1136, 1137, 1, 0, 0, 0, 1137, 1138, 5, 4, 0, 0, 1138, 71, 1,
+ 0, 0, 0, 1139, 1140, 7, 16, 0, 0, 1140, 73, 1, 0, 0, 0, 1141, 1143, 3,
+ 50, 25, 0, 1142, 1141, 1, 0, 0, 0, 1142, 1143, 1, 0, 0, 0, 1143, 1149,
+ 1, 0, 0, 0, 1144, 1150, 5, 90, 0, 0, 1145, 1150, 5, 124, 0, 0, 1146, 1147,
+ 5, 90, 0, 0, 1147, 1148, 5, 110, 0, 0, 1148, 1150, 7, 8, 0, 0, 1149, 1144,
+ 1, 0, 0, 0, 1149, 1145, 1, 0, 0, 0, 1149, 1146, 1, 0, 0, 0, 1150, 1151,
+ 1, 0, 0, 0, 1151, 1155, 5, 93, 0, 0, 1152, 1153, 3, 182, 91, 0, 1153, 1154,
+ 5, 2, 0, 0, 1154, 1156, 1, 0, 0, 0, 1155, 1152, 1, 0, 0, 0, 1155, 1156,
+ 1, 0, 0, 0, 1156, 1157, 1, 0, 0, 0, 1157, 1160, 3, 184, 92, 0, 1158, 1159,
+ 5, 35, 0, 0, 1159, 1161, 3, 208, 104, 0, 1160, 1158, 1, 0, 0, 0, 1160,
+ 1161, 1, 0, 0, 0, 1161, 1173, 1, 0, 0, 0, 1162, 1163, 5, 3, 0, 0, 1163,
+ 1168, 3, 190, 95, 0, 1164, 1165, 5, 5, 0, 0, 1165, 1167, 3, 190, 95, 0,
+ 1166, 1164, 1, 0, 0, 0, 1167, 1170, 1, 0, 0, 0, 1168, 1166, 1, 0, 0, 0,
+ 1168, 1169, 1, 0, 0, 0, 1169, 1171, 1, 0, 0, 0, 1170, 1168, 1, 0, 0, 0,
+ 1171, 1172, 5, 4, 0, 0, 1172, 1174, 1, 0, 0, 0, 1173, 1162, 1, 0, 0, 0,
+ 1173, 1174, 1, 0, 0, 0, 1174, 1206, 1, 0, 0, 0, 1175, 1176, 5, 147, 0,
+ 0, 1176, 1177, 5, 3, 0, 0, 1177, 1182, 3, 68, 34, 0, 1178, 1179, 5, 5,
+ 0, 0, 1179, 1181, 3, 68, 34, 0, 1180, 1178, 1, 0, 0, 0, 1181, 1184, 1,
+ 0, 0, 0, 1182, 1180, 1, 0, 0, 0, 1182, 1183, 1, 0, 0, 0, 1183, 1185, 1,
+ 0, 0, 0, 1184, 1182, 1, 0, 0, 0, 1185, 1200, 5, 4, 0, 0, 1186, 1187, 5,
+ 5, 0, 0, 1187, 1188, 5, 3, 0, 0, 1188, 1193, 3, 68, 34, 0, 1189, 1190,
+ 5, 5, 0, 0, 1190, 1192, 3, 68, 34, 0, 1191, 1189, 1, 0, 0, 0, 1192, 1195,
+ 1, 0, 0, 0, 1193, 1191, 1, 0, 0, 0, 1193, 1194, 1, 0, 0, 0, 1194, 1196,
+ 1, 0, 0, 0, 1195, 1193, 1, 0, 0, 0, 1196, 1197, 5, 4, 0, 0, 1197, 1199,
+ 1, 0, 0, 0, 1198, 1186, 1, 0, 0, 0, 1199, 1202, 1, 0, 0, 0, 1200, 1198,
+ 1, 0, 0, 0, 1200, 1201, 1, 0, 0, 0, 1201, 1207, 1, 0, 0, 0, 1202, 1200,
+ 1, 0, 0, 0, 1203, 1207, 3, 84, 42, 0, 1204, 1205, 5, 58, 0, 0, 1205, 1207,
+ 5, 147, 0, 0, 1206, 1175, 1, 0, 0, 0, 1206, 1203, 1, 0, 0, 0, 1206, 1204,
+ 1, 0, 0, 0, 1207, 1209, 1, 0, 0, 0, 1208, 1210, 3, 76, 38, 0, 1209, 1208,
+ 1, 0, 0, 0, 1209, 1210, 1, 0, 0, 0, 1210, 1212, 1, 0, 0, 0, 1211, 1213,
+ 3, 58, 29, 0, 1212, 1211, 1, 0, 0, 0, 1212, 1213, 1, 0, 0, 0, 1213, 75,
+ 1, 0, 0, 0, 1214, 1215, 5, 109, 0, 0, 1215, 1230, 5, 50, 0, 0, 1216, 1217,
+ 5, 3, 0, 0, 1217, 1222, 3, 24, 12, 0, 1218, 1219, 5, 5, 0, 0, 1219, 1221,
+ 3, 24, 12, 0, 1220, 1218, 1, 0, 0, 0, 1221, 1224, 1, 0, 0, 0, 1222, 1220,
+ 1, 0, 0, 0, 1222, 1223, 1, 0, 0, 0, 1223, 1225, 1, 0, 0, 0, 1224, 1222,
+ 1, 0, 0, 0, 1225, 1228, 5, 4, 0, 0, 1226, 1227, 5, 151, 0, 0, 1227, 1229,
+ 3, 68, 34, 0, 1228, 1226, 1, 0, 0, 0, 1228, 1229, 1, 0, 0, 0, 1229, 1231,
+ 1, 0, 0, 0, 1230, 1216, 1, 0, 0, 0, 1230, 1231, 1, 0, 0, 0, 1231, 1232,
+ 1, 0, 0, 0, 1232, 1259, 5, 186, 0, 0, 1233, 1260, 5, 187, 0, 0, 1234, 1235,
+ 5, 144, 0, 0, 1235, 1238, 5, 133, 0, 0, 1236, 1239, 3, 190, 95, 0, 1237,
+ 1239, 3, 108, 54, 0, 1238, 1236, 1, 0, 0, 0, 1238, 1237, 1, 0, 0, 0, 1239,
+ 1240, 1, 0, 0, 0, 1240, 1241, 5, 6, 0, 0, 1241, 1252, 3, 68, 34, 0, 1242,
+ 1245, 5, 5, 0, 0, 1243, 1246, 3, 190, 95, 0, 1244, 1246, 3, 108, 54, 0,
+ 1245, 1243, 1, 0, 0, 0, 1245, 1244, 1, 0, 0, 0, 1246, 1247, 1, 0, 0, 0,
+ 1247, 1248, 5, 6, 0, 0, 1248, 1249, 3, 68, 34, 0, 1249, 1251, 1, 0, 0,
+ 0, 1250, 1242, 1, 0, 0, 0, 1251, 1254, 1, 0, 0, 0, 1252, 1250, 1, 0, 0,
+ 0, 1252, 1253, 1, 0, 0, 0, 1253, 1257, 1, 0, 0, 0, 1254, 1252, 1, 0, 0,
+ 0, 1255, 1256, 5, 151, 0, 0, 1256, 1258, 3, 68, 34, 0, 1257, 1255, 1, 0,
+ 0, 0, 1257, 1258, 1, 0, 0, 0, 1258, 1260, 1, 0, 0, 0, 1259, 1233, 1, 0,
+ 0, 0, 1259, 1234, 1, 0, 0, 0, 1260, 77, 1, 0, 0, 0, 1261, 1265, 5, 114,
+ 0, 0, 1262, 1263, 3, 182, 91, 0, 1263, 1264, 5, 2, 0, 0, 1264, 1266, 1,
+ 0, 0, 0, 1265, 1262, 1, 0, 0, 0, 1265, 1266, 1, 0, 0, 0, 1266, 1267, 1,
+ 0, 0, 0, 1267, 1274, 3, 204, 102, 0, 1268, 1269, 5, 6, 0, 0, 1269, 1275,
+ 3, 80, 40, 0, 1270, 1271, 5, 3, 0, 0, 1271, 1272, 3, 80, 40, 0, 1272, 1273,
+ 5, 4, 0, 0, 1273, 1275, 1, 0, 0, 0, 1274, 1268, 1, 0, 0, 0, 1274, 1270,
+ 1, 0, 0, 0, 1274, 1275, 1, 0, 0, 0, 1275, 79, 1, 0, 0, 0, 1276, 1280, 3,
+ 36, 18, 0, 1277, 1280, 3, 176, 88, 0, 1278, 1280, 5, 192, 0, 0, 1279, 1276,
+ 1, 0, 0, 0, 1279, 1277, 1, 0, 0, 0, 1279, 1278, 1, 0, 0, 0, 1280, 81, 1,
+ 0, 0, 0, 1281, 1292, 5, 121, 0, 0, 1282, 1293, 3, 192, 96, 0, 1283, 1284,
+ 3, 182, 91, 0, 1284, 1285, 5, 2, 0, 0, 1285, 1287, 1, 0, 0, 0, 1286, 1283,
+ 1, 0, 0, 0, 1286, 1287, 1, 0, 0, 0, 1287, 1290, 1, 0, 0, 0, 1288, 1291,
+ 3, 184, 92, 0, 1289, 1291, 3, 196, 98, 0, 1290, 1288, 1, 0, 0, 0, 1290,
+ 1289, 1, 0, 0, 0, 1291, 1293, 1, 0, 0, 0, 1292, 1282, 1, 0, 0, 0, 1292,
+ 1286, 1, 0, 0, 0, 1292, 1293, 1, 0, 0, 0, 1293, 83, 1, 0, 0, 0, 1294, 1296,
+ 3, 132, 66, 0, 1295, 1294, 1, 0, 0, 0, 1295, 1296, 1, 0, 0, 0, 1296, 1297,
+ 1, 0, 0, 0, 1297, 1303, 3, 88, 44, 0, 1298, 1299, 3, 104, 52, 0, 1299,
+ 1300, 3, 88, 44, 0, 1300, 1302, 1, 0, 0, 0, 1301, 1298, 1, 0, 0, 0, 1302,
+ 1305, 1, 0, 0, 0, 1303, 1301, 1, 0, 0, 0, 1303, 1304, 1, 0, 0, 0, 1304,
+ 1307, 1, 0, 0, 0, 1305, 1303, 1, 0, 0, 0, 1306, 1308, 3, 134, 67, 0, 1307,
+ 1306, 1, 0, 0, 0, 1307, 1308, 1, 0, 0, 0, 1308, 1310, 1, 0, 0, 0, 1309,
+ 1311, 3, 136, 68, 0, 1310, 1309, 1, 0, 0, 0, 1310, 1311, 1, 0, 0, 0, 1311,
+ 85, 1, 0, 0, 0, 1312, 1319, 3, 96, 48, 0, 1313, 1314, 3, 100, 50, 0, 1314,
+ 1315, 3, 96, 48, 0, 1315, 1316, 3, 102, 51, 0, 1316, 1318, 1, 0, 0, 0,
+ 1317, 1313, 1, 0, 0, 0, 1318, 1321, 1, 0, 0, 0, 1319, 1317, 1, 0, 0, 0,
+ 1319, 1320, 1, 0, 0, 0, 1320, 87, 1, 0, 0, 0, 1321, 1319, 1, 0, 0, 0, 1322,
+ 1324, 5, 132, 0, 0, 1323, 1325, 7, 17, 0, 0, 1324, 1323, 1, 0, 0, 0, 1324,
+ 1325, 1, 0, 0, 0, 1325, 1326, 1, 0, 0, 0, 1326, 1331, 3, 98, 49, 0, 1327,
+ 1328, 5, 5, 0, 0, 1328, 1330, 3, 98, 49, 0, 1329, 1327, 1, 0, 0, 0, 1330,
+ 1333, 1, 0, 0, 0, 1331, 1329, 1, 0, 0, 0, 1331, 1332, 1, 0, 0, 0, 1332,
+ 1346, 1, 0, 0, 0, 1333, 1331, 1, 0, 0, 0, 1334, 1344, 5, 77, 0, 0, 1335,
+ 1340, 3, 96, 48, 0, 1336, 1337, 5, 5, 0, 0, 1337, 1339, 3, 96, 48, 0, 1338,
+ 1336, 1, 0, 0, 0, 1339, 1342, 1, 0, 0, 0, 1340, 1338, 1, 0, 0, 0, 1340,
+ 1341, 1, 0, 0, 0, 1341, 1345, 1, 0, 0, 0, 1342, 1340, 1, 0, 0, 0, 1343,
+ 1345, 3, 86, 43, 0, 1344, 1335, 1, 0, 0, 0, 1344, 1343, 1, 0, 0, 0, 1345,
+ 1347, 1, 0, 0, 0, 1346, 1334, 1, 0, 0, 0, 1346, 1347, 1, 0, 0, 0, 1347,
+ 1350, 1, 0, 0, 0, 1348, 1349, 5, 151, 0, 0, 1349, 1351, 3, 68, 34, 0, 1350,
+ 1348, 1, 0, 0, 0, 1350, 1351, 1, 0, 0, 0, 1351, 1366, 1, 0, 0, 0, 1352,
+ 1353, 5, 80, 0, 0, 1353, 1354, 5, 42, 0, 0, 1354, 1359, 3, 68, 34, 0, 1355,
+ 1356, 5, 5, 0, 0, 1356, 1358, 3, 68, 34, 0, 1357, 1355, 1, 0, 0, 0, 1358,
+ 1361, 1, 0, 0, 0, 1359, 1357, 1, 0, 0, 0, 1359, 1360, 1, 0, 0, 0, 1360,
+ 1364, 1, 0, 0, 0, 1361, 1359, 1, 0, 0, 0, 1362, 1363, 5, 81, 0, 0, 1363,
+ 1365, 3, 68, 34, 0, 1364, 1362, 1, 0, 0, 0, 1364, 1365, 1, 0, 0, 0, 1365,
+ 1367, 1, 0, 0, 0, 1366, 1352, 1, 0, 0, 0, 1366, 1367, 1, 0, 0, 0, 1367,
+ 1382, 1, 0, 0, 0, 1368, 1369, 5, 177, 0, 0, 1369, 1370, 3, 214, 107, 0,
+ 1370, 1371, 5, 35, 0, 0, 1371, 1379, 3, 118, 59, 0, 1372, 1373, 5, 5, 0,
+ 0, 1373, 1374, 3, 214, 107, 0, 1374, 1375, 5, 35, 0, 0, 1375, 1376, 3,
+ 118, 59, 0, 1376, 1378, 1, 0, 0, 0, 1377, 1372, 1, 0, 0, 0, 1378, 1381,
+ 1, 0, 0, 0, 1379, 1377, 1, 0, 0, 0, 1379, 1380, 1, 0, 0, 0, 1380, 1383,
+ 1, 0, 0, 0, 1381, 1379, 1, 0, 0, 0, 1382, 1368, 1, 0, 0, 0, 1382, 1383,
+ 1, 0, 0, 0, 1383, 1413, 1, 0, 0, 0, 1384, 1385, 5, 147, 0, 0, 1385, 1386,
+ 5, 3, 0, 0, 1386, 1391, 3, 68, 34, 0, 1387, 1388, 5, 5, 0, 0, 1388, 1390,
+ 3, 68, 34, 0, 1389, 1387, 1, 0, 0, 0, 1390, 1393, 1, 0, 0, 0, 1391, 1389,
+ 1, 0, 0, 0, 1391, 1392, 1, 0, 0, 0, 1392, 1394, 1, 0, 0, 0, 1393, 1391,
+ 1, 0, 0, 0, 1394, 1409, 5, 4, 0, 0, 1395, 1396, 5, 5, 0, 0, 1396, 1397,
+ 5, 3, 0, 0, 1397, 1402, 3, 68, 34, 0, 1398, 1399, 5, 5, 0, 0, 1399, 1401,
+ 3, 68, 34, 0, 1400, 1398, 1, 0, 0, 0, 1401, 1404, 1, 0, 0, 0, 1402, 1400,
+ 1, 0, 0, 0, 1402, 1403, 1, 0, 0, 0, 1403, 1405, 1, 0, 0, 0, 1404, 1402,
+ 1, 0, 0, 0, 1405, 1406, 5, 4, 0, 0, 1406, 1408, 1, 0, 0, 0, 1407, 1395,
+ 1, 0, 0, 0, 1408, 1411, 1, 0, 0, 0, 1409, 1407, 1, 0, 0, 0, 1409, 1410,
+ 1, 0, 0, 0, 1410, 1413, 1, 0, 0, 0, 1411, 1409, 1, 0, 0, 0, 1412, 1322,
+ 1, 0, 0, 0, 1412, 1384, 1, 0, 0, 0, 1413, 89, 1, 0, 0, 0, 1414, 1415, 3,
+ 84, 42, 0, 1415, 91, 1, 0, 0, 0, 1416, 1418, 3, 132, 66, 0, 1417, 1416,
+ 1, 0, 0, 0, 1417, 1418, 1, 0, 0, 0, 1418, 1419, 1, 0, 0, 0, 1419, 1421,
+ 3, 88, 44, 0, 1420, 1422, 3, 134, 67, 0, 1421, 1420, 1, 0, 0, 0, 1421,
+ 1422, 1, 0, 0, 0, 1422, 1424, 1, 0, 0, 0, 1423, 1425, 3, 136, 68, 0, 1424,
+ 1423, 1, 0, 0, 0, 1424, 1425, 1, 0, 0, 0, 1425, 93, 1, 0, 0, 0, 1426, 1428,
+ 3, 132, 66, 0, 1427, 1426, 1, 0, 0, 0, 1427, 1428, 1, 0, 0, 0, 1428, 1429,
+ 1, 0, 0, 0, 1429, 1439, 3, 88, 44, 0, 1430, 1432, 5, 142, 0, 0, 1431, 1433,
+ 5, 31, 0, 0, 1432, 1431, 1, 0, 0, 0, 1432, 1433, 1, 0, 0, 0, 1433, 1437,
+ 1, 0, 0, 0, 1434, 1437, 5, 92, 0, 0, 1435, 1437, 5, 70, 0, 0, 1436, 1430,
+ 1, 0, 0, 0, 1436, 1434, 1, 0, 0, 0, 1436, 1435, 1, 0, 0, 0, 1437, 1438,
+ 1, 0, 0, 0, 1438, 1440, 3, 88, 44, 0, 1439, 1436, 1, 0, 0, 0, 1440, 1441,
+ 1, 0, 0, 0, 1441, 1439, 1, 0, 0, 0, 1441, 1442, 1, 0, 0, 0, 1442, 1444,
+ 1, 0, 0, 0, 1443, 1445, 3, 134, 67, 0, 1444, 1443, 1, 0, 0, 0, 1444, 1445,
+ 1, 0, 0, 0, 1445, 1447, 1, 0, 0, 0, 1446, 1448, 3, 136, 68, 0, 1447, 1446,
+ 1, 0, 0, 0, 1447, 1448, 1, 0, 0, 0, 1448, 95, 1, 0, 0, 0, 1449, 1450, 3,
+ 182, 91, 0, 1450, 1451, 5, 2, 0, 0, 1451, 1453, 1, 0, 0, 0, 1452, 1449,
+ 1, 0, 0, 0, 1452, 1453, 1, 0, 0, 0, 1453, 1454, 1, 0, 0, 0, 1454, 1459,
+ 3, 184, 92, 0, 1455, 1457, 5, 35, 0, 0, 1456, 1455, 1, 0, 0, 0, 1456, 1457,
+ 1, 0, 0, 0, 1457, 1458, 1, 0, 0, 0, 1458, 1460, 3, 208, 104, 0, 1459, 1456,
+ 1, 0, 0, 0, 1459, 1460, 1, 0, 0, 0, 1460, 1466, 1, 0, 0, 0, 1461, 1462,
+ 5, 87, 0, 0, 1462, 1463, 5, 42, 0, 0, 1463, 1467, 3, 196, 98, 0, 1464,
+ 1465, 5, 104, 0, 0, 1465, 1467, 5, 87, 0, 0, 1466, 1461, 1, 0, 0, 0, 1466,
+ 1464, 1, 0, 0, 0, 1466, 1467, 1, 0, 0, 0, 1467, 1578, 1, 0, 0, 0, 1468,
+ 1469, 3, 182, 91, 0, 1469, 1470, 5, 2, 0, 0, 1470, 1472, 1, 0, 0, 0, 1471,
+ 1468, 1, 0, 0, 0, 1471, 1472, 1, 0, 0, 0, 1472, 1473, 1, 0, 0, 0, 1473,
+ 1474, 3, 226, 113, 0, 1474, 1475, 5, 3, 0, 0, 1475, 1480, 3, 68, 34, 0,
+ 1476, 1477, 5, 5, 0, 0, 1477, 1479, 3, 68, 34, 0, 1478, 1476, 1, 0, 0,
+ 0, 1479, 1482, 1, 0, 0, 0, 1480, 1478, 1, 0, 0, 0, 1480, 1481, 1, 0, 0,
+ 0, 1481, 1483, 1, 0, 0, 0, 1482, 1480, 1, 0, 0, 0, 1483, 1488, 5, 4, 0,
+ 0, 1484, 1486, 5, 35, 0, 0, 1485, 1484, 1, 0, 0, 0, 1485, 1486, 1, 0, 0,
+ 0, 1486, 1487, 1, 0, 0, 0, 1487, 1489, 3, 208, 104, 0, 1488, 1485, 1, 0,
+ 0, 0, 1488, 1489, 1, 0, 0, 0, 1489, 1578, 1, 0, 0, 0, 1490, 1500, 5, 3,
+ 0, 0, 1491, 1496, 3, 96, 48, 0, 1492, 1493, 5, 5, 0, 0, 1493, 1495, 3,
+ 96, 48, 0, 1494, 1492, 1, 0, 0, 0, 1495, 1498, 1, 0, 0, 0, 1496, 1494,
+ 1, 0, 0, 0, 1496, 1497, 1, 0, 0, 0, 1497, 1501, 1, 0, 0, 0, 1498, 1496,
+ 1, 0, 0, 0, 1499, 1501, 3, 86, 43, 0, 1500, 1491, 1, 0, 0, 0, 1500, 1499,
+ 1, 0, 0, 0, 1501, 1502, 1, 0, 0, 0, 1502, 1503, 5, 4, 0, 0, 1503, 1578,
+ 1, 0, 0, 0, 1504, 1505, 5, 3, 0, 0, 1505, 1506, 3, 84, 42, 0, 1506, 1511,
+ 5, 4, 0, 0, 1507, 1509, 5, 35, 0, 0, 1508, 1507, 1, 0, 0, 0, 1508, 1509,
+ 1, 0, 0, 0, 1509, 1510, 1, 0, 0, 0, 1510, 1512, 3, 208, 104, 0, 1511, 1508,
+ 1, 0, 0, 0, 1511, 1512, 1, 0, 0, 0, 1512, 1578, 1, 0, 0, 0, 1513, 1514,
+ 3, 182, 91, 0, 1514, 1515, 5, 2, 0, 0, 1515, 1517, 1, 0, 0, 0, 1516, 1513,
+ 1, 0, 0, 0, 1516, 1517, 1, 0, 0, 0, 1517, 1518, 1, 0, 0, 0, 1518, 1523,
+ 3, 184, 92, 0, 1519, 1521, 5, 35, 0, 0, 1520, 1519, 1, 0, 0, 0, 1520, 1521,
+ 1, 0, 0, 0, 1521, 1522, 1, 0, 0, 0, 1522, 1524, 3, 210, 105, 0, 1523, 1520,
+ 1, 0, 0, 0, 1523, 1524, 1, 0, 0, 0, 1524, 1530, 1, 0, 0, 0, 1525, 1526,
+ 5, 87, 0, 0, 1526, 1527, 5, 42, 0, 0, 1527, 1531, 3, 196, 98, 0, 1528,
+ 1529, 5, 104, 0, 0, 1529, 1531, 5, 87, 0, 0, 1530, 1525, 1, 0, 0, 0, 1530,
+ 1528, 1, 0, 0, 0, 1530, 1531, 1, 0, 0, 0, 1531, 1578, 1, 0, 0, 0, 1532,
+ 1533, 3, 182, 91, 0, 1533, 1534, 5, 2, 0, 0, 1534, 1536, 1, 0, 0, 0, 1535,
+ 1532, 1, 0, 0, 0, 1535, 1536, 1, 0, 0, 0, 1536, 1537, 1, 0, 0, 0, 1537,
+ 1538, 3, 226, 113, 0, 1538, 1539, 5, 3, 0, 0, 1539, 1544, 3, 68, 34, 0,
+ 1540, 1541, 5, 5, 0, 0, 1541, 1543, 3, 68, 34, 0, 1542, 1540, 1, 0, 0,
+ 0, 1543, 1546, 1, 0, 0, 0, 1544, 1542, 1, 0, 0, 0, 1544, 1545, 1, 0, 0,
+ 0, 1545, 1547, 1, 0, 0, 0, 1546, 1544, 1, 0, 0, 0, 1547, 1552, 5, 4, 0,
+ 0, 1548, 1550, 5, 35, 0, 0, 1549, 1548, 1, 0, 0, 0, 1549, 1550, 1, 0, 0,
+ 0, 1550, 1551, 1, 0, 0, 0, 1551, 1553, 3, 210, 105, 0, 1552, 1549, 1, 0,
+ 0, 0, 1552, 1553, 1, 0, 0, 0, 1553, 1578, 1, 0, 0, 0, 1554, 1564, 5, 3,
+ 0, 0, 1555, 1560, 3, 96, 48, 0, 1556, 1557, 5, 5, 0, 0, 1557, 1559, 3,
+ 96, 48, 0, 1558, 1556, 1, 0, 0, 0, 1559, 1562, 1, 0, 0, 0, 1560, 1558,
+ 1, 0, 0, 0, 1560, 1561, 1, 0, 0, 0, 1561, 1565, 1, 0, 0, 0, 1562, 1560,
+ 1, 0, 0, 0, 1563, 1565, 3, 86, 43, 0, 1564, 1555, 1, 0, 0, 0, 1564, 1563,
+ 1, 0, 0, 0, 1565, 1566, 1, 0, 0, 0, 1566, 1567, 5, 4, 0, 0, 1567, 1578,
+ 1, 0, 0, 0, 1568, 1569, 5, 3, 0, 0, 1569, 1570, 3, 84, 42, 0, 1570, 1575,
+ 5, 4, 0, 0, 1571, 1573, 5, 35, 0, 0, 1572, 1571, 1, 0, 0, 0, 1572, 1573,
+ 1, 0, 0, 0, 1573, 1574, 1, 0, 0, 0, 1574, 1576, 3, 210, 105, 0, 1575, 1572,
+ 1, 0, 0, 0, 1575, 1576, 1, 0, 0, 0, 1576, 1578, 1, 0, 0, 0, 1577, 1452,
+ 1, 0, 0, 0, 1577, 1471, 1, 0, 0, 0, 1577, 1490, 1, 0, 0, 0, 1577, 1504,
+ 1, 0, 0, 0, 1577, 1516, 1, 0, 0, 0, 1577, 1535, 1, 0, 0, 0, 1577, 1554,
+ 1, 0, 0, 0, 1577, 1568, 1, 0, 0, 0, 1578, 97, 1, 0, 0, 0, 1579, 1592, 5,
+ 7, 0, 0, 1580, 1581, 3, 184, 92, 0, 1581, 1582, 5, 2, 0, 0, 1582, 1583,
+ 5, 7, 0, 0, 1583, 1592, 1, 0, 0, 0, 1584, 1589, 3, 68, 34, 0, 1585, 1587,
+ 5, 35, 0, 0, 1586, 1585, 1, 0, 0, 0, 1586, 1587, 1, 0, 0, 0, 1587, 1588,
+ 1, 0, 0, 0, 1588, 1590, 3, 172, 86, 0, 1589, 1586, 1, 0, 0, 0, 1589, 1590,
+ 1, 0, 0, 0, 1590, 1592, 1, 0, 0, 0, 1591, 1579, 1, 0, 0, 0, 1591, 1580,
+ 1, 0, 0, 0, 1591, 1584, 1, 0, 0, 0, 1592, 99, 1, 0, 0, 0, 1593, 1608, 5,
+ 5, 0, 0, 1594, 1596, 5, 102, 0, 0, 1595, 1594, 1, 0, 0, 0, 1595, 1596,
+ 1, 0, 0, 0, 1596, 1602, 1, 0, 0, 0, 1597, 1599, 7, 18, 0, 0, 1598, 1600,
+ 5, 112, 0, 0, 1599, 1598, 1, 0, 0, 0, 1599, 1600, 1, 0, 0, 0, 1600, 1603,
+ 1, 0, 0, 0, 1601, 1603, 5, 89, 0, 0, 1602, 1597, 1, 0, 0, 0, 1602, 1601,
+ 1, 0, 0, 0, 1602, 1603, 1, 0, 0, 0, 1603, 1604, 1, 0, 0, 0, 1604, 1608,
+ 5, 96, 0, 0, 1605, 1606, 5, 53, 0, 0, 1606, 1608, 5, 96, 0, 0, 1607, 1593,
+ 1, 0, 0, 0, 1607, 1595, 1, 0, 0, 0, 1607, 1605, 1, 0, 0, 0, 1608, 101,
+ 1, 0, 0, 0, 1609, 1610, 5, 109, 0, 0, 1610, 1624, 3, 68, 34, 0, 1611, 1612,
+ 5, 145, 0, 0, 1612, 1613, 5, 3, 0, 0, 1613, 1618, 3, 190, 95, 0, 1614,
+ 1615, 5, 5, 0, 0, 1615, 1617, 3, 190, 95, 0, 1616, 1614, 1, 0, 0, 0, 1617,
+ 1620, 1, 0, 0, 0, 1618, 1616, 1, 0, 0, 0, 1618, 1619, 1, 0, 0, 0, 1619,
+ 1621, 1, 0, 0, 0, 1620, 1618, 1, 0, 0, 0, 1621, 1622, 5, 4, 0, 0, 1622,
+ 1624, 1, 0, 0, 0, 1623, 1609, 1, 0, 0, 0, 1623, 1611, 1, 0, 0, 0, 1623,
+ 1624, 1, 0, 0, 0, 1624, 103, 1, 0, 0, 0, 1625, 1627, 5, 142, 0, 0, 1626,
+ 1628, 5, 31, 0, 0, 1627, 1626, 1, 0, 0, 0, 1627, 1628, 1, 0, 0, 0, 1628,
+ 1632, 1, 0, 0, 0, 1629, 1632, 5, 92, 0, 0, 1630, 1632, 5, 70, 0, 0, 1631,
+ 1625, 1, 0, 0, 0, 1631, 1629, 1, 0, 0, 0, 1631, 1630, 1, 0, 0, 0, 1632,
+ 105, 1, 0, 0, 0, 1633, 1635, 3, 50, 25, 0, 1634, 1633, 1, 0, 0, 0, 1634,
+ 1635, 1, 0, 0, 0, 1635, 1636, 1, 0, 0, 0, 1636, 1639, 5, 144, 0, 0, 1637,
+ 1638, 5, 110, 0, 0, 1638, 1640, 7, 8, 0, 0, 1639, 1637, 1, 0, 0, 0, 1639,
+ 1640, 1, 0, 0, 0, 1640, 1641, 1, 0, 0, 0, 1641, 1642, 3, 112, 56, 0, 1642,
+ 1645, 5, 133, 0, 0, 1643, 1646, 3, 190, 95, 0, 1644, 1646, 3, 108, 54,
+ 0, 1645, 1643, 1, 0, 0, 0, 1645, 1644, 1, 0, 0, 0, 1646, 1647, 1, 0, 0,
+ 0, 1647, 1648, 5, 6, 0, 0, 1648, 1659, 3, 68, 34, 0, 1649, 1652, 5, 5,
+ 0, 0, 1650, 1653, 3, 190, 95, 0, 1651, 1653, 3, 108, 54, 0, 1652, 1650,
+ 1, 0, 0, 0, 1652, 1651, 1, 0, 0, 0, 1653, 1654, 1, 0, 0, 0, 1654, 1655,
+ 5, 6, 0, 0, 1655, 1656, 3, 68, 34, 0, 1656, 1658, 1, 0, 0, 0, 1657, 1649,
+ 1, 0, 0, 0, 1658, 1661, 1, 0, 0, 0, 1659, 1657, 1, 0, 0, 0, 1659, 1660,
+ 1, 0, 0, 0, 1660, 1664, 1, 0, 0, 0, 1661, 1659, 1, 0, 0, 0, 1662, 1663,
+ 5, 151, 0, 0, 1663, 1665, 3, 68, 34, 0, 1664, 1662, 1, 0, 0, 0, 1664, 1665,
+ 1, 0, 0, 0, 1665, 1667, 1, 0, 0, 0, 1666, 1668, 3, 58, 29, 0, 1667, 1666,
+ 1, 0, 0, 0, 1667, 1668, 1, 0, 0, 0, 1668, 107, 1, 0, 0, 0, 1669, 1670,
+ 5, 3, 0, 0, 1670, 1675, 3, 190, 95, 0, 1671, 1672, 5, 5, 0, 0, 1672, 1674,
+ 3, 190, 95, 0, 1673, 1671, 1, 0, 0, 0, 1674, 1677, 1, 0, 0, 0, 1675, 1673,
+ 1, 0, 0, 0, 1675, 1676, 1, 0, 0, 0, 1676, 1678, 1, 0, 0, 0, 1677, 1675,
+ 1, 0, 0, 0, 1678, 1679, 5, 4, 0, 0, 1679, 109, 1, 0, 0, 0, 1680, 1682,
+ 3, 50, 25, 0, 1681, 1680, 1, 0, 0, 0, 1681, 1682, 1, 0, 0, 0, 1682, 1683,
+ 1, 0, 0, 0, 1683, 1686, 5, 144, 0, 0, 1684, 1685, 5, 110, 0, 0, 1685, 1687,
+ 7, 8, 0, 0, 1686, 1684, 1, 0, 0, 0, 1686, 1687, 1, 0, 0, 0, 1687, 1688,
+ 1, 0, 0, 0, 1688, 1689, 3, 112, 56, 0, 1689, 1692, 5, 133, 0, 0, 1690,
+ 1693, 3, 190, 95, 0, 1691, 1693, 3, 108, 54, 0, 1692, 1690, 1, 0, 0, 0,
+ 1692, 1691, 1, 0, 0, 0, 1693, 1694, 1, 0, 0, 0, 1694, 1695, 5, 6, 0, 0,
+ 1695, 1706, 3, 68, 34, 0, 1696, 1699, 5, 5, 0, 0, 1697, 1700, 3, 190, 95,
+ 0, 1698, 1700, 3, 108, 54, 0, 1699, 1697, 1, 0, 0, 0, 1699, 1698, 1, 0,
+ 0, 0, 1700, 1701, 1, 0, 0, 0, 1701, 1702, 5, 6, 0, 0, 1702, 1703, 3, 68,
+ 34, 0, 1703, 1705, 1, 0, 0, 0, 1704, 1696, 1, 0, 0, 0, 1705, 1708, 1, 0,
+ 0, 0, 1706, 1704, 1, 0, 0, 0, 1706, 1707, 1, 0, 0, 0, 1707, 1711, 1, 0,
+ 0, 0, 1708, 1706, 1, 0, 0, 0, 1709, 1710, 5, 151, 0, 0, 1710, 1712, 3,
+ 68, 34, 0, 1711, 1709, 1, 0, 0, 0, 1711, 1712, 1, 0, 0, 0, 1712, 1717,
+ 1, 0, 0, 0, 1713, 1715, 3, 134, 67, 0, 1714, 1713, 1, 0, 0, 0, 1714, 1715,
+ 1, 0, 0, 0, 1715, 1716, 1, 0, 0, 0, 1716, 1718, 3, 136, 68, 0, 1717, 1714,
+ 1, 0, 0, 0, 1717, 1718, 1, 0, 0, 0, 1718, 111, 1, 0, 0, 0, 1719, 1720,
+ 3, 182, 91, 0, 1720, 1721, 5, 2, 0, 0, 1721, 1723, 1, 0, 0, 0, 1722, 1719,
+ 1, 0, 0, 0, 1722, 1723, 1, 0, 0, 0, 1723, 1724, 1, 0, 0, 0, 1724, 1727,
+ 3, 184, 92, 0, 1725, 1726, 5, 35, 0, 0, 1726, 1728, 3, 216, 108, 0, 1727,
+ 1725, 1, 0, 0, 0, 1727, 1728, 1, 0, 0, 0, 1728, 1734, 1, 0, 0, 0, 1729,
+ 1730, 5, 87, 0, 0, 1730, 1731, 5, 42, 0, 0, 1731, 1735, 3, 196, 98, 0,
+ 1732, 1733, 5, 104, 0, 0, 1733, 1735, 5, 87, 0, 0, 1734, 1729, 1, 0, 0,
+ 0, 1734, 1732, 1, 0, 0, 0, 1734, 1735, 1, 0, 0, 0, 1735, 113, 1, 0, 0,
+ 0, 1736, 1738, 5, 146, 0, 0, 1737, 1739, 3, 182, 91, 0, 1738, 1737, 1,
+ 0, 0, 0, 1738, 1739, 1, 0, 0, 0, 1739, 1742, 1, 0, 0, 0, 1740, 1741, 5,
+ 93, 0, 0, 1741, 1743, 3, 218, 109, 0, 1742, 1740, 1, 0, 0, 0, 1742, 1743,
+ 1, 0, 0, 0, 1743, 115, 1, 0, 0, 0, 1744, 1745, 5, 181, 0, 0, 1745, 1746,
+ 5, 3, 0, 0, 1746, 1747, 5, 151, 0, 0, 1747, 1748, 3, 68, 34, 0, 1748, 1749,
+ 5, 4, 0, 0, 1749, 117, 1, 0, 0, 0, 1750, 1752, 5, 3, 0, 0, 1751, 1753,
+ 3, 220, 110, 0, 1752, 1751, 1, 0, 0, 0, 1752, 1753, 1, 0, 0, 0, 1753, 1764,
+ 1, 0, 0, 0, 1754, 1755, 5, 156, 0, 0, 1755, 1756, 5, 42, 0, 0, 1756, 1761,
+ 3, 68, 34, 0, 1757, 1758, 5, 5, 0, 0, 1758, 1760, 3, 68, 34, 0, 1759, 1757,
+ 1, 0, 0, 0, 1760, 1763, 1, 0, 0, 0, 1761, 1759, 1, 0, 0, 0, 1761, 1762,
+ 1, 0, 0, 0, 1762, 1765, 1, 0, 0, 0, 1763, 1761, 1, 0, 0, 0, 1764, 1754,
+ 1, 0, 0, 0, 1764, 1765, 1, 0, 0, 0, 1765, 1766, 1, 0, 0, 0, 1766, 1767,
+ 5, 111, 0, 0, 1767, 1768, 5, 42, 0, 0, 1768, 1773, 3, 138, 69, 0, 1769,
+ 1770, 5, 5, 0, 0, 1770, 1772, 3, 138, 69, 0, 1771, 1769, 1, 0, 0, 0, 1772,
+ 1775, 1, 0, 0, 0, 1773, 1771, 1, 0, 0, 0, 1773, 1774, 1, 0, 0, 0, 1774,
+ 1777, 1, 0, 0, 0, 1775, 1773, 1, 0, 0, 0, 1776, 1778, 3, 122, 61, 0, 1777,
+ 1776, 1, 0, 0, 0, 1777, 1778, 1, 0, 0, 0, 1778, 1779, 1, 0, 0, 0, 1779,
+ 1780, 5, 4, 0, 0, 1780, 119, 1, 0, 0, 0, 1781, 1815, 5, 155, 0, 0, 1782,
+ 1816, 3, 214, 107, 0, 1783, 1785, 5, 3, 0, 0, 1784, 1786, 3, 220, 110,
+ 0, 1785, 1784, 1, 0, 0, 0, 1785, 1786, 1, 0, 0, 0, 1786, 1797, 1, 0, 0,
+ 0, 1787, 1788, 5, 156, 0, 0, 1788, 1789, 5, 42, 0, 0, 1789, 1794, 3, 68,
+ 34, 0, 1790, 1791, 5, 5, 0, 0, 1791, 1793, 3, 68, 34, 0, 1792, 1790, 1,
+ 0, 0, 0, 1793, 1796, 1, 0, 0, 0, 1794, 1792, 1, 0, 0, 0, 1794, 1795, 1,
+ 0, 0, 0, 1795, 1798, 1, 0, 0, 0, 1796, 1794, 1, 0, 0, 0, 1797, 1787, 1,
+ 0, 0, 0, 1797, 1798, 1, 0, 0, 0, 1798, 1809, 1, 0, 0, 0, 1799, 1800, 5,
+ 111, 0, 0, 1800, 1801, 5, 42, 0, 0, 1801, 1806, 3, 138, 69, 0, 1802, 1803,
+ 5, 5, 0, 0, 1803, 1805, 3, 138, 69, 0, 1804, 1802, 1, 0, 0, 0, 1805, 1808,
+ 1, 0, 0, 0, 1806, 1804, 1, 0, 0, 0, 1806, 1807, 1, 0, 0, 0, 1807, 1810,
+ 1, 0, 0, 0, 1808, 1806, 1, 0, 0, 0, 1809, 1799, 1, 0, 0, 0, 1809, 1810,
+ 1, 0, 0, 0, 1810, 1812, 1, 0, 0, 0, 1811, 1813, 3, 122, 61, 0, 1812, 1811,
+ 1, 0, 0, 0, 1812, 1813, 1, 0, 0, 0, 1813, 1814, 1, 0, 0, 0, 1814, 1816,
+ 5, 4, 0, 0, 1815, 1782, 1, 0, 0, 0, 1815, 1783, 1, 0, 0, 0, 1816, 121,
+ 1, 0, 0, 0, 1817, 1825, 3, 124, 62, 0, 1818, 1819, 5, 183, 0, 0, 1819,
+ 1820, 5, 103, 0, 0, 1820, 1826, 5, 185, 0, 0, 1821, 1822, 5, 160, 0, 0,
+ 1822, 1826, 5, 129, 0, 0, 1823, 1826, 5, 80, 0, 0, 1824, 1826, 5, 184,
+ 0, 0, 1825, 1818, 1, 0, 0, 0, 1825, 1821, 1, 0, 0, 0, 1825, 1823, 1, 0,
+ 0, 0, 1825, 1824, 1, 0, 0, 0, 1825, 1826, 1, 0, 0, 0, 1826, 123, 1, 0,
+ 0, 0, 1827, 1834, 7, 19, 0, 0, 1828, 1835, 3, 146, 73, 0, 1829, 1830, 5,
+ 41, 0, 0, 1830, 1831, 3, 142, 71, 0, 1831, 1832, 5, 34, 0, 0, 1832, 1833,
+ 3, 144, 72, 0, 1833, 1835, 1, 0, 0, 0, 1834, 1828, 1, 0, 0, 0, 1834, 1829,
+ 1, 0, 0, 0, 1835, 125, 1, 0, 0, 0, 1836, 1837, 3, 222, 111, 0, 1837, 1847,
+ 5, 3, 0, 0, 1838, 1843, 3, 68, 34, 0, 1839, 1840, 5, 5, 0, 0, 1840, 1842,
+ 3, 68, 34, 0, 1841, 1839, 1, 0, 0, 0, 1842, 1845, 1, 0, 0, 0, 1843, 1841,
+ 1, 0, 0, 0, 1843, 1844, 1, 0, 0, 0, 1844, 1848, 1, 0, 0, 0, 1845, 1843,
+ 1, 0, 0, 0, 1846, 1848, 5, 7, 0, 0, 1847, 1838, 1, 0, 0, 0, 1847, 1846,
+ 1, 0, 0, 0, 1848, 1849, 1, 0, 0, 0, 1849, 1850, 5, 4, 0, 0, 1850, 127,
+ 1, 0, 0, 0, 1851, 1852, 3, 224, 112, 0, 1852, 1865, 5, 3, 0, 0, 1853, 1855,
+ 5, 64, 0, 0, 1854, 1853, 1, 0, 0, 0, 1854, 1855, 1, 0, 0, 0, 1855, 1856,
+ 1, 0, 0, 0, 1856, 1861, 3, 68, 34, 0, 1857, 1858, 5, 5, 0, 0, 1858, 1860,
+ 3, 68, 34, 0, 1859, 1857, 1, 0, 0, 0, 1860, 1863, 1, 0, 0, 0, 1861, 1859,
+ 1, 0, 0, 0, 1861, 1862, 1, 0, 0, 0, 1862, 1866, 1, 0, 0, 0, 1863, 1861,
+ 1, 0, 0, 0, 1864, 1866, 5, 7, 0, 0, 1865, 1854, 1, 0, 0, 0, 1865, 1864,
+ 1, 0, 0, 0, 1865, 1866, 1, 0, 0, 0, 1866, 1867, 1, 0, 0, 0, 1867, 1869,
+ 5, 4, 0, 0, 1868, 1870, 3, 116, 58, 0, 1869, 1868, 1, 0, 0, 0, 1869, 1870,
+ 1, 0, 0, 0, 1870, 129, 1, 0, 0, 0, 1871, 1872, 3, 148, 74, 0, 1872, 1882,
+ 5, 3, 0, 0, 1873, 1878, 3, 68, 34, 0, 1874, 1875, 5, 5, 0, 0, 1875, 1877,
+ 3, 68, 34, 0, 1876, 1874, 1, 0, 0, 0, 1877, 1880, 1, 0, 0, 0, 1878, 1876,
+ 1, 0, 0, 0, 1878, 1879, 1, 0, 0, 0, 1879, 1883, 1, 0, 0, 0, 1880, 1878,
+ 1, 0, 0, 0, 1881, 1883, 5, 7, 0, 0, 1882, 1873, 1, 0, 0, 0, 1882, 1881,
+ 1, 0, 0, 0, 1882, 1883, 1, 0, 0, 0, 1883, 1884, 1, 0, 0, 0, 1884, 1886,
+ 5, 4, 0, 0, 1885, 1887, 3, 116, 58, 0, 1886, 1885, 1, 0, 0, 0, 1886, 1887,
+ 1, 0, 0, 0, 1887, 1888, 1, 0, 0, 0, 1888, 1891, 5, 155, 0, 0, 1889, 1892,
+ 3, 118, 59, 0, 1890, 1892, 3, 214, 107, 0, 1891, 1889, 1, 0, 0, 0, 1891,
+ 1890, 1, 0, 0, 0, 1892, 131, 1, 0, 0, 0, 1893, 1895, 5, 152, 0, 0, 1894,
+ 1896, 5, 118, 0, 0, 1895, 1894, 1, 0, 0, 0, 1895, 1896, 1, 0, 0, 0, 1896,
+ 1897, 1, 0, 0, 0, 1897, 1902, 3, 56, 28, 0, 1898, 1899, 5, 5, 0, 0, 1899,
+ 1901, 3, 56, 28, 0, 1900, 1898, 1, 0, 0, 0, 1901, 1904, 1, 0, 0, 0, 1902,
+ 1900, 1, 0, 0, 0, 1902, 1903, 1, 0, 0, 0, 1903, 133, 1, 0, 0, 0, 1904,
+ 1902, 1, 0, 0, 0, 1905, 1906, 5, 111, 0, 0, 1906, 1907, 5, 42, 0, 0, 1907,
+ 1912, 3, 138, 69, 0, 1908, 1909, 5, 5, 0, 0, 1909, 1911, 3, 138, 69, 0,
+ 1910, 1908, 1, 0, 0, 0, 1911, 1914, 1, 0, 0, 0, 1912, 1910, 1, 0, 0, 0,
+ 1912, 1913, 1, 0, 0, 0, 1913, 135, 1, 0, 0, 0, 1914, 1912, 1, 0, 0, 0,
+ 1915, 1916, 5, 100, 0, 0, 1916, 1919, 3, 68, 34, 0, 1917, 1918, 7, 20,
+ 0, 0, 1918, 1920, 3, 68, 34, 0, 1919, 1917, 1, 0, 0, 0, 1919, 1920, 1,
+ 0, 0, 0, 1920, 137, 1, 0, 0, 0, 1921, 1924, 3, 68, 34, 0, 1922, 1923, 5,
+ 47, 0, 0, 1923, 1925, 3, 192, 96, 0, 1924, 1922, 1, 0, 0, 0, 1924, 1925,
+ 1, 0, 0, 0, 1925, 1927, 1, 0, 0, 0, 1926, 1928, 3, 140, 70, 0, 1927, 1926,
+ 1, 0, 0, 0, 1927, 1928, 1, 0, 0, 0, 1928, 1931, 1, 0, 0, 0, 1929, 1930,
+ 5, 178, 0, 0, 1930, 1932, 7, 21, 0, 0, 1931, 1929, 1, 0, 0, 0, 1931, 1932,
+ 1, 0, 0, 0, 1932, 139, 1, 0, 0, 0, 1933, 1934, 7, 22, 0, 0, 1934, 141,
+ 1, 0, 0, 0, 1935, 1936, 3, 68, 34, 0, 1936, 1937, 5, 158, 0, 0, 1937, 1946,
+ 1, 0, 0, 0, 1938, 1939, 3, 68, 34, 0, 1939, 1940, 5, 161, 0, 0, 1940, 1946,
+ 1, 0, 0, 0, 1941, 1942, 5, 160, 0, 0, 1942, 1946, 5, 129, 0, 0, 1943, 1944,
+ 5, 159, 0, 0, 1944, 1946, 5, 158, 0, 0, 1945, 1935, 1, 0, 0, 0, 1945, 1938,
+ 1, 0, 0, 0, 1945, 1941, 1, 0, 0, 0, 1945, 1943, 1, 0, 0, 0, 1946, 143,
+ 1, 0, 0, 0, 1947, 1948, 3, 68, 34, 0, 1948, 1949, 5, 158, 0, 0, 1949, 1958,
+ 1, 0, 0, 0, 1950, 1951, 3, 68, 34, 0, 1951, 1952, 5, 161, 0, 0, 1952, 1958,
+ 1, 0, 0, 0, 1953, 1954, 5, 160, 0, 0, 1954, 1958, 5, 129, 0, 0, 1955, 1956,
+ 5, 159, 0, 0, 1956, 1958, 5, 161, 0, 0, 1957, 1947, 1, 0, 0, 0, 1957, 1950,
+ 1, 0, 0, 0, 1957, 1953, 1, 0, 0, 0, 1957, 1955, 1, 0, 0, 0, 1958, 145,
+ 1, 0, 0, 0, 1959, 1960, 3, 68, 34, 0, 1960, 1961, 5, 158, 0, 0, 1961, 1967,
+ 1, 0, 0, 0, 1962, 1963, 5, 159, 0, 0, 1963, 1967, 5, 158, 0, 0, 1964, 1965,
+ 5, 160, 0, 0, 1965, 1967, 5, 129, 0, 0, 1966, 1959, 1, 0, 0, 0, 1966, 1962,
+ 1, 0, 0, 0, 1966, 1964, 1, 0, 0, 0, 1967, 147, 1, 0, 0, 0, 1968, 1969,
+ 7, 23, 0, 0, 1969, 1970, 5, 3, 0, 0, 1970, 1971, 3, 68, 34, 0, 1971, 1972,
+ 5, 4, 0, 0, 1972, 1973, 5, 155, 0, 0, 1973, 1975, 5, 3, 0, 0, 1974, 1976,
+ 3, 154, 77, 0, 1975, 1974, 1, 0, 0, 0, 1975, 1976, 1, 0, 0, 0, 1976, 1977,
+ 1, 0, 0, 0, 1977, 1979, 3, 158, 79, 0, 1978, 1980, 3, 124, 62, 0, 1979,
+ 1978, 1, 0, 0, 0, 1979, 1980, 1, 0, 0, 0, 1980, 1981, 1, 0, 0, 0, 1981,
+ 1982, 5, 4, 0, 0, 1982, 2054, 1, 0, 0, 0, 1983, 1984, 7, 24, 0, 0, 1984,
+ 1985, 5, 3, 0, 0, 1985, 1986, 5, 4, 0, 0, 1986, 1987, 5, 155, 0, 0, 1987,
+ 1989, 5, 3, 0, 0, 1988, 1990, 3, 154, 77, 0, 1989, 1988, 1, 0, 0, 0, 1989,
+ 1990, 1, 0, 0, 0, 1990, 1992, 1, 0, 0, 0, 1991, 1993, 3, 156, 78, 0, 1992,
+ 1991, 1, 0, 0, 0, 1992, 1993, 1, 0, 0, 0, 1993, 1994, 1, 0, 0, 0, 1994,
+ 2054, 5, 4, 0, 0, 1995, 1996, 7, 25, 0, 0, 1996, 1997, 5, 3, 0, 0, 1997,
+ 1998, 5, 4, 0, 0, 1998, 1999, 5, 155, 0, 0, 1999, 2001, 5, 3, 0, 0, 2000,
+ 2002, 3, 154, 77, 0, 2001, 2000, 1, 0, 0, 0, 2001, 2002, 1, 0, 0, 0, 2002,
+ 2003, 1, 0, 0, 0, 2003, 2004, 3, 158, 79, 0, 2004, 2005, 5, 4, 0, 0, 2005,
+ 2054, 1, 0, 0, 0, 2006, 2007, 7, 26, 0, 0, 2007, 2008, 5, 3, 0, 0, 2008,
+ 2010, 3, 68, 34, 0, 2009, 2011, 3, 150, 75, 0, 2010, 2009, 1, 0, 0, 0,
+ 2010, 2011, 1, 0, 0, 0, 2011, 2013, 1, 0, 0, 0, 2012, 2014, 3, 152, 76,
+ 0, 2013, 2012, 1, 0, 0, 0, 2013, 2014, 1, 0, 0, 0, 2014, 2015, 1, 0, 0,
+ 0, 2015, 2016, 5, 4, 0, 0, 2016, 2017, 5, 155, 0, 0, 2017, 2019, 5, 3,
+ 0, 0, 2018, 2020, 3, 154, 77, 0, 2019, 2018, 1, 0, 0, 0, 2019, 2020, 1,
+ 0, 0, 0, 2020, 2021, 1, 0, 0, 0, 2021, 2022, 3, 158, 79, 0, 2022, 2023,
+ 5, 4, 0, 0, 2023, 2054, 1, 0, 0, 0, 2024, 2025, 5, 167, 0, 0, 2025, 2026,
+ 5, 3, 0, 0, 2026, 2027, 3, 68, 34, 0, 2027, 2028, 5, 5, 0, 0, 2028, 2029,
+ 3, 36, 18, 0, 2029, 2030, 5, 4, 0, 0, 2030, 2031, 5, 155, 0, 0, 2031, 2033,
+ 5, 3, 0, 0, 2032, 2034, 3, 154, 77, 0, 2033, 2032, 1, 0, 0, 0, 2033, 2034,
+ 1, 0, 0, 0, 2034, 2035, 1, 0, 0, 0, 2035, 2037, 3, 158, 79, 0, 2036, 2038,
+ 3, 124, 62, 0, 2037, 2036, 1, 0, 0, 0, 2037, 2038, 1, 0, 0, 0, 2038, 2039,
+ 1, 0, 0, 0, 2039, 2040, 5, 4, 0, 0, 2040, 2054, 1, 0, 0, 0, 2041, 2042,
+ 5, 168, 0, 0, 2042, 2043, 5, 3, 0, 0, 2043, 2044, 3, 68, 34, 0, 2044, 2045,
+ 5, 4, 0, 0, 2045, 2046, 5, 155, 0, 0, 2046, 2048, 5, 3, 0, 0, 2047, 2049,
+ 3, 154, 77, 0, 2048, 2047, 1, 0, 0, 0, 2048, 2049, 1, 0, 0, 0, 2049, 2050,
+ 1, 0, 0, 0, 2050, 2051, 3, 158, 79, 0, 2051, 2052, 5, 4, 0, 0, 2052, 2054,
+ 1, 0, 0, 0, 2053, 1968, 1, 0, 0, 0, 2053, 1983, 1, 0, 0, 0, 2053, 1995,
+ 1, 0, 0, 0, 2053, 2006, 1, 0, 0, 0, 2053, 2024, 1, 0, 0, 0, 2053, 2041,
+ 1, 0, 0, 0, 2054, 149, 1, 0, 0, 0, 2055, 2056, 5, 5, 0, 0, 2056, 2057,
+ 3, 36, 18, 0, 2057, 151, 1, 0, 0, 0, 2058, 2059, 5, 5, 0, 0, 2059, 2060,
+ 3, 36, 18, 0, 2060, 153, 1, 0, 0, 0, 2061, 2062, 5, 156, 0, 0, 2062, 2064,
+ 5, 42, 0, 0, 2063, 2065, 3, 68, 34, 0, 2064, 2063, 1, 0, 0, 0, 2065, 2066,
+ 1, 0, 0, 0, 2066, 2064, 1, 0, 0, 0, 2066, 2067, 1, 0, 0, 0, 2067, 155,
+ 1, 0, 0, 0, 2068, 2069, 5, 111, 0, 0, 2069, 2071, 5, 42, 0, 0, 2070, 2072,
+ 3, 68, 34, 0, 2071, 2070, 1, 0, 0, 0, 2072, 2073, 1, 0, 0, 0, 2073, 2071,
+ 1, 0, 0, 0, 2073, 2074, 1, 0, 0, 0, 2074, 157, 1, 0, 0, 0, 2075, 2076,
+ 5, 111, 0, 0, 2076, 2077, 5, 42, 0, 0, 2077, 2078, 3, 158, 79, 0, 2078,
+ 159, 1, 0, 0, 0, 2079, 2081, 3, 68, 34, 0, 2080, 2082, 3, 140, 70, 0, 2081,
+ 2080, 1, 0, 0, 0, 2081, 2082, 1, 0, 0, 0, 2082, 2090, 1, 0, 0, 0, 2083,
+ 2084, 5, 5, 0, 0, 2084, 2086, 3, 68, 34, 0, 2085, 2087, 3, 140, 70, 0,
+ 2086, 2085, 1, 0, 0, 0, 2086, 2087, 1, 0, 0, 0, 2087, 2089, 1, 0, 0, 0,
+ 2088, 2083, 1, 0, 0, 0, 2089, 2092, 1, 0, 0, 0, 2090, 2088, 1, 0, 0, 0,
+ 2090, 2091, 1, 0, 0, 0, 2091, 161, 1, 0, 0, 0, 2092, 2090, 1, 0, 0, 0,
+ 2093, 2094, 3, 84, 42, 0, 2094, 163, 1, 0, 0, 0, 2095, 2096, 3, 84, 42,
+ 0, 2096, 165, 1, 0, 0, 0, 2097, 2098, 7, 27, 0, 0, 2098, 167, 1, 0, 0,
+ 0, 2099, 2100, 5, 192, 0, 0, 2100, 169, 1, 0, 0, 0, 2101, 2104, 3, 68,
+ 34, 0, 2102, 2104, 3, 30, 15, 0, 2103, 2101, 1, 0, 0, 0, 2103, 2102, 1,
+ 0, 0, 0, 2104, 171, 1, 0, 0, 0, 2105, 2106, 7, 28, 0, 0, 2106, 173, 1,
+ 0, 0, 0, 2107, 2108, 7, 29, 0, 0, 2108, 175, 1, 0, 0, 0, 2109, 2110, 3,
+ 228, 114, 0, 2110, 177, 1, 0, 0, 0, 2111, 2112, 3, 228, 114, 0, 2112, 179,
+ 1, 0, 0, 0, 2113, 2114, 3, 182, 91, 0, 2114, 2115, 5, 2, 0, 0, 2115, 2117,
+ 1, 0, 0, 0, 2116, 2113, 1, 0, 0, 0, 2116, 2117, 1, 0, 0, 0, 2117, 2118,
+ 1, 0, 0, 0, 2118, 2119, 3, 178, 89, 0, 2119, 181, 1, 0, 0, 0, 2120, 2121,
+ 3, 228, 114, 0, 2121, 183, 1, 0, 0, 0, 2122, 2123, 3, 228, 114, 0, 2123,
+ 185, 1, 0, 0, 0, 2124, 2125, 3, 228, 114, 0, 2125, 187, 1, 0, 0, 0, 2126,
+ 2127, 3, 228, 114, 0, 2127, 189, 1, 0, 0, 0, 2128, 2129, 3, 228, 114, 0,
+ 2129, 191, 1, 0, 0, 0, 2130, 2131, 3, 228, 114, 0, 2131, 193, 1, 0, 0,
+ 0, 2132, 2133, 3, 228, 114, 0, 2133, 195, 1, 0, 0, 0, 2134, 2135, 3, 228,
+ 114, 0, 2135, 197, 1, 0, 0, 0, 2136, 2137, 3, 228, 114, 0, 2137, 199, 1,
+ 0, 0, 0, 2138, 2139, 3, 228, 114, 0, 2139, 201, 1, 0, 0, 0, 2140, 2141,
+ 3, 228, 114, 0, 2141, 203, 1, 0, 0, 0, 2142, 2143, 3, 228, 114, 0, 2143,
+ 205, 1, 0, 0, 0, 2144, 2145, 3, 228, 114, 0, 2145, 207, 1, 0, 0, 0, 2146,
+ 2147, 7, 28, 0, 0, 2147, 209, 1, 0, 0, 0, 2148, 2149, 3, 228, 114, 0, 2149,
+ 211, 1, 0, 0, 0, 2150, 2151, 3, 228, 114, 0, 2151, 213, 1, 0, 0, 0, 2152,
+ 2153, 3, 228, 114, 0, 2153, 215, 1, 0, 0, 0, 2154, 2155, 3, 228, 114, 0,
+ 2155, 217, 1, 0, 0, 0, 2156, 2157, 3, 228, 114, 0, 2157, 219, 1, 0, 0,
+ 0, 2158, 2159, 3, 228, 114, 0, 2159, 221, 1, 0, 0, 0, 2160, 2161, 3, 228,
+ 114, 0, 2161, 223, 1, 0, 0, 0, 2162, 2163, 3, 228, 114, 0, 2163, 225, 1,
+ 0, 0, 0, 2164, 2165, 3, 228, 114, 0, 2165, 227, 1, 0, 0, 0, 2166, 2174,
+ 5, 188, 0, 0, 2167, 2174, 3, 174, 87, 0, 2168, 2174, 5, 192, 0, 0, 2169,
+ 2170, 5, 3, 0, 0, 2170, 2171, 3, 228, 114, 0, 2171, 2172, 5, 4, 0, 0, 2172,
+ 2174, 1, 0, 0, 0, 2173, 2166, 1, 0, 0, 0, 2173, 2167, 1, 0, 0, 0, 2173,
+ 2168, 1, 0, 0, 0, 2173, 2169, 1, 0, 0, 0, 2174, 229, 1, 0, 0, 0, 313, 233,
241, 248, 253, 259, 265, 267, 293, 300, 307, 313, 317, 322, 325, 332, 335,
339, 347, 351, 353, 357, 361, 365, 368, 375, 381, 387, 392, 403, 409, 413,
417, 420, 425, 429, 435, 440, 449, 456, 465, 468, 472, 476, 481, 487, 499,
@@ -1180,20 +1179,20 @@ func sqliteparserParserInit() {
873, 876, 879, 886, 889, 892, 895, 899, 907, 912, 923, 928, 937, 944, 948,
952, 955, 963, 976, 979, 987, 996, 1000, 1005, 1034, 1041, 1052, 1061,
1071, 1074, 1080, 1086, 1095, 1098, 1102, 1109, 1115, 1122, 1124, 1126,
- 1135, 1142, 1149, 1155, 1160, 1168, 1173, 1182, 1193, 1200, 1204, 1207,
- 1210, 1214, 1224, 1230, 1232, 1240, 1247, 1254, 1259, 1261, 1267, 1276,
- 1281, 1288, 1292, 1294, 1297, 1305, 1309, 1312, 1321, 1326, 1333, 1342,
- 1346, 1348, 1352, 1361, 1366, 1368, 1381, 1384, 1393, 1404, 1411, 1414,
- 1419, 1423, 1426, 1429, 1434, 1438, 1443, 1446, 1449, 1454, 1458, 1461,
- 1468, 1473, 1482, 1487, 1490, 1498, 1502, 1510, 1513, 1518, 1522, 1525,
- 1532, 1537, 1546, 1551, 1554, 1562, 1566, 1574, 1577, 1579, 1588, 1591,
- 1593, 1597, 1601, 1604, 1609, 1620, 1625, 1629, 1633, 1636, 1641, 1647,
- 1654, 1661, 1666, 1669, 1677, 1683, 1688, 1694, 1701, 1708, 1713, 1716,
- 1719, 1724, 1729, 1736, 1740, 1744, 1754, 1763, 1766, 1775, 1779, 1787,
- 1796, 1799, 1808, 1811, 1814, 1817, 1827, 1836, 1845, 1849, 1856, 1863,
- 1867, 1871, 1880, 1884, 1888, 1893, 1897, 1904, 1914, 1921, 1926, 1929,
- 1933, 1947, 1959, 1968, 1977, 1981, 1991, 1994, 2003, 2012, 2015, 2021,
- 2035, 2039, 2050, 2055, 2068, 2075, 2083, 2088, 2092, 2105, 2118, 2175,
+ 1135, 1142, 1149, 1155, 1160, 1168, 1173, 1182, 1193, 1200, 1206, 1209,
+ 1212, 1222, 1228, 1230, 1238, 1245, 1252, 1257, 1259, 1265, 1274, 1279,
+ 1286, 1290, 1292, 1295, 1303, 1307, 1310, 1319, 1324, 1331, 1340, 1344,
+ 1346, 1350, 1359, 1364, 1366, 1379, 1382, 1391, 1402, 1409, 1412, 1417,
+ 1421, 1424, 1427, 1432, 1436, 1441, 1444, 1447, 1452, 1456, 1459, 1466,
+ 1471, 1480, 1485, 1488, 1496, 1500, 1508, 1511, 1516, 1520, 1523, 1530,
+ 1535, 1544, 1549, 1552, 1560, 1564, 1572, 1575, 1577, 1586, 1589, 1591,
+ 1595, 1599, 1602, 1607, 1618, 1623, 1627, 1631, 1634, 1639, 1645, 1652,
+ 1659, 1664, 1667, 1675, 1681, 1686, 1692, 1699, 1706, 1711, 1714, 1717,
+ 1722, 1727, 1734, 1738, 1742, 1752, 1761, 1764, 1773, 1777, 1785, 1794,
+ 1797, 1806, 1809, 1812, 1815, 1825, 1834, 1843, 1847, 1854, 1861, 1865,
+ 1869, 1878, 1882, 1886, 1891, 1895, 1902, 1912, 1919, 1924, 1927, 1931,
+ 1945, 1957, 1966, 1975, 1979, 1989, 1992, 2001, 2010, 2013, 2019, 2033,
+ 2037, 2048, 2053, 2066, 2073, 2081, 2086, 2090, 2103, 2116, 2173,
}
deserializer := antlr.NewATNDeserializer(nil)
staticData.atn = deserializer.Deserialize(staticData.serializedATN)
@@ -1210,7 +1209,7 @@ func sqliteparserParserInit() {
// NewSQLiteParser(). You can call this function if you wish to initialize the static state ahead
// of time.
func SQLiteParserInit() {
- staticData := &sqliteparserParserStaticData
+ staticData := &SQLiteParserParserStaticData
staticData.once.Do(sqliteparserParserInit)
}
@@ -1219,11 +1218,11 @@ func NewSQLiteParser(input antlr.TokenStream) *SQLiteParser {
SQLiteParserInit()
this := new(SQLiteParser)
this.BaseParser = antlr.NewBaseParser(input)
- staticData := &sqliteparserParserStaticData
- this.Interpreter = antlr.NewParserATNSimulator(this, staticData.atn, staticData.decisionToDFA, staticData.predictionContextCache)
- this.RuleNames = staticData.ruleNames
- this.LiteralNames = staticData.literalNames
- this.SymbolicNames = staticData.symbolicNames
+ staticData := &SQLiteParserParserStaticData
+ this.Interpreter = antlr.NewParserATNSimulator(this, staticData.atn, staticData.decisionToDFA, staticData.PredictionContextCache)
+ this.RuleNames = staticData.RuleNames
+ this.LiteralNames = staticData.LiteralNames
+ this.SymbolicNames = staticData.SymbolicNames
this.GrammarFileName = "SQLiteParser.g4"
return this
@@ -1567,23 +1566,28 @@ type IParseContext interface {
}
type ParseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyParseContext() *ParseContext {
var p = new(ParseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_parse
return p
}
+func InitEmptyParseContext(p *ParseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_parse
+}
+
func (*ParseContext) IsParseContext() {}
func NewParseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *ParseContext {
var p = new(ParseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_parse
@@ -1659,35 +1663,19 @@ func (s *ParseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Parse() (localctx IParseContext) {
- this := p
- _ = this
-
localctx = NewParseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 0, SQLiteParserRULE_parse)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(233)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
- for ((int64(_la) & ^0x3f) == 0 && ((int64(1)<<_la)&-6624230852073095166) != 0) || ((int64((_la-65)) & ^0x3f) == 0 && ((int64(1)<<(_la-65))&-8430175552450592503) != 0) || ((int64((_la-131)) & ^0x3f) == 0 && ((int64(1)<<(_la-131))&2203651) != 0) {
+ for ((int64(_la) & ^0x3f) == 0 && ((int64(1)<<_la)&-6912461228224806910) != 0) || ((int64((_la-65)) & ^0x3f) == 0 && ((int64(1)<<(_la-65))&-8430175552450592503) != 0) || ((int64((_la-131)) & ^0x3f) == 0 && ((int64(1)<<(_la-131))&2203651) != 0) {
{
p.SetState(230)
p.Sql_stmt_list()
@@ -1695,14 +1683,31 @@ func (p *SQLiteParser) Parse() (localctx IParseContext) {
p.SetState(235)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(236)
p.Match(SQLiteParserEOF)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISql_stmt_listContext is an interface to support dynamic dispatch.
@@ -1723,23 +1728,28 @@ type ISql_stmt_listContext interface {
}
type Sql_stmt_listContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySql_stmt_listContext() *Sql_stmt_listContext {
var p = new(Sql_stmt_listContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_sql_stmt_list
return p
}
+func InitEmptySql_stmt_listContext(p *Sql_stmt_listContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_sql_stmt_list
+}
+
func (*Sql_stmt_listContext) IsSql_stmt_listContext() {}
func NewSql_stmt_listContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Sql_stmt_listContext {
var p = new(Sql_stmt_listContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_sql_stmt_list
@@ -1819,44 +1829,35 @@ func (s *Sql_stmt_listContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Sql_stmt_list() (localctx ISql_stmt_listContext) {
- this := p
- _ = this
-
localctx = NewSql_stmt_listContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 2, SQLiteParserRULE_sql_stmt_list)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
p.SetState(241)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserSCOL {
{
p.SetState(238)
p.Match(SQLiteParserSCOL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(243)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
@@ -1865,22 +1866,37 @@ func (p *SQLiteParser) Sql_stmt_list() (localctx ISql_stmt_listContext) {
}
p.SetState(253)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 3, p.GetParserRuleContext())
-
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 3, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
for _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
if _alt == 1 {
p.SetState(246)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for ok := true; ok; ok = _la == SQLiteParserSCOL {
{
p.SetState(245)
p.Match(SQLiteParserSCOL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(248)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
@@ -1891,26 +1907,57 @@ func (p *SQLiteParser) Sql_stmt_list() (localctx ISql_stmt_listContext) {
}
p.SetState(255)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 3, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 3, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
p.SetState(259)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 4, p.GetParserRuleContext())
-
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 4, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
for _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
if _alt == 1 {
{
p.SetState(256)
p.Match(SQLiteParserSCOL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
p.SetState(261)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 4, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 4, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISql_stmtContext is an interface to support dynamic dispatch.
@@ -1954,23 +2001,28 @@ type ISql_stmtContext interface {
}
type Sql_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySql_stmtContext() *Sql_stmtContext {
var p = new(Sql_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_sql_stmt
return p
}
+func InitEmptySql_stmtContext(p *Sql_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_sql_stmt
+}
+
func (*Sql_stmtContext) IsSql_stmtContext() {}
func NewSql_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Sql_stmtContext {
var p = new(Sql_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_sql_stmt
@@ -2397,51 +2449,50 @@ func (s *Sql_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Sql_stmt() (localctx ISql_stmtContext) {
- this := p
- _ = this
-
localctx = NewSql_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 4, SQLiteParserRULE_sql_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(267)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserEXPLAIN_ {
{
p.SetState(262)
p.Match(SQLiteParserEXPLAIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(265)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserQUERY_ {
{
p.SetState(263)
p.Match(SQLiteParserQUERY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(264)
p.Match(SQLiteParserPLAN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -2449,7 +2500,11 @@ func (p *SQLiteParser) Sql_stmt() (localctx ISql_stmtContext) {
}
p.SetState(293)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 7, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 7, p.GetParserRuleContext()) {
case 1:
{
p.SetState(269)
@@ -2594,9 +2649,21 @@ func (p *SQLiteParser) Sql_stmt() (localctx ISql_stmtContext) {
p.Vacuum_stmt()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAlter_table_stmtContext is an interface to support dynamic dispatch.
@@ -2639,7 +2706,7 @@ type IAlter_table_stmtContext interface {
}
type Alter_table_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
old_column_name IColumn_nameContext
new_column_name IColumn_nameContext
@@ -2647,17 +2714,22 @@ type Alter_table_stmtContext struct {
func NewEmptyAlter_table_stmtContext() *Alter_table_stmtContext {
var p = new(Alter_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_alter_table_stmt
return p
}
+func InitEmptyAlter_table_stmtContext(p *Alter_table_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_alter_table_stmt
+}
+
func (*Alter_table_stmtContext) IsAlter_table_stmtContext() {}
func NewAlter_table_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Alter_table_stmtContext {
var p = new(Alter_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_alter_table_stmt
@@ -2833,41 +2905,29 @@ func (s *Alter_table_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
- this := p
- _ = this
-
localctx = NewAlter_table_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 6, SQLiteParserRULE_alter_table_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(295)
p.Match(SQLiteParserALTER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(296)
p.Match(SQLiteParserTABLE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(300)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 8, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 8, p.GetParserRuleContext()) == 1 {
{
p.SetState(297)
p.Schema_name()
@@ -2875,8 +2935,14 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
{
p.SetState(298)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(302)
@@ -2884,20 +2950,35 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
}
p.SetState(325)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserRENAME_:
{
p.SetState(303)
p.Match(SQLiteParserRENAME_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(313)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 10, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 10, p.GetParserRuleContext()) {
case 1:
{
p.SetState(304)
p.Match(SQLiteParserTO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(305)
@@ -2908,12 +2989,18 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
p.SetState(307)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 9, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 9, p.GetParserRuleContext()) == 1 {
{
p.SetState(306)
p.Match(SQLiteParserCOLUMN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(309)
@@ -2925,6 +3012,10 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
{
p.SetState(310)
p.Match(SQLiteParserTO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(311)
@@ -2934,22 +3025,34 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
localctx.(*Alter_table_stmtContext).new_column_name = _x
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
case SQLiteParserADD_:
{
p.SetState(315)
p.Match(SQLiteParserADD_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(317)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 11, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 11, p.GetParserRuleContext()) == 1 {
{
p.SetState(316)
p.Match(SQLiteParserCOLUMN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(319)
@@ -2960,16 +3063,26 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
{
p.SetState(320)
p.Match(SQLiteParserDROP_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(322)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 12, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 12, p.GetParserRuleContext()) == 1 {
{
p.SetState(321)
p.Match(SQLiteParserCOLUMN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(324)
@@ -2977,10 +3090,21 @@ func (p *SQLiteParser) Alter_table_stmt() (localctx IAlter_table_stmtContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAnalyze_stmtContext is an interface to support dynamic dispatch.
@@ -3001,23 +3125,28 @@ type IAnalyze_stmtContext interface {
}
type Analyze_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAnalyze_stmtContext() *Analyze_stmtContext {
var p = new(Analyze_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_analyze_stmt
return p
}
+func InitEmptyAnalyze_stmtContext(p *Analyze_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_analyze_stmt
+}
+
func (*Analyze_stmtContext) IsAnalyze_stmtContext() {}
func NewAnalyze_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Analyze_stmtContext {
var p = new(Analyze_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_analyze_stmt
@@ -3088,47 +3217,33 @@ func (s *Analyze_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Analyze_stmt() (localctx IAnalyze_stmtContext) {
- this := p
- _ = this
-
localctx = NewAnalyze_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 8, SQLiteParserRULE_analyze_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(327)
p.Match(SQLiteParserANALYZE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(335)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 15, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 15, p.GetParserRuleContext()) == 1 {
{
p.SetState(328)
p.Schema_name()
}
- } else if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 15, p.GetParserRuleContext()) == 2 {
+ } else if p.HasError() { // JIM
+ goto errorExit
+ } else if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 15, p.GetParserRuleContext()) == 2 {
p.SetState(332)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 14, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 14, p.GetParserRuleContext()) == 1 {
{
p.SetState(329)
p.Schema_name()
@@ -3136,17 +3251,35 @@ func (p *SQLiteParser) Analyze_stmt() (localctx IAnalyze_stmtContext) {
{
p.SetState(330)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(334)
p.Table_or_index_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAttach_stmtContext is an interface to support dynamic dispatch.
@@ -3168,23 +3301,28 @@ type IAttach_stmtContext interface {
}
type Attach_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAttach_stmtContext() *Attach_stmtContext {
var p = new(Attach_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_attach_stmt
return p
}
+func InitEmptyAttach_stmtContext(p *Attach_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_attach_stmt
+}
+
func (*Attach_stmtContext) IsAttach_stmtContext() {}
func NewAttach_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Attach_stmtContext {
var p = new(Attach_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_attach_stmt
@@ -3259,42 +3397,32 @@ func (s *Attach_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Attach_stmt() (localctx IAttach_stmtContext) {
- this := p
- _ = this
-
localctx = NewAttach_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 10, SQLiteParserRULE_attach_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(337)
p.Match(SQLiteParserATTACH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(339)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 16, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 16, p.GetParserRuleContext()) == 1 {
{
p.SetState(338)
p.Match(SQLiteParserDATABASE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(341)
@@ -3303,13 +3431,27 @@ func (p *SQLiteParser) Attach_stmt() (localctx IAttach_stmtContext) {
{
p.SetState(342)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(343)
p.Schema_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IBegin_stmtContext is an interface to support dynamic dispatch.
@@ -3332,23 +3474,28 @@ type IBegin_stmtContext interface {
}
type Begin_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyBegin_stmtContext() *Begin_stmtContext {
var p = new(Begin_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_begin_stmt
return p
}
+func InitEmptyBegin_stmtContext(p *Begin_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_begin_stmt
+}
+
func (*Begin_stmtContext) IsBegin_stmtContext() {}
func NewBegin_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Begin_stmtContext {
var p = new(Begin_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_begin_stmt
@@ -3415,36 +3562,24 @@ func (s *Begin_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Begin_stmt() (localctx IBegin_stmtContext) {
- this := p
- _ = this
-
localctx = NewBegin_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 12, SQLiteParserRULE_begin_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(345)
p.Match(SQLiteParserBEGIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(347)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if (int64((_la-60)) & ^0x3f) == 0 && ((int64(1)<<(_la-60))&16779265) != 0 {
@@ -3463,27 +3598,46 @@ func (p *SQLiteParser) Begin_stmt() (localctx IBegin_stmtContext) {
}
p.SetState(353)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTRANSACTION_ {
{
p.SetState(349)
p.Match(SQLiteParserTRANSACTION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(351)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 18, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 18, p.GetParserRuleContext()) == 1 {
{
p.SetState(350)
p.Transaction_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICommit_stmtContext is an interface to support dynamic dispatch.
@@ -3503,23 +3657,28 @@ type ICommit_stmtContext interface {
}
type Commit_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCommit_stmtContext() *Commit_stmtContext {
var p = new(Commit_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_commit_stmt
return p
}
+func InitEmptyCommit_stmtContext(p *Commit_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_commit_stmt
+}
+
func (*Commit_stmtContext) IsCommit_stmtContext() {}
func NewCommit_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Commit_stmtContext {
var p = new(Commit_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_commit_stmt
@@ -3562,29 +3721,10 @@ func (s *Commit_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Commit_stmt() (localctx ICommit_stmtContext) {
- this := p
- _ = this
-
localctx = NewCommit_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 14, SQLiteParserRULE_commit_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(355)
@@ -3599,17 +3739,34 @@ func (p *SQLiteParser) Commit_stmt() (localctx ICommit_stmtContext) {
}
p.SetState(357)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTRANSACTION_ {
{
p.SetState(356)
p.Match(SQLiteParserTRANSACTION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IRollback_stmtContext is an interface to support dynamic dispatch.
@@ -3631,23 +3788,28 @@ type IRollback_stmtContext interface {
}
type Rollback_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyRollback_stmtContext() *Rollback_stmtContext {
var p = new(Rollback_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_rollback_stmt
return p
}
+func InitEmptyRollback_stmtContext(p *Rollback_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_rollback_stmt
+}
+
func (*Rollback_stmtContext) IsRollback_stmtContext() {}
func NewRollback_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Rollback_stmtContext {
var p = new(Rollback_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_rollback_stmt
@@ -3710,63 +3872,68 @@ func (s *Rollback_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Rollback_stmt() (localctx IRollback_stmtContext) {
- this := p
- _ = this
-
localctx = NewRollback_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 16, SQLiteParserRULE_rollback_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(359)
p.Match(SQLiteParserROLLBACK_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(361)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTRANSACTION_ {
{
p.SetState(360)
p.Match(SQLiteParserTRANSACTION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
p.SetState(368)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTO_ {
{
p.SetState(363)
p.Match(SQLiteParserTO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(365)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 22, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 22, p.GetParserRuleContext()) == 1 {
{
p.SetState(364)
p.Match(SQLiteParserSAVEPOINT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(367)
@@ -3775,7 +3942,17 @@ func (p *SQLiteParser) Rollback_stmt() (localctx IRollback_stmtContext) {
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISavepoint_stmtContext is an interface to support dynamic dispatch.
@@ -3794,23 +3971,28 @@ type ISavepoint_stmtContext interface {
}
type Savepoint_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySavepoint_stmtContext() *Savepoint_stmtContext {
var p = new(Savepoint_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_savepoint_stmt
return p
}
+func InitEmptySavepoint_stmtContext(p *Savepoint_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_savepoint_stmt
+}
+
func (*Savepoint_stmtContext) IsSavepoint_stmtContext() {}
func NewSavepoint_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Savepoint_stmtContext {
var p = new(Savepoint_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_savepoint_stmt
@@ -3861,39 +4043,33 @@ func (s *Savepoint_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Savepoint_stmt() (localctx ISavepoint_stmtContext) {
- this := p
- _ = this
-
localctx = NewSavepoint_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 18, SQLiteParserRULE_savepoint_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(370)
p.Match(SQLiteParserSAVEPOINT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(371)
p.Savepoint_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IRelease_stmtContext is an interface to support dynamic dispatch.
@@ -3913,23 +4089,28 @@ type IRelease_stmtContext interface {
}
type Release_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyRelease_stmtContext() *Release_stmtContext {
var p = new(Release_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_release_stmt
return p
}
+func InitEmptyRelease_stmtContext(p *Release_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_release_stmt
+}
+
func (*Release_stmtContext) IsRelease_stmtContext() {}
func NewRelease_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Release_stmtContext {
var p = new(Release_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_release_stmt
@@ -3984,49 +4165,49 @@ func (s *Release_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Release_stmt() (localctx IRelease_stmtContext) {
- this := p
- _ = this
-
localctx = NewRelease_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 20, SQLiteParserRULE_release_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(373)
p.Match(SQLiteParserRELEASE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(375)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 24, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 24, p.GetParserRuleContext()) == 1 {
{
p.SetState(374)
p.Match(SQLiteParserSAVEPOINT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(377)
p.Savepoint_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICreate_index_stmtContext is an interface to support dynamic dispatch.
@@ -4062,23 +4243,28 @@ type ICreate_index_stmtContext interface {
}
type Create_index_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCreate_index_stmtContext() *Create_index_stmtContext {
var p = new(Create_index_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_create_index_stmt
return p
}
+func InitEmptyCreate_index_stmtContext(p *Create_index_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_create_index_stmt
+}
+
func (*Create_index_stmtContext) IsCreate_index_stmtContext() {}
func NewCreate_index_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Create_index_stmtContext {
var p = new(Create_index_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_create_index_stmt
@@ -4266,71 +4452,81 @@ func (s *Create_index_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext) {
- this := p
- _ = this
-
localctx = NewCreate_index_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 22, SQLiteParserRULE_create_index_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(379)
p.Match(SQLiteParserCREATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(381)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserUNIQUE_ {
{
p.SetState(380)
p.Match(SQLiteParserUNIQUE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(383)
p.Match(SQLiteParserINDEX_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(387)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 26, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 26, p.GetParserRuleContext()) == 1 {
{
p.SetState(384)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(385)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(386)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(392)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 27, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 27, p.GetParserRuleContext()) == 1 {
{
p.SetState(389)
p.Schema_name()
@@ -4338,8 +4534,14 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
{
p.SetState(390)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(394)
@@ -4348,6 +4550,10 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
{
p.SetState(395)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(396)
@@ -4356,6 +4562,10 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
{
p.SetState(397)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(398)
@@ -4363,12 +4573,19 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
}
p.SetState(403)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(399)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(400)
@@ -4377,20 +4594,34 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
p.SetState(405)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(406)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(409)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
p.SetState(407)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(408)
@@ -4399,7 +4630,17 @@ func (p *SQLiteParser) Create_index_stmt() (localctx ICreate_index_stmtContext)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IIndexed_columnContext is an interface to support dynamic dispatch.
@@ -4421,23 +4662,28 @@ type IIndexed_columnContext interface {
}
type Indexed_columnContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyIndexed_columnContext() *Indexed_columnContext {
var p = new(Indexed_columnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_indexed_column
return p
}
+func InitEmptyIndexed_columnContext(p *Indexed_columnContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_indexed_column
+}
+
func (*Indexed_columnContext) IsIndexed_columnContext() {}
func NewIndexed_columnContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Indexed_columnContext {
var p = new(Indexed_columnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_indexed_column
@@ -4536,33 +4782,18 @@ func (s *Indexed_columnContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Indexed_column() (localctx IIndexed_columnContext) {
- this := p
- _ = this
-
localctx = NewIndexed_columnContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 24, SQLiteParserRULE_indexed_column)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(413)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 30, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 30, p.GetParserRuleContext()) {
case 1:
{
p.SetState(411)
@@ -4575,15 +4806,24 @@ func (p *SQLiteParser) Indexed_column() (localctx IIndexed_columnContext) {
p.expr(0)
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
p.SetState(417)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCOLLATE_ {
{
p.SetState(415)
p.Match(SQLiteParserCOLLATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(416)
@@ -4593,6 +4833,9 @@ func (p *SQLiteParser) Indexed_column() (localctx IIndexed_columnContext) {
}
p.SetState(420)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserASC_ || _la == SQLiteParserDESC_ {
@@ -4603,7 +4846,17 @@ func (p *SQLiteParser) Indexed_column() (localctx IIndexed_columnContext) {
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_optionContext is an interface to support dynamic dispatch.
@@ -4629,24 +4882,29 @@ type ITable_optionContext interface {
}
type Table_optionContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
row_ROW_ID antlr.Token
}
func NewEmptyTable_optionContext() *Table_optionContext {
var p = new(Table_optionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_option
return p
}
+func InitEmptyTable_optionContext(p *Table_optionContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_option
+}
+
func (*Table_optionContext) IsTable_optionContext() {}
func NewTable_optionContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_optionContext {
var p = new(Table_optionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_option
@@ -4693,30 +4951,13 @@ func (s *Table_optionContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Table_option() (localctx ITable_optionContext) {
- this := p
- _ = this
-
localctx = NewTable_optionContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 26, SQLiteParserRULE_table_option)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.SetState(425)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserWITHOUT_:
@@ -4724,6 +4965,10 @@ func (p *SQLiteParser) Table_option() (localctx ITable_optionContext) {
{
p.SetState(422)
p.Match(SQLiteParserWITHOUT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(423)
@@ -4731,6 +4976,10 @@ func (p *SQLiteParser) Table_option() (localctx ITable_optionContext) {
var _m = p.Match(SQLiteParserIDENTIFIER)
localctx.(*Table_optionContext).row_ROW_ID = _m
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserSTRICT_:
@@ -4738,13 +4987,28 @@ func (p *SQLiteParser) Table_option() (localctx ITable_optionContext) {
{
p.SetState(424)
p.Match(SQLiteParserSTRICT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICreate_table_stmtContext is an interface to support dynamic dispatch.
@@ -4783,23 +5047,28 @@ type ICreate_table_stmtContext interface {
}
type Create_table_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCreate_table_stmtContext() *Create_table_stmtContext {
var p = new(Create_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_create_table_stmt
return p
}
+func InitEmptyCreate_table_stmtContext(p *Create_table_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_create_table_stmt
+}
+
func (*Create_table_stmtContext) IsCreate_table_stmtContext() {}
func NewCreate_table_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Create_table_stmtContext {
var p = new(Create_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_create_table_stmt
@@ -5053,38 +5322,26 @@ func (s *Create_table_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext) {
- this := p
- _ = this
-
localctx = NewCreate_table_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 28, SQLiteParserRULE_create_table_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
{
p.SetState(427)
p.Match(SQLiteParserCREATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(429)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTEMP_ || _la == SQLiteParserTEMPORARY_ {
@@ -5104,29 +5361,47 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
{
p.SetState(431)
p.Match(SQLiteParserTABLE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(435)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 35, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 35, p.GetParserRuleContext()) == 1 {
{
p.SetState(432)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(433)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(434)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(440)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 36, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 36, p.GetParserRuleContext()) == 1 {
{
p.SetState(437)
p.Schema_name()
@@ -5134,8 +5409,14 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
{
p.SetState(438)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(442)
@@ -5143,12 +5424,19 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
}
p.SetState(472)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserOPEN_PAR:
{
p.SetState(443)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(444)
@@ -5156,13 +5444,22 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
}
p.SetState(449)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 37, p.GetParserRuleContext())
-
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 37, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
for _alt != 1 && _alt != antlr.ATNInvalidAltNumber {
if _alt == 1+1 {
{
p.SetState(445)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(446)
@@ -5172,16 +5469,29 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
}
p.SetState(451)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 37, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 37, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
p.SetState(456)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(452)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(453)
@@ -5190,14 +5500,24 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
p.SetState(458)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(459)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(468)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserSTRICT_ || _la == SQLiteParserWITHOUT_ {
@@ -5207,12 +5527,19 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
}
p.SetState(465)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(461)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(462)
@@ -5221,6 +5548,9 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
p.SetState(467)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
@@ -5230,6 +5560,10 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
{
p.SetState(470)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(471)
@@ -5237,10 +5571,21 @@ func (p *SQLiteParser) Create_table_stmt() (localctx ICreate_table_stmtContext)
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IColumn_defContext is an interface to support dynamic dispatch.
@@ -5261,23 +5606,28 @@ type IColumn_defContext interface {
}
type Column_defContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyColumn_defContext() *Column_defContext {
var p = new(Column_defContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_column_def
return p
}
+func InitEmptyColumn_defContext(p *Column_defContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_column_def
+}
+
func (*Column_defContext) IsColumn_defContext() {}
func NewColumn_defContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Column_defContext {
var p = new(Column_defContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_column_def
@@ -5381,29 +5731,9 @@ func (s *Column_defContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Column_def() (localctx IColumn_defContext) {
- this := p
- _ = this
-
localctx = NewColumn_defContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 30, SQLiteParserRULE_column_def)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- var _alt int
+ var _la int
p.EnterOuterAlt(localctx, 1)
{
@@ -5413,31 +5743,47 @@ func (p *SQLiteParser) Column_def() (localctx IColumn_defContext) {
p.SetState(476)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 42, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 42, p.GetParserRuleContext()) == 1 {
{
p.SetState(475)
p.Type_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(481)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 43, p.GetParserRuleContext())
-
- for _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
- if _alt == 1 {
- {
- p.SetState(478)
- p.Column_constraint()
- }
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+ for ((int64(_la) & ^0x3f) == 0 && ((int64(1)<<_la)&290693316557668352) != 0) || ((int64((_la-104)) & ^0x3f) == 0 && ((int64(1)<<(_la-104))&549755848705) != 0) || _la == SQLiteParserGENERATED_ {
+ {
+ p.SetState(478)
+ p.Column_constraint()
}
+
p.SetState(483)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 43, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IType_nameContext is an interface to support dynamic dispatch.
@@ -5461,23 +5807,28 @@ type IType_nameContext interface {
}
type Type_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyType_nameContext() *Type_nameContext {
var p = new(Type_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_type_name
return p
}
+func InitEmptyType_nameContext(p *Type_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_type_name
+}
+
func (*Type_nameContext) IsType_nameContext() {}
func NewType_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Type_nameContext {
var p = new(Type_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_type_name
@@ -5602,33 +5953,16 @@ func (s *Type_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Type_name() (localctx IType_nameContext) {
- this := p
- _ = this
-
localctx = NewType_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 32, SQLiteParserRULE_type_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
p.SetState(485)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_alt = 1 + 1
for ok := true; ok; ok = _alt != 1 && _alt != antlr.ATNInvalidAltNumber {
switch _alt {
@@ -5639,20 +5973,28 @@ func (p *SQLiteParser) Type_name() (localctx IType_nameContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
p.SetState(487)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 44, p.GetParserRuleContext())
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 44, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
p.SetState(499)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 45, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 45, p.GetParserRuleContext()) == 1 {
{
p.SetState(489)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(490)
@@ -5661,12 +6003,22 @@ func (p *SQLiteParser) Type_name() (localctx IType_nameContext) {
{
p.SetState(491)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- } else if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 45, p.GetParserRuleContext()) == 2 {
+ } else if p.HasError() { // JIM
+ goto errorExit
+ } else if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 45, p.GetParserRuleContext()) == 2 {
{
p.SetState(493)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(494)
@@ -5675,6 +6027,10 @@ func (p *SQLiteParser) Type_name() (localctx IType_nameContext) {
{
p.SetState(495)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(496)
@@ -5683,11 +6039,27 @@ func (p *SQLiteParser) Type_name() (localctx IType_nameContext) {
{
p.SetState(497)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IColumn_constraintContext is an interface to support dynamic dispatch.
@@ -5729,23 +6101,28 @@ type IColumn_constraintContext interface {
}
type Column_constraintContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyColumn_constraintContext() *Column_constraintContext {
var p = new(Column_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_column_constraint
return p
}
+func InitEmptyColumn_constraintContext(p *Column_constraintContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_column_constraint
+}
+
func (*Column_constraintContext) IsColumn_constraintContext() {}
func NewColumn_constraintContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Column_constraintContext {
var p = new(Column_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_column_constraint
@@ -5972,38 +6349,26 @@ func (s *Column_constraintContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext) {
- this := p
- _ = this
-
localctx = NewColumn_constraintContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 34, SQLiteParserRULE_column_constraint)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(503)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCONSTRAINT_ {
{
p.SetState(501)
p.Match(SQLiteParserCONSTRAINT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(502)
@@ -6013,19 +6378,33 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
}
p.SetState(552)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserPRIMARY_:
{
p.SetState(505)
p.Match(SQLiteParserPRIMARY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(506)
p.Match(SQLiteParserKEY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(508)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserASC_ || _la == SQLiteParserDESC_ {
@@ -6037,6 +6416,9 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
}
p.SetState(511)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserON_ {
@@ -6048,12 +6430,19 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
}
p.SetState(514)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAUTOINCREMENT_ {
{
p.SetState(513)
p.Match(SQLiteParserAUTOINCREMENT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -6061,29 +6450,48 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
case SQLiteParserNOT_, SQLiteParserUNIQUE_:
p.SetState(519)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserNOT_:
{
p.SetState(516)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(517)
p.Match(SQLiteParserNULL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserUNIQUE_:
{
p.SetState(518)
p.Match(SQLiteParserUNIQUE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
p.SetState(522)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserON_ {
@@ -6098,10 +6506,18 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
{
p.SetState(524)
p.Match(SQLiteParserCHECK_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(525)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(526)
@@ -6110,16 +6526,28 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
{
p.SetState(527)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserDEFAULT_:
{
p.SetState(529)
p.Match(SQLiteParserDEFAULT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(536)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 52, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 52, p.GetParserRuleContext()) {
case 1:
{
p.SetState(530)
@@ -6136,6 +6564,10 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
{
p.SetState(532)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(533)
@@ -6144,14 +6576,24 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
{
p.SetState(534)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
case SQLiteParserCOLLATE_:
{
p.SetState(538)
p.Match(SQLiteParserCOLLATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(539)
@@ -6167,26 +6609,45 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
case SQLiteParserAS_, SQLiteParserGENERATED_:
p.SetState(543)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserGENERATED_ {
{
p.SetState(541)
p.Match(SQLiteParserGENERATED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(542)
p.Match(SQLiteParserALWAYS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(545)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(546)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(547)
@@ -6195,9 +6656,16 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
{
p.SetState(548)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(550)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserVIRTUAL_ || _la == SQLiteParserSTORED_ {
@@ -6216,10 +6684,21 @@ func (p *SQLiteParser) Column_constraint() (localctx IColumn_constraintContext)
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISigned_numberContext is an interface to support dynamic dispatch.
@@ -6239,23 +6718,28 @@ type ISigned_numberContext interface {
}
type Signed_numberContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySigned_numberContext() *Signed_numberContext {
var p = new(Signed_numberContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_signed_number
return p
}
+func InitEmptySigned_numberContext(p *Signed_numberContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_signed_number
+}
+
func (*Signed_numberContext) IsSigned_numberContext() {}
func NewSigned_numberContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Signed_numberContext {
var p = new(Signed_numberContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_signed_number
@@ -6298,32 +6782,16 @@ func (s *Signed_numberContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Signed_number() (localctx ISigned_numberContext) {
- this := p
- _ = this
-
localctx = NewSigned_numberContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 36, SQLiteParserRULE_signed_number)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(555)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPLUS || _la == SQLiteParserMINUS {
@@ -6343,9 +6811,23 @@ func (p *SQLiteParser) Signed_number() (localctx ISigned_numberContext) {
{
p.SetState(557)
p.Match(SQLiteParserNUMERIC_LITERAL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_constraintContext is an interface to support dynamic dispatch.
@@ -6380,23 +6862,28 @@ type ITable_constraintContext interface {
}
type Table_constraintContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_constraintContext() *Table_constraintContext {
var p = new(Table_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_constraint
return p
}
+func InitEmptyTable_constraintContext(p *Table_constraintContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_constraint
+}
+
func (*Table_constraintContext) IsTable_constraintContext() {}
func NewTable_constraintContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_constraintContext {
var p = new(Table_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_constraint
@@ -6613,38 +7100,26 @@ func (s *Table_constraintContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
- this := p
- _ = this
-
localctx = NewTable_constraintContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 38, SQLiteParserRULE_table_constraint)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(561)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCONSTRAINT_ {
{
p.SetState(559)
p.Match(SQLiteParserCONSTRAINT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(560)
@@ -6654,35 +7129,58 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
}
p.SetState(600)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserPRIMARY_, SQLiteParserUNIQUE_:
p.SetState(566)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserPRIMARY_:
{
p.SetState(563)
p.Match(SQLiteParserPRIMARY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(564)
p.Match(SQLiteParserKEY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserUNIQUE_:
{
p.SetState(565)
p.Match(SQLiteParserUNIQUE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
{
p.SetState(568)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(569)
@@ -6690,12 +7188,19 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
}
p.SetState(574)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(570)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(571)
@@ -6704,14 +7209,24 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
p.SetState(576)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(577)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(579)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserON_ {
@@ -6726,10 +7241,18 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
{
p.SetState(581)
p.Match(SQLiteParserCHECK_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(582)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(583)
@@ -6738,20 +7261,36 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
{
p.SetState(584)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserFOREIGN_:
{
p.SetState(586)
p.Match(SQLiteParserFOREIGN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(587)
p.Match(SQLiteParserKEY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(588)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(589)
@@ -6759,12 +7298,19 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
}
p.SetState(594)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(590)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(591)
@@ -6773,11 +7319,18 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
p.SetState(596)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(597)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(598)
@@ -6785,10 +7338,21 @@ func (p *SQLiteParser) Table_constraint() (localctx ITable_constraintContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IForeign_key_clauseContext is an interface to support dynamic dispatch.
@@ -6842,23 +7406,28 @@ type IForeign_key_clauseContext interface {
}
type Foreign_key_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyForeign_key_clauseContext() *Foreign_key_clauseContext {
var p = new(Foreign_key_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_foreign_key_clause
return p
}
+func InitEmptyForeign_key_clauseContext(p *Foreign_key_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_foreign_key_clause
+}
+
func (*Foreign_key_clauseContext) IsForeign_key_clauseContext() {}
func NewForeign_key_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Foreign_key_clauseContext {
var p = new(Foreign_key_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_foreign_key_clause
@@ -7115,33 +7684,18 @@ func (s *Foreign_key_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext) {
- this := p
- _ = this
-
localctx = NewForeign_key_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 40, SQLiteParserRULE_foreign_key_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(602)
p.Match(SQLiteParserREFERENCES_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(603)
@@ -7149,12 +7703,19 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
}
p.SetState(615)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
p.SetState(604)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(605)
@@ -7162,12 +7723,19 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
}
p.SetState(610)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(606)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(607)
@@ -7176,27 +7744,44 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
p.SetState(612)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(613)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
p.SetState(631)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserMATCH_ || _la == SQLiteParserON_ {
p.SetState(629)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserON_:
{
p.SetState(617)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(618)
@@ -7211,12 +7796,19 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
}
p.SetState(625)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserSET_:
{
p.SetState(619)
p.Match(SQLiteParserSET_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(620)
@@ -7234,32 +7826,53 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
{
p.SetState(621)
p.Match(SQLiteParserCASCADE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserRESTRICT_:
{
p.SetState(622)
p.Match(SQLiteParserRESTRICT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserNO_:
{
p.SetState(623)
p.Match(SQLiteParserNO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(624)
p.Match(SQLiteParserACTION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
case SQLiteParserMATCH_:
{
p.SetState(627)
p.Match(SQLiteParserMATCH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(628)
@@ -7267,40 +7880,62 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
p.SetState(633)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
p.SetState(642)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 70, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 70, p.GetParserRuleContext()) == 1 {
p.SetState(635)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(634)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(637)
p.Match(SQLiteParserDEFERRABLE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(640)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserINITIALLY_ {
{
p.SetState(638)
p.Match(SQLiteParserINITIALLY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(639)
@@ -7316,9 +7951,21 @@ func (p *SQLiteParser) Foreign_key_clause() (localctx IForeign_key_clauseContext
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IConflict_clauseContext is an interface to support dynamic dispatch.
@@ -7342,23 +7989,28 @@ type IConflict_clauseContext interface {
}
type Conflict_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyConflict_clauseContext() *Conflict_clauseContext {
var p = new(Conflict_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_conflict_clause
return p
}
+func InitEmptyConflict_clauseContext(p *Conflict_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_conflict_clause
+}
+
func (*Conflict_clauseContext) IsConflict_clauseContext() {}
func NewConflict_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Conflict_clauseContext {
var p = new(Conflict_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_conflict_clause
@@ -7417,37 +8069,26 @@ func (s *Conflict_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Conflict_clause() (localctx IConflict_clauseContext) {
- this := p
- _ = this
-
localctx = NewConflict_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 42, SQLiteParserRULE_conflict_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(644)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(645)
p.Match(SQLiteParserCONFLICT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(646)
@@ -7461,7 +8102,17 @@ func (p *SQLiteParser) Conflict_clause() (localctx IConflict_clauseContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICreate_trigger_stmtContext is an interface to support dynamic dispatch.
@@ -7519,23 +8170,28 @@ type ICreate_trigger_stmtContext interface {
}
type Create_trigger_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCreate_trigger_stmtContext() *Create_trigger_stmtContext {
var p = new(Create_trigger_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_create_trigger_stmt
return p
}
+func InitEmptyCreate_trigger_stmtContext(p *Create_trigger_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_create_trigger_stmt
+}
+
func (*Create_trigger_stmtContext) IsCreate_trigger_stmtContext() {}
func NewCreate_trigger_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Create_trigger_stmtContext {
var p = new(Create_trigger_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_create_trigger_stmt
@@ -7943,36 +8599,24 @@ func (s *Create_trigger_stmtContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtContext) {
- this := p
- _ = this
-
localctx = NewCreate_trigger_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 44, SQLiteParserRULE_create_trigger_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(648)
p.Match(SQLiteParserCREATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(650)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTEMP_ || _la == SQLiteParserTEMPORARY_ {
@@ -7992,29 +8636,47 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
{
p.SetState(652)
p.Match(SQLiteParserTRIGGER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(656)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 72, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 72, p.GetParserRuleContext()) == 1 {
{
p.SetState(653)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(654)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(655)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(661)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 73, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 73, p.GetParserRuleContext()) == 1 {
{
p.SetState(658)
p.Schema_name()
@@ -8022,8 +8684,14 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
{
p.SetState(659)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(663)
@@ -8031,28 +8699,46 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
}
p.SetState(668)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserBEFORE_:
{
p.SetState(664)
p.Match(SQLiteParserBEFORE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserAFTER_:
{
p.SetState(665)
p.Match(SQLiteParserAFTER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserINSTEAD_:
{
p.SetState(666)
p.Match(SQLiteParserINSTEAD_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(667)
p.Match(SQLiteParserOF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserDELETE_, SQLiteParserINSERT_, SQLiteParserUPDATE_:
@@ -8061,33 +8747,55 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
}
p.SetState(684)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserDELETE_:
{
p.SetState(670)
p.Match(SQLiteParserDELETE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserINSERT_:
{
p.SetState(671)
p.Match(SQLiteParserINSERT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserUPDATE_:
{
p.SetState(672)
p.Match(SQLiteParserUPDATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(682)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOF_ {
{
p.SetState(673)
p.Match(SQLiteParserOF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(674)
@@ -8095,12 +8803,19 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
}
p.SetState(679)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(675)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(676)
@@ -8109,17 +8824,25 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
p.SetState(681)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
{
p.SetState(686)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(687)
@@ -8127,31 +8850,53 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
}
p.SetState(691)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserFOR_ {
{
p.SetState(688)
p.Match(SQLiteParserFOR_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(689)
p.Match(SQLiteParserEACH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(690)
p.Match(SQLiteParserROW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
p.SetState(695)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHEN_ {
{
p.SetState(693)
p.Match(SQLiteParserWHEN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(694)
@@ -8162,15 +8907,26 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
{
p.SetState(697)
p.Match(SQLiteParserBEGIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(706)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
- for ok := true; ok; ok = _la == SQLiteParserDEFAULT_ || _la == SQLiteParserDELETE_ || ((int64((_la-90)) & ^0x3f) == 0 && ((int64(1)<<(_la-90))&4773820020239106049) != 0) {
+ for ok := true; ok; ok = _la == SQLiteParserDELETE_ || ((int64((_la-90)) & ^0x3f) == 0 && ((int64(1)<<(_la-90))&4773820020239106049) != 0) {
p.SetState(702)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 80, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 80, p.GetParserRuleContext()) {
case 1:
{
p.SetState(698)
@@ -8195,22 +8951,45 @@ func (p *SQLiteParser) Create_trigger_stmt() (localctx ICreate_trigger_stmtConte
p.Select_stmt()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
p.SetState(704)
p.Match(SQLiteParserSCOL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(708)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(710)
p.Match(SQLiteParserEND_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICreate_view_stmtContext is an interface to support dynamic dispatch.
@@ -8245,23 +9024,28 @@ type ICreate_view_stmtContext interface {
}
type Create_view_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCreate_view_stmtContext() *Create_view_stmtContext {
var p = new(Create_view_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_create_view_stmt
return p
}
+func InitEmptyCreate_view_stmtContext(p *Create_view_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_create_view_stmt
+}
+
func (*Create_view_stmtContext) IsCreate_view_stmtContext() {}
func NewCreate_view_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Create_view_stmtContext {
var p = new(Create_view_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_create_view_stmt
@@ -8433,36 +9217,24 @@ func (s *Create_view_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
- this := p
- _ = this
-
localctx = NewCreate_view_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 46, SQLiteParserRULE_create_view_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(712)
p.Match(SQLiteParserCREATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(714)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserTEMP_ || _la == SQLiteParserTEMPORARY_ {
@@ -8482,29 +9254,47 @@ func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
{
p.SetState(716)
p.Match(SQLiteParserVIEW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(720)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 83, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 83, p.GetParserRuleContext()) == 1 {
{
p.SetState(717)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(718)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(719)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(725)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 84, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 84, p.GetParserRuleContext()) == 1 {
{
p.SetState(722)
p.Schema_name()
@@ -8512,8 +9302,14 @@ func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
{
p.SetState(723)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(727)
@@ -8521,12 +9317,19 @@ func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
}
p.SetState(739)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
p.SetState(728)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(729)
@@ -8534,12 +9337,19 @@ func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
}
p.SetState(734)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(730)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(731)
@@ -8548,24 +9358,45 @@ func (p *SQLiteParser) Create_view_stmt() (localctx ICreate_view_stmtContext) {
p.SetState(736)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(737)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(741)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(742)
p.Select_stmt()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICreate_virtual_table_stmtContext is an interface to support dynamic dispatch.
@@ -8599,23 +9430,28 @@ type ICreate_virtual_table_stmtContext interface {
}
type Create_virtual_table_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCreate_virtual_table_stmtContext() *Create_virtual_table_stmtContext {
var p = new(Create_virtual_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_create_virtual_table_stmt
return p
}
+func InitEmptyCreate_virtual_table_stmtContext(p *Create_virtual_table_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_create_virtual_table_stmt
+}
+
func (*Create_virtual_table_stmtContext) IsCreate_virtual_table_stmtContext() {}
func NewCreate_virtual_table_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Create_virtual_table_stmtContext {
var p = new(Create_virtual_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_create_virtual_table_stmt
@@ -8783,64 +9619,71 @@ func (s *Create_virtual_table_stmtContext) ExitRule(listener antlr.ParseTreeList
}
func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_table_stmtContext) {
- this := p
- _ = this
-
localctx = NewCreate_virtual_table_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 48, SQLiteParserRULE_create_virtual_table_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(744)
p.Match(SQLiteParserCREATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(745)
p.Match(SQLiteParserVIRTUAL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(746)
p.Match(SQLiteParserTABLE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(750)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 87, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 87, p.GetParserRuleContext()) == 1 {
{
p.SetState(747)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(748)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(749)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(755)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 88, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 88, p.GetParserRuleContext()) == 1 {
{
p.SetState(752)
p.Schema_name()
@@ -8848,8 +9691,14 @@ func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_tab
{
p.SetState(753)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(757)
@@ -8858,6 +9707,10 @@ func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_tab
{
p.SetState(758)
p.Match(SQLiteParserUSING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(759)
@@ -8865,12 +9718,19 @@ func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_tab
}
p.SetState(771)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
p.SetState(760)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(761)
@@ -8878,12 +9738,19 @@ func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_tab
}
p.SetState(766)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(762)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(763)
@@ -8892,16 +9759,33 @@ func (p *SQLiteParser) Create_virtual_table_stmt() (localctx ICreate_virtual_tab
p.SetState(768)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(769)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IWith_clauseContext is an interface to support dynamic dispatch.
@@ -8932,23 +9816,28 @@ type IWith_clauseContext interface {
}
type With_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyWith_clauseContext() *With_clauseContext {
var p = new(With_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_with_clause
return p
}
+func InitEmptyWith_clauseContext(p *With_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_with_clause
+}
+
func (*With_clauseContext) IsWith_clauseContext() {}
func NewWith_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *With_clauseContext {
var p = new(With_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_with_clause
@@ -9101,43 +9990,34 @@ func (s *With_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) With_clause() (localctx IWith_clauseContext) {
- this := p
- _ = this
-
localctx = NewWith_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 50, SQLiteParserRULE_with_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(773)
p.Match(SQLiteParserWITH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(775)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 91, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 91, p.GetParserRuleContext()) == 1 {
{
p.SetState(774)
p.Match(SQLiteParserRECURSIVE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(777)
@@ -9146,10 +10026,18 @@ func (p *SQLiteParser) With_clause() (localctx IWith_clauseContext) {
{
p.SetState(778)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(779)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(780)
@@ -9158,15 +10046,26 @@ func (p *SQLiteParser) With_clause() (localctx IWith_clauseContext) {
{
p.SetState(781)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(791)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(782)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(783)
@@ -9175,10 +10074,18 @@ func (p *SQLiteParser) With_clause() (localctx IWith_clauseContext) {
{
p.SetState(784)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(785)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(786)
@@ -9187,14 +10094,31 @@ func (p *SQLiteParser) With_clause() (localctx IWith_clauseContext) {
{
p.SetState(787)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(793)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICte_table_nameContext is an interface to support dynamic dispatch.
@@ -9218,23 +10142,28 @@ type ICte_table_nameContext interface {
}
type Cte_table_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCte_table_nameContext() *Cte_table_nameContext {
var p = new(Cte_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_cte_table_name
return p
}
+func InitEmptyCte_table_nameContext(p *Cte_table_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_cte_table_name
+}
+
func (*Cte_table_nameContext) IsCte_table_nameContext() {}
func NewCte_table_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Cte_table_nameContext {
var p = new(Cte_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_cte_table_name
@@ -9338,29 +10267,10 @@ func (s *Cte_table_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Cte_table_name() (localctx ICte_table_nameContext) {
- this := p
- _ = this
-
localctx = NewCte_table_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 52, SQLiteParserRULE_cte_table_name)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(794)
@@ -9368,12 +10278,19 @@ func (p *SQLiteParser) Cte_table_name() (localctx ICte_table_nameContext) {
}
p.SetState(806)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
p.SetState(795)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(796)
@@ -9381,12 +10298,19 @@ func (p *SQLiteParser) Cte_table_name() (localctx ICte_table_nameContext) {
}
p.SetState(801)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(797)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(798)
@@ -9395,16 +10319,33 @@ func (p *SQLiteParser) Cte_table_name() (localctx ICte_table_nameContext) {
p.SetState(803)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(804)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IRecursive_cteContext is an interface to support dynamic dispatch.
@@ -9429,23 +10370,28 @@ type IRecursive_cteContext interface {
}
type Recursive_cteContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyRecursive_cteContext() *Recursive_cteContext {
var p = new(Recursive_cteContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_recursive_cte
return p
}
+func InitEmptyRecursive_cteContext(p *Recursive_cteContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_recursive_cte
+}
+
func (*Recursive_cteContext) IsRecursive_cteContext() {}
func NewRecursive_cteContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Recursive_cteContext {
var p = new(Recursive_cteContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_recursive_cte
@@ -9544,29 +10490,10 @@ func (s *Recursive_cteContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Recursive_cte() (localctx IRecursive_cteContext) {
- this := p
- _ = this
-
localctx = NewRecursive_cteContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 54, SQLiteParserRULE_recursive_cte)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(808)
@@ -9575,10 +10502,18 @@ func (p *SQLiteParser) Recursive_cte() (localctx IRecursive_cteContext) {
{
p.SetState(809)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(810)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(811)
@@ -9587,15 +10522,26 @@ func (p *SQLiteParser) Recursive_cte() (localctx IRecursive_cteContext) {
{
p.SetState(812)
p.Match(SQLiteParserUNION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(814)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserALL_ {
{
p.SetState(813)
p.Match(SQLiteParserALL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -9606,9 +10552,23 @@ func (p *SQLiteParser) Recursive_cte() (localctx IRecursive_cteContext) {
{
p.SetState(817)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICommon_table_expressionContext is an interface to support dynamic dispatch.
@@ -9636,23 +10596,28 @@ type ICommon_table_expressionContext interface {
}
type Common_table_expressionContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCommon_table_expressionContext() *Common_table_expressionContext {
var p = new(Common_table_expressionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_common_table_expression
return p
}
+func InitEmptyCommon_table_expressionContext(p *Common_table_expressionContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_common_table_expression
+}
+
func (*Common_table_expressionContext) IsCommon_table_expressionContext() {}
func NewCommon_table_expressionContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Common_table_expressionContext {
var p = new(Common_table_expressionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_common_table_expression
@@ -9784,29 +10749,10 @@ func (s *Common_table_expressionContext) ExitRule(listener antlr.ParseTreeListen
}
func (p *SQLiteParser) Common_table_expression() (localctx ICommon_table_expressionContext) {
- this := p
- _ = this
-
localctx = NewCommon_table_expressionContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 56, SQLiteParserRULE_common_table_expression)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(819)
@@ -9814,12 +10760,19 @@ func (p *SQLiteParser) Common_table_expression() (localctx ICommon_table_express
}
p.SetState(831)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
p.SetState(820)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(821)
@@ -9827,12 +10780,19 @@ func (p *SQLiteParser) Common_table_expression() (localctx ICommon_table_express
}
p.SetState(826)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(822)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(823)
@@ -9841,21 +10801,36 @@ func (p *SQLiteParser) Common_table_expression() (localctx ICommon_table_express
p.SetState(828)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(829)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(833)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(834)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(835)
@@ -9864,9 +10839,23 @@ func (p *SQLiteParser) Common_table_expression() (localctx ICommon_table_express
{
p.SetState(836)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IReturning_clauseContext is an interface to support dynamic dispatch.
@@ -9894,23 +10883,28 @@ type IReturning_clauseContext interface {
}
type Returning_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyReturning_clauseContext() *Returning_clauseContext {
var p = new(Returning_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_returning_clause
return p
}
+func InitEmptyReturning_clauseContext(p *Returning_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_returning_clause
+}
+
func (*Returning_clauseContext) IsReturning_clauseContext() {}
func NewReturning_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Returning_clauseContext {
var p = new(Returning_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_returning_clause
@@ -10051,43 +11045,35 @@ func (s *Returning_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Returning_clause() (localctx IReturning_clauseContext) {
- this := p
- _ = this
-
localctx = NewReturning_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 58, SQLiteParserRULE_returning_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(838)
p.Match(SQLiteParserRETURNING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(847)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserSTAR:
{
p.SetState(839)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
@@ -10097,17 +11083,27 @@ func (p *SQLiteParser) Returning_clause() (localctx IReturning_clauseContext) {
}
p.SetState(845)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
p.SetState(842)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
p.SetState(841)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -10119,25 +11115,40 @@ func (p *SQLiteParser) Returning_clause() (localctx IReturning_clauseContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
p.SetState(862)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(849)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(858)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserSTAR:
{
p.SetState(850)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
@@ -10147,17 +11158,27 @@ func (p *SQLiteParser) Returning_clause() (localctx IReturning_clauseContext) {
}
p.SetState(856)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
p.SetState(853)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
p.SetState(852)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -10169,15 +11190,29 @@ func (p *SQLiteParser) Returning_clause() (localctx IReturning_clauseContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
p.SetState(864)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IDelete_stmtContext is an interface to support dynamic dispatch.
@@ -10201,23 +11236,28 @@ type IDelete_stmtContext interface {
}
type Delete_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyDelete_stmtContext() *Delete_stmtContext {
var p = new(Delete_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_delete_stmt
return p
}
+func InitEmptyDelete_stmtContext(p *Delete_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_delete_stmt
+}
+
func (*Delete_stmtContext) IsDelete_stmtContext() {}
func NewDelete_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Delete_stmtContext {
var p = new(Delete_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_delete_stmt
@@ -10324,32 +11364,16 @@ func (s *Delete_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Delete_stmt() (localctx IDelete_stmtContext) {
- this := p
- _ = this
-
localctx = NewDelete_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 60, SQLiteParserRULE_delete_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(866)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
@@ -10362,10 +11386,18 @@ func (p *SQLiteParser) Delete_stmt() (localctx IDelete_stmtContext) {
{
p.SetState(868)
p.Match(SQLiteParserDELETE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(869)
p.Match(SQLiteParserFROM_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(870)
@@ -10373,12 +11405,19 @@ func (p *SQLiteParser) Delete_stmt() (localctx IDelete_stmtContext) {
}
p.SetState(873)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
p.SetState(871)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(872)
@@ -10388,6 +11427,9 @@ func (p *SQLiteParser) Delete_stmt() (localctx IDelete_stmtContext) {
}
p.SetState(876)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserRETURNING_ {
@@ -10398,7 +11440,17 @@ func (p *SQLiteParser) Delete_stmt() (localctx IDelete_stmtContext) {
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IDelete_stmt_limitedContext is an interface to support dynamic dispatch.
@@ -10424,23 +11476,28 @@ type IDelete_stmt_limitedContext interface {
}
type Delete_stmt_limitedContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyDelete_stmt_limitedContext() *Delete_stmt_limitedContext {
var p = new(Delete_stmt_limitedContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_delete_stmt_limited
return p
}
+func InitEmptyDelete_stmt_limitedContext(p *Delete_stmt_limitedContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_delete_stmt_limited
+}
+
func (*Delete_stmt_limitedContext) IsDelete_stmt_limitedContext() {}
func NewDelete_stmt_limitedContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Delete_stmt_limitedContext {
var p = new(Delete_stmt_limitedContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_delete_stmt_limited
@@ -10579,32 +11636,16 @@ func (s *Delete_stmt_limitedContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedContext) {
- this := p
- _ = this
-
localctx = NewDelete_stmt_limitedContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 62, SQLiteParserRULE_delete_stmt_limited)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
p.SetState(879)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
@@ -10617,10 +11658,18 @@ func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedConte
{
p.SetState(881)
p.Match(SQLiteParserDELETE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(882)
p.Match(SQLiteParserFROM_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(883)
@@ -10628,12 +11677,19 @@ func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedConte
}
p.SetState(886)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
p.SetState(884)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(885)
@@ -10643,11 +11699,17 @@ func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedConte
}
p.SetState(892)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserLIMIT_ || _la == SQLiteParserORDER_ {
p.SetState(889)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
@@ -10665,6 +11727,9 @@ func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedConte
}
p.SetState(895)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserRETURNING_ {
@@ -10675,7 +11740,17 @@ func (p *SQLiteParser) Delete_stmt_limited() (localctx IDelete_stmt_limitedConte
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IDetach_stmtContext is an interface to support dynamic dispatch.
@@ -10695,23 +11770,28 @@ type IDetach_stmtContext interface {
}
type Detach_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyDetach_stmtContext() *Detach_stmtContext {
var p = new(Detach_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_detach_stmt
return p
}
+func InitEmptyDetach_stmtContext(p *Detach_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_detach_stmt
+}
+
func (*Detach_stmtContext) IsDetach_stmtContext() {}
func NewDetach_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Detach_stmtContext {
var p = new(Detach_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_detach_stmt
@@ -10766,49 +11846,49 @@ func (s *Detach_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Detach_stmt() (localctx IDetach_stmtContext) {
- this := p
- _ = this
-
localctx = NewDetach_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 64, SQLiteParserRULE_detach_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(897)
p.Match(SQLiteParserDETACH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(899)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 113, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 113, p.GetParserRuleContext()) == 1 {
{
p.SetState(898)
p.Match(SQLiteParserDATABASE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(901)
p.Schema_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IDrop_stmtContext is an interface to support dynamic dispatch.
@@ -10841,24 +11921,29 @@ type IDrop_stmtContext interface {
}
type Drop_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
object antlr.Token
}
func NewEmptyDrop_stmtContext() *Drop_stmtContext {
var p = new(Drop_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_drop_stmt
return p
}
+func InitEmptyDrop_stmtContext(p *Drop_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_drop_stmt
+}
+
func (*Drop_stmtContext) IsDrop_stmtContext() {}
func NewDrop_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Drop_stmtContext {
var p = new(Drop_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_drop_stmt
@@ -10957,33 +12042,18 @@ func (s *Drop_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Drop_stmt() (localctx IDrop_stmtContext) {
- this := p
- _ = this
-
localctx = NewDrop_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 66, SQLiteParserRULE_drop_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(903)
p.Match(SQLiteParserDROP_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(904)
@@ -11006,21 +12076,31 @@ func (p *SQLiteParser) Drop_stmt() (localctx IDrop_stmtContext) {
p.SetState(907)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 114, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 114, p.GetParserRuleContext()) == 1 {
{
p.SetState(905)
p.Match(SQLiteParserIF_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(906)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(912)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 115, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 115, p.GetParserRuleContext()) == 1 {
{
p.SetState(909)
p.Schema_name()
@@ -11028,15 +12108,31 @@ func (p *SQLiteParser) Drop_stmt() (localctx IDrop_stmtContext) {
{
p.SetState(910)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(914)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IExprContext is an interface to support dynamic dispatch.
@@ -11050,23 +12146,28 @@ type IExprContext interface {
}
type ExprContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyExprContext() *ExprContext {
var p = new(ExprContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_expr
return p
}
+func InitEmptyExprContext(p *ExprContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_expr
+}
+
func (*ExprContext) IsExprContext() {}
func NewExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *ExprContext {
var p = new(ExprContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_expr
@@ -11076,8 +12177,8 @@ func NewExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokin
func (s *ExprContext) GetParser() antlr.Parser { return s.parser }
-func (s *ExprContext) CopyFrom(ctx *ExprContext) {
- s.BaseParserRuleContext.CopyFrom(ctx.BaseParserRuleContext)
+func (s *ExprContext) CopyAll(ctx *ExprContext) {
+ s.CopyFrom(&ctx.BaseParserRuleContext)
}
func (s *ExprContext) GetRuleContext() antlr.RuleContext {
@@ -11089,15 +12190,15 @@ func (s *ExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) s
}
type Expr_caseContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_caseContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_caseContext {
var p = new(Expr_caseContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11188,15 +12289,15 @@ func (s *Expr_caseContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_raiseContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_raiseContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_raiseContext {
var p = new(Expr_raiseContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11234,15 +12335,15 @@ func (s *Expr_raiseContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_functionContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_functionContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_functionContext {
var p = new(Expr_functionContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11377,15 +12478,15 @@ func (s *Expr_functionContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_comparisonContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_comparisonContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_comparisonContext {
var p = new(Expr_comparisonContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11528,15 +12629,15 @@ func (s *Expr_comparisonContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_boolContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_boolContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_boolContext {
var p = new(Expr_boolContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11607,15 +12708,15 @@ func (s *Expr_boolContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_binaryContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_binaryContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_binaryContext {
var p = new(Expr_binaryContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11710,15 +12811,15 @@ func (s *Expr_binaryContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_literalContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_literalContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_literalContext {
var p = new(Expr_literalContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11756,15 +12857,15 @@ func (s *Expr_literalContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_castContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_castContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_castContext {
var p = new(Expr_castContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -11834,15 +12935,15 @@ func (s *Expr_castContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_in_selectContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_in_selectContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_in_selectContext {
var p = new(Expr_in_selectContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12001,15 +13102,15 @@ func (s *Expr_in_selectContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_listContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_listContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_listContext {
var p = new(Expr_listContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12088,15 +13189,15 @@ func (s *Expr_listContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_betweenContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_betweenContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_betweenContext {
var p = new(Expr_betweenContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12171,15 +13272,15 @@ func (s *Expr_betweenContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_collateContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_collateContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_collateContext {
var p = new(Expr_collateContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12237,15 +13338,15 @@ func (s *Expr_collateContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_qualified_column_nameContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_qualified_column_nameContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_qualified_column_nameContext {
var p = new(Expr_qualified_column_nameContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12323,15 +13424,15 @@ func (s *Expr_qualified_column_nameContext) ExitRule(listener antlr.ParseTreeLis
}
type Expr_unaryContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_unaryContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_unaryContext {
var p = new(Expr_unaryContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12385,15 +13486,15 @@ func (s *Expr_unaryContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_null_compContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_null_compContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_null_compContext {
var p = new(Expr_null_compContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12447,15 +13548,15 @@ func (s *Expr_null_compContext) ExitRule(listener antlr.ParseTreeListener) {
}
type Expr_bindContext struct {
- *ExprContext
+ ExprContext
}
func NewExpr_bindContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *Expr_bindContext {
var p = new(Expr_bindContext)
- p.ExprContext = NewEmptyExprContext()
+ InitEmptyExprContext(&p.ExprContext)
p.parser = parser
- p.CopyFrom(ctx.(*ExprContext))
+ p.CopyAll(ctx.(*ExprContext))
return p
}
@@ -12489,10 +13590,8 @@ func (p *SQLiteParser) Expr() (localctx IExprContext) {
}
func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
- this := p
- _ = this
-
var _parentctx antlr.ParserRuleContext = p.GetParserRuleContext()
+
_parentState := p.GetState()
localctx = NewExprContext(p, p.GetParserRuleContext(), _parentState)
var _prevctx IExprContext = localctx
@@ -12501,28 +13600,16 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.EnterRecursionRule(localctx, 68, SQLiteParserRULE_expr, _p)
var _la int
- defer func() {
- p.UnrollRecursionContexts(_parentctx)
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
p.SetState(1005)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 129, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 129, p.GetParserRuleContext()) {
case 1:
localctx = NewExpr_literalContext(p, localctx)
p.SetParserRuleContext(localctx)
@@ -12540,6 +13627,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(918)
p.Match(SQLiteParserNUMBERED_BIND_PARAMETER)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
@@ -12549,6 +13640,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(919)
p.Match(SQLiteParserNAMED_BIND_PARAMETER)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 4:
@@ -12558,11 +13653,11 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(928)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 117, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 117, p.GetParserRuleContext()) == 1 {
p.SetState(923)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 116, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 116, p.GetParserRuleContext()) == 1 {
{
p.SetState(920)
p.Schema_name()
@@ -12570,8 +13665,14 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(921)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(925)
@@ -12580,8 +13681,14 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(926)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(930)
@@ -12612,21 +13719,33 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(935)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(948)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
p.SetState(937)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 118, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 118, p.GetParserRuleContext()) == 1 {
{
p.SetState(936)
p.Match(SQLiteParserDISTINCT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(939)
@@ -12634,12 +13753,19 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
}
p.SetState(944)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(940)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(941)
@@ -12648,6 +13774,9 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(946)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
@@ -12655,6 +13784,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(947)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCLOSE_PAR:
@@ -12664,26 +13797,34 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(950)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(952)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 121, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 121, p.GetParserRuleContext()) == 1 {
{
p.SetState(951)
p.Filter_clause()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(955)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 122, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 122, p.GetParserRuleContext()) == 1 {
{
p.SetState(954)
p.Over_clause()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
case 7:
@@ -12693,6 +13834,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(957)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(958)
@@ -12700,12 +13845,19 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
}
p.SetState(963)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(959)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(960)
@@ -12714,11 +13866,18 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(965)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
p.SetState(966)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 8:
@@ -12728,10 +13887,18 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(968)
p.Match(SQLiteParserCAST_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(969)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(970)
@@ -12740,6 +13907,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(971)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(972)
@@ -12748,6 +13919,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(973)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 9:
@@ -12756,29 +13931,47 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
_prevctx = localctx
p.SetState(979)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserEXISTS_ || _la == SQLiteParserNOT_ {
p.SetState(976)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(975)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(978)
p.Match(SQLiteParserEXISTS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(981)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(982)
@@ -12787,6 +13980,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(983)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 10:
@@ -12796,25 +13993,38 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(985)
p.Match(SQLiteParserCASE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(987)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 126, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 126, p.GetParserRuleContext()) == 1 {
{
p.SetState(986)
p.expr(0)
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
p.SetState(994)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for ok := true; ok; ok = _la == SQLiteParserWHEN_ {
{
p.SetState(989)
p.Match(SQLiteParserWHEN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(990)
@@ -12823,6 +14033,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(991)
p.Match(SQLiteParserTHEN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(992)
@@ -12831,16 +14045,26 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(996)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
p.SetState(1000)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserELSE_ {
{
p.SetState(998)
p.Match(SQLiteParserELSE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(999)
@@ -12851,6 +14075,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1002)
p.Match(SQLiteParserEND_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 11:
@@ -12862,12 +14090,19 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.Raise_function()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
p.GetParserRuleContext().SetStop(p.GetTokenStream().LT(-1))
p.SetState(1126)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 145, p.GetParserRuleContext())
-
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 145, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
for _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
if _alt == 1 {
if p.GetParseListeners() != nil {
@@ -12876,18 +14111,27 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
_prevctx = localctx
p.SetState(1124)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 144, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 144, p.GetParserRuleContext()) {
case 1:
localctx = NewExpr_binaryContext(p, NewExprContext(p, _parentctx, _parentState))
p.PushNewRecursionContext(localctx, _startState, SQLiteParserRULE_expr)
p.SetState(1007)
if !(p.Precpred(p.GetParserRuleContext(), 20)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 20)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 20)", ""))
+ goto errorExit
}
{
p.SetState(1008)
p.Match(SQLiteParserPIPE2)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1009)
@@ -12900,7 +14144,8 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1010)
if !(p.Precpred(p.GetParserRuleContext(), 19)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 19)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 19)", ""))
+ goto errorExit
}
{
p.SetState(1011)
@@ -12924,7 +14169,8 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1013)
if !(p.Precpred(p.GetParserRuleContext(), 18)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 18)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 18)", ""))
+ goto errorExit
}
{
p.SetState(1014)
@@ -12948,7 +14194,8 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1016)
if !(p.Precpred(p.GetParserRuleContext(), 17)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 17)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 17)", ""))
+ goto errorExit
}
{
p.SetState(1017)
@@ -12972,7 +14219,8 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1019)
if !(p.Precpred(p.GetParserRuleContext(), 16)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 16)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 16)", ""))
+ goto errorExit
}
{
p.SetState(1020)
@@ -12996,7 +14244,8 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1022)
if !(p.Precpred(p.GetParserRuleContext(), 15)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 15)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 15)", ""))
+ goto errorExit
}
{
p.SetState(1023)
@@ -13020,92 +14269,154 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1025)
if !(p.Precpred(p.GetParserRuleContext(), 14)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 14)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 14)", ""))
+ goto errorExit
}
p.SetState(1041)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 131, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 131, p.GetParserRuleContext()) {
case 1:
{
p.SetState(1026)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
{
p.SetState(1027)
p.Match(SQLiteParserEQ)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
{
p.SetState(1028)
p.Match(SQLiteParserNOT_EQ1)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 4:
{
p.SetState(1029)
p.Match(SQLiteParserNOT_EQ2)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 5:
{
p.SetState(1030)
p.Match(SQLiteParserIS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 6:
{
p.SetState(1031)
p.Match(SQLiteParserIS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1032)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 7:
p.SetState(1034)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(1033)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(1036)
p.Match(SQLiteParserIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 8:
{
p.SetState(1037)
p.Match(SQLiteParserLIKE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 9:
{
p.SetState(1038)
p.Match(SQLiteParserGLOB_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 10:
{
p.SetState(1039)
p.Match(SQLiteParserMATCH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 11:
{
p.SetState(1040)
p.Match(SQLiteParserREGEXP_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
p.SetState(1043)
@@ -13118,11 +14429,16 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1044)
if !(p.Precpred(p.GetParserRuleContext(), 12)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 12)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 12)", ""))
+ goto errorExit
}
{
p.SetState(1045)
p.Match(SQLiteParserAND_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1046)
@@ -13135,11 +14451,16 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1047)
if !(p.Precpred(p.GetParserRuleContext(), 11)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 11)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 11)", ""))
+ goto errorExit
}
{
p.SetState(1048)
p.Match(SQLiteParserOR_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1049)
@@ -13152,22 +14473,34 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1050)
if !(p.Precpred(p.GetParserRuleContext(), 4)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 4)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 4)", ""))
+ goto errorExit
}
p.SetState(1052)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(1051)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(1054)
p.Match(SQLiteParserBETWEEN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1055)
@@ -13176,6 +14509,10 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1056)
p.Match(SQLiteParserAND_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1057)
@@ -13188,53 +14525,82 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1059)
if !(p.Precpred(p.GetParserRuleContext(), 13)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 13)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 13)", ""))
+ goto errorExit
}
p.SetState(1061)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(1060)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
p.SetState(1063)
p.Match(SQLiteParserIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(1102)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 140, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 140, p.GetParserRuleContext()) {
case 1:
{
p.SetState(1064)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(1074)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 135, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 135, p.GetParserRuleContext()) == 1 {
{
p.SetState(1065)
p.Select_stmt()
}
- } else if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 135, p.GetParserRuleContext()) == 2 {
+ } else if p.HasError() { // JIM
+ goto errorExit
+ } else if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 135, p.GetParserRuleContext()) == 2 {
{
p.SetState(1066)
p.expr(0)
}
p.SetState(1071)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(1067)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1068)
@@ -13243,20 +14609,29 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1073)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(1076)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
p.SetState(1080)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 136, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 136, p.GetParserRuleContext()) == 1 {
{
p.SetState(1077)
p.Schema_name()
@@ -13264,8 +14639,14 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1078)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(1082)
@@ -13276,7 +14657,7 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1086)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 137, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 137, p.GetParserRuleContext()) == 1 {
{
p.SetState(1083)
p.Schema_name()
@@ -13284,8 +14665,14 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1084)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
p.SetState(1088)
@@ -13294,9 +14681,16 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1089)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(1098)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if ((int64((_la-3)) & ^0x3f) == 0 && ((int64(1)<<(_la-3))&-16776415) != 0) || ((int64((_la-67)) & ^0x3f) == 0 && ((int64(1)<<(_la-67))&-1) != 0) || ((int64((_la-131)) & ^0x3f) == 0 && ((int64(1)<<(_la-131))&9088264048033660927) != 0) {
@@ -13306,12 +14700,19 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
}
p.SetState(1095)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
p.SetState(1091)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1092)
@@ -13320,6 +14721,9 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1097)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
@@ -13327,8 +14731,14 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
{
p.SetState(1100)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
case 12:
@@ -13337,11 +14747,16 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1104)
if !(p.Precpred(p.GetParserRuleContext(), 7)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 7)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 7)", ""))
+ goto errorExit
}
{
p.SetState(1105)
p.Match(SQLiteParserCOLLATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1106)
@@ -13354,16 +14769,24 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1107)
if !(p.Precpred(p.GetParserRuleContext(), 6)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 6)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 6)", ""))
+ goto errorExit
}
p.SetState(1109)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNOT_ {
{
p.SetState(1108)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -13385,16 +14808,22 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1115)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 142, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 142, p.GetParserRuleContext()) == 1 {
{
p.SetState(1113)
p.Match(SQLiteParserESCAPE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1114)
p.expr(0)
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
case 14:
@@ -13403,47 +14832,86 @@ func (p *SQLiteParser) expr(_p int) (localctx IExprContext) {
p.SetState(1117)
if !(p.Precpred(p.GetParserRuleContext(), 5)) {
- panic(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 5)", ""))
+ p.SetError(antlr.NewFailedPredicateException(p, "p.Precpred(p.GetParserRuleContext(), 5)", ""))
+ goto errorExit
}
p.SetState(1122)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserISNULL_:
{
p.SetState(1118)
p.Match(SQLiteParserISNULL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserNOTNULL_:
{
p.SetState(1119)
p.Match(SQLiteParserNOTNULL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserNOT_:
{
p.SetState(1120)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1121)
p.Match(SQLiteParserNULL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
}
p.SetState(1128)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 145, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 145, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.UnrollRecursionContexts(_parentctx)
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IRaise_functionContext is an interface to support dynamic dispatch.
@@ -13469,23 +14937,28 @@ type IRaise_functionContext interface {
}
type Raise_functionContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyRaise_functionContext() *Raise_functionContext {
var p = new(Raise_functionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_raise_function
return p
}
+func InitEmptyRaise_functionContext(p *Raise_functionContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_raise_function
+}
+
func (*Raise_functionContext) IsRaise_functionContext() {}
func NewRaise_functionContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Raise_functionContext {
var p = new(Raise_functionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_raise_function
@@ -13564,46 +15037,42 @@ func (s *Raise_functionContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Raise_function() (localctx IRaise_functionContext) {
- this := p
- _ = this
-
localctx = NewRaise_functionContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 70, SQLiteParserRULE_raise_function)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(1129)
p.Match(SQLiteParserRAISE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1130)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
p.SetState(1135)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserIGNORE_:
{
p.SetState(1131)
p.Match(SQLiteParserIGNORE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserABORT_, SQLiteParserFAIL_, SQLiteParserROLLBACK_:
@@ -13621,6 +15090,10 @@ func (p *SQLiteParser) Raise_function() (localctx IRaise_functionContext) {
{
p.SetState(1133)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
p.SetState(1134)
@@ -13628,14 +15101,29 @@ func (p *SQLiteParser) Raise_function() (localctx IRaise_functionContext) {
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
{
p.SetState(1137)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ILiteral_valueContext is an interface to support dynamic dispatch.
@@ -13661,23 +15149,28 @@ type ILiteral_valueContext interface {
}
type Literal_valueContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyLiteral_valueContext() *Literal_valueContext {
var p = new(Literal_valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_literal_value
return p
}
+func InitEmptyLiteral_valueContext(p *Literal_valueContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_literal_value
+}
+
func (*Literal_valueContext) IsLiteral_valueContext() {}
func NewLiteral_valueContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Literal_valueContext {
var p = new(Literal_valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_literal_value
@@ -13744,29 +15237,10 @@ func (s *Literal_valueContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Literal_value() (localctx ILiteral_valueContext) {
- this := p
- _ = this
-
localctx = NewLiteral_valueContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 72, SQLiteParserRULE_literal_value)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
p.SetState(1139)
@@ -13780,7 +15254,17 @@ func (p *SQLiteParser) Literal_value() (localctx ILiteral_valueContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IInsert_stmtContext is an interface to support dynamic dispatch.
@@ -13815,34 +15299,39 @@ type IInsert_stmtContext interface {
AllExpr() []IExprContext
Expr(i int) IExprContext
Select_stmt() ISelect_stmtContext
+ DEFAULT_() antlr.TerminalNode
Upsert_clause() IUpsert_clauseContext
Returning_clause() IReturning_clauseContext
AllCOMMA() []antlr.TerminalNode
COMMA(i int) antlr.TerminalNode
- DEFAULT_() antlr.TerminalNode
// IsInsert_stmtContext differentiates from other interfaces.
IsInsert_stmtContext()
}
type Insert_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyInsert_stmtContext() *Insert_stmtContext {
var p = new(Insert_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_insert_stmt
return p
}
+func InitEmptyInsert_stmtContext(p *Insert_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_insert_stmt
+}
+
func (*Insert_stmtContext) IsInsert_stmtContext() {}
func NewInsert_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Insert_stmtContext {
var p = new(Insert_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_insert_stmt
@@ -14074,6 +15563,10 @@ func (s *Insert_stmtContext) Select_stmt() ISelect_stmtContext {
return t.(ISelect_stmtContext)
}
+func (s *Insert_stmtContext) DEFAULT_() antlr.TerminalNode {
+ return s.GetToken(SQLiteParserDEFAULT_, 0)
+}
+
func (s *Insert_stmtContext) Upsert_clause() IUpsert_clauseContext {
var t antlr.RuleContext
for _, ctx := range s.GetChildren() {
@@ -14114,10 +15607,6 @@ func (s *Insert_stmtContext) COMMA(i int) antlr.TerminalNode {
return s.GetToken(SQLiteParserCOMMA, i)
}
-func (s *Insert_stmtContext) DEFAULT_() antlr.TerminalNode {
- return s.GetToken(SQLiteParserDEFAULT_, 0)
-}
-
func (s *Insert_stmtContext) GetRuleContext() antlr.RuleContext {
return s
}
@@ -14139,287 +15628,401 @@ func (s *Insert_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Insert_stmt() (localctx IInsert_stmtContext) {
- this := p
- _ = this
-
localctx = NewInsert_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 74, SQLiteParserRULE_insert_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
+ p.EnterOuterAlt(localctx, 1)
+ p.SetState(1142)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
+ if _la == SQLiteParserWITH_ {
+ {
+ p.SetState(1141)
+ p.With_clause()
}
- }()
- p.SetState(1214)
+ }
+ p.SetState(1149)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
- switch p.GetTokenStream().LA(1) {
- case SQLiteParserINSERT_, SQLiteParserREPLACE_, SQLiteParserWITH_:
- p.EnterOuterAlt(localctx, 1)
- p.SetState(1142)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 148, p.GetParserRuleContext()) {
+ case 1:
+ {
+ p.SetState(1144)
+ p.Match(SQLiteParserINSERT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
+ }
- if _la == SQLiteParserWITH_ {
- {
- p.SetState(1141)
- p.With_clause()
+ case 2:
+ {
+ p.SetState(1145)
+ p.Match(SQLiteParserREPLACE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
+ }
+ case 3:
+ {
+ p.SetState(1146)
+ p.Match(SQLiteParserINSERT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1149)
- p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 148, p.GetParserRuleContext()) {
- case 1:
- {
- p.SetState(1144)
- p.Match(SQLiteParserINSERT_)
+ {
+ p.SetState(1147)
+ p.Match(SQLiteParserOR_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
+ }
+ {
+ p.SetState(1148)
+ _la = p.GetTokenStream().LA(1)
- case 2:
- {
- p.SetState(1145)
- p.Match(SQLiteParserREPLACE_)
+ if !(_la == SQLiteParserABORT_ || ((int64((_la-74)) & ^0x3f) == 0 && ((int64(1)<<(_la-74))&19140298416325121) != 0)) {
+ p.GetErrorHandler().RecoverInline(p)
+ } else {
+ p.GetErrorHandler().ReportMatch(p)
+ p.Consume()
}
+ }
- case 3:
- {
- p.SetState(1146)
- p.Match(SQLiteParserINSERT_)
- }
- {
- p.SetState(1147)
- p.Match(SQLiteParserOR_)
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
+ }
+ {
+ p.SetState(1151)
+ p.Match(SQLiteParserINTO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
+ }
+ p.SetState(1155)
+ p.GetErrorHandler().Sync(p)
+
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 149, p.GetParserRuleContext()) == 1 {
+ {
+ p.SetState(1152)
+ p.Schema_name()
+ }
+ {
+ p.SetState(1153)
+ p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
- {
- p.SetState(1148)
- _la = p.GetTokenStream().LA(1)
+ }
- if !(_la == SQLiteParserABORT_ || ((int64((_la-74)) & ^0x3f) == 0 && ((int64(1)<<(_la-74))&19140298416325121) != 0)) {
- p.GetErrorHandler().RecoverInline(p)
- } else {
- p.GetErrorHandler().ReportMatch(p)
- p.Consume()
- }
+ } else if p.HasError() { // JIM
+ goto errorExit
+ }
+ {
+ p.SetState(1157)
+ p.Table_name()
+ }
+ p.SetState(1160)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+
+ if _la == SQLiteParserAS_ {
+ {
+ p.SetState(1158)
+ p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
+ }
+ {
+ p.SetState(1159)
+ p.Table_alias()
+ }
+ }
+ p.SetState(1173)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+
+ if _la == SQLiteParserOPEN_PAR {
+ {
+ p.SetState(1162)
+ p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1151)
- p.Match(SQLiteParserINTO_)
+ p.SetState(1163)
+ p.Column_name()
}
- p.SetState(1155)
+ p.SetState(1168)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 149, p.GetParserRuleContext()) == 1 {
+ for _la == SQLiteParserCOMMA {
{
- p.SetState(1152)
- p.Schema_name()
+ p.SetState(1164)
+ p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1153)
- p.Match(SQLiteParserDOT)
+ p.SetState(1165)
+ p.Column_name()
}
+ p.SetState(1170)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1157)
- p.Table_name()
+ p.SetState(1171)
+ p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1160)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
- if _la == SQLiteParserAS_ {
- {
- p.SetState(1158)
- p.Match(SQLiteParserAS_)
+ }
+
+ p.SetState(1206)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 156, p.GetParserRuleContext()) {
+ case 1:
+ {
+ p.SetState(1175)
+ p.Match(SQLiteParserVALUES_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
- {
- p.SetState(1159)
- p.Table_alias()
+ }
+ {
+ p.SetState(1176)
+ p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
-
}
- p.SetState(1173)
+ {
+ p.SetState(1177)
+ p.expr(0)
+ }
+ p.SetState(1182)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
- if _la == SQLiteParserOPEN_PAR {
+ for _la == SQLiteParserCOMMA {
{
- p.SetState(1162)
- p.Match(SQLiteParserOPEN_PAR)
+ p.SetState(1178)
+ p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1163)
- p.Column_name()
+ p.SetState(1179)
+ p.expr(0)
}
- p.SetState(1168)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
- for _la == SQLiteParserCOMMA {
- {
- p.SetState(1164)
- p.Match(SQLiteParserCOMMA)
- }
- {
- p.SetState(1165)
- p.Column_name()
- }
-
- p.SetState(1170)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
+ p.SetState(1184)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
}
- {
- p.SetState(1171)
- p.Match(SQLiteParserCLOSE_PAR)
+ _la = p.GetTokenStream().LA(1)
+ }
+ {
+ p.SetState(1185)
+ p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
-
}
-
- p.SetState(1204)
+ p.SetState(1200)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 156, p.GetParserRuleContext()) {
- case 1:
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+
+ for _la == SQLiteParserCOMMA {
{
- p.SetState(1175)
- p.Match(SQLiteParserVALUES_)
+ p.SetState(1186)
+ p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1176)
+ p.SetState(1187)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1177)
+ p.SetState(1188)
p.expr(0)
}
- p.SetState(1182)
+ p.SetState(1193)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1178)
+ p.SetState(1189)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1179)
+ p.SetState(1190)
p.expr(0)
}
- p.SetState(1184)
+ p.SetState(1195)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1185)
+ p.SetState(1196)
p.Match(SQLiteParserCLOSE_PAR)
- }
- p.SetState(1200)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
-
- for _la == SQLiteParserCOMMA {
- {
- p.SetState(1186)
- p.Match(SQLiteParserCOMMA)
- }
- {
- p.SetState(1187)
- p.Match(SQLiteParserOPEN_PAR)
- }
- {
- p.SetState(1188)
- p.expr(0)
- }
- p.SetState(1193)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
-
- for _la == SQLiteParserCOMMA {
- {
- p.SetState(1189)
- p.Match(SQLiteParserCOMMA)
- }
- {
- p.SetState(1190)
- p.expr(0)
- }
-
- p.SetState(1195)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
- {
- p.SetState(1196)
- p.Match(SQLiteParserCLOSE_PAR)
- }
-
- p.SetState(1202)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
}
- case 2:
- {
- p.SetState(1203)
- p.Select_stmt()
+ p.SetState(1202)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
}
+ _la = p.GetTokenStream().LA(1)
+ }
+ case 2:
+ {
+ p.SetState(1203)
+ p.Select_stmt()
}
- p.SetState(1207)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
- if _la == SQLiteParserON_ {
- {
- p.SetState(1206)
- p.Upsert_clause()
+ case 3:
+ {
+ p.SetState(1204)
+ p.Match(SQLiteParserDEFAULT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
-
}
- p.SetState(1210)
- p.GetErrorHandler().Sync(p)
- _la = p.GetTokenStream().LA(1)
-
- if _la == SQLiteParserRETURNING_ {
- {
- p.SetState(1209)
- p.Returning_clause()
+ {
+ p.SetState(1205)
+ p.Match(SQLiteParserVALUES_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
}
-
}
- case SQLiteParserDEFAULT_:
- p.EnterOuterAlt(localctx, 2)
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
+ }
+ p.SetState(1209)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+
+ if _la == SQLiteParserON_ {
{
- p.SetState(1212)
- p.Match(SQLiteParserDEFAULT_)
+ p.SetState(1208)
+ p.Upsert_clause()
}
+
+ }
+ p.SetState(1212)
+ p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
+ _la = p.GetTokenStream().LA(1)
+
+ if _la == SQLiteParserRETURNING_ {
{
- p.SetState(1213)
- p.Match(SQLiteParserVALUES_)
+ p.SetState(1211)
+ p.Returning_clause()
}
- default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IUpsert_clauseContext is an interface to support dynamic dispatch.
@@ -14458,23 +16061,28 @@ type IUpsert_clauseContext interface {
}
type Upsert_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyUpsert_clauseContext() *Upsert_clauseContext {
var p = new(Upsert_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_upsert_clause
return p
}
+func InitEmptyUpsert_clauseContext(p *Upsert_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_upsert_clause
+}
+
func (*Upsert_clauseContext) IsUpsert_clauseContext() {}
func NewUpsert_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Upsert_clauseContext {
var p = new(Upsert_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_upsert_clause
@@ -14725,84 +16333,101 @@ func (s *Upsert_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Upsert_clause() (localctx IUpsert_clauseContext) {
- this := p
- _ = this
-
localctx = NewUpsert_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 76, SQLiteParserRULE_upsert_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1216)
+ p.SetState(1214)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1217)
+ p.SetState(1215)
p.Match(SQLiteParserCONFLICT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1232)
+ p.SetState(1230)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOPEN_PAR {
{
- p.SetState(1218)
+ p.SetState(1216)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1219)
+ p.SetState(1217)
p.Indexed_column()
}
- p.SetState(1224)
+ p.SetState(1222)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1220)
+ p.SetState(1218)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1221)
+ p.SetState(1219)
p.Indexed_column()
}
- p.SetState(1226)
+ p.SetState(1224)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1227)
+ p.SetState(1225)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1230)
+ p.SetState(1228)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
- p.SetState(1228)
+ p.SetState(1226)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1229)
+ p.SetState(1227)
p.expr(0)
}
@@ -14810,112 +16435,179 @@ func (p *SQLiteParser) Upsert_clause() (localctx IUpsert_clauseContext) {
}
{
- p.SetState(1234)
+ p.SetState(1232)
p.Match(SQLiteParserDO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1261)
+ p.SetState(1259)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserNOTHING_:
{
- p.SetState(1235)
+ p.SetState(1233)
p.Match(SQLiteParserNOTHING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserUPDATE_:
{
- p.SetState(1236)
+ p.SetState(1234)
p.Match(SQLiteParserUPDATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1237)
+ p.SetState(1235)
p.Match(SQLiteParserSET_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1240)
+ p.SetState(1238)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 163, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 162, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1238)
+ p.SetState(1236)
p.Column_name()
}
case 2:
{
- p.SetState(1239)
+ p.SetState(1237)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1242)
+ p.SetState(1240)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1243)
+ p.SetState(1241)
p.expr(0)
}
- p.SetState(1254)
+ p.SetState(1252)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1244)
+ p.SetState(1242)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1247)
+ p.SetState(1245)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 164, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 163, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1245)
+ p.SetState(1243)
p.Column_name()
}
case 2:
{
- p.SetState(1246)
+ p.SetState(1244)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1249)
+ p.SetState(1247)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1250)
+ p.SetState(1248)
p.expr(0)
}
- p.SetState(1256)
+ p.SetState(1254)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1259)
+ p.SetState(1257)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
- p.SetState(1257)
+ p.SetState(1255)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1258)
+ p.SetState(1256)
p.expr(0)
}
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IPragma_stmtContext is an interface to support dynamic dispatch.
@@ -14940,23 +16632,28 @@ type IPragma_stmtContext interface {
}
type Pragma_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyPragma_stmtContext() *Pragma_stmtContext {
var p = new(Pragma_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_pragma_stmt
return p
}
+func InitEmptyPragma_stmtContext(p *Pragma_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_pragma_stmt
+}
+
func (*Pragma_stmtContext) IsPragma_stmtContext() {}
func NewPragma_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Pragma_stmtContext {
var p = new(Pragma_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_pragma_stmt
@@ -15055,85 +16752,99 @@ func (s *Pragma_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Pragma_stmt() (localctx IPragma_stmtContext) {
- this := p
- _ = this
-
localctx = NewPragma_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 78, SQLiteParserRULE_pragma_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1263)
+ p.SetState(1261)
p.Match(SQLiteParserPRAGMA_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1267)
+ p.SetState(1265)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 168, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 167, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1264)
+ p.SetState(1262)
p.Schema_name()
}
{
- p.SetState(1265)
+ p.SetState(1263)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1269)
+ p.SetState(1267)
p.Pragma_name()
}
- p.SetState(1276)
+ p.SetState(1274)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserASSIGN:
{
- p.SetState(1270)
+ p.SetState(1268)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1271)
+ p.SetState(1269)
p.Pragma_value()
}
case SQLiteParserOPEN_PAR:
{
- p.SetState(1272)
+ p.SetState(1270)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1273)
+ p.SetState(1271)
p.Pragma_value()
}
{
- p.SetState(1274)
+ p.SetState(1272)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserDEFAULT_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXPLAIN_, SQLiteParserINSERT_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUPDATE_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWITH_:
+ case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXPLAIN_, SQLiteParserINSERT_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUPDATE_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWITH_:
default:
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IPragma_valueContext is an interface to support dynamic dispatch.
@@ -15153,23 +16864,28 @@ type IPragma_valueContext interface {
}
type Pragma_valueContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyPragma_valueContext() *Pragma_valueContext {
var p = new(Pragma_valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_pragma_value
return p
}
+func InitEmptyPragma_valueContext(p *Pragma_valueContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_pragma_value
+}
+
func (*Pragma_valueContext) IsPragma_valueContext() {}
func NewPragma_valueContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Pragma_valueContext {
var p = new(Pragma_valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_pragma_value
@@ -15236,55 +16952,55 @@ func (s *Pragma_valueContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Pragma_value() (localctx IPragma_valueContext) {
- this := p
- _ = this
-
localctx = NewPragma_valueContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 80, SQLiteParserRULE_pragma_value)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1281)
+ p.SetState(1279)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 170, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 169, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1278)
+ p.SetState(1276)
p.Signed_number()
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1279)
+ p.SetState(1277)
p.Name()
}
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1280)
+ p.SetState(1278)
p.Match(SQLiteParserSTRING_LITERAL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IReindex_stmtContext is an interface to support dynamic dispatch.
@@ -15307,23 +17023,28 @@ type IReindex_stmtContext interface {
}
type Reindex_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyReindex_stmtContext() *Reindex_stmtContext {
var p = new(Reindex_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_reindex_stmt
return p
}
+func InitEmptyReindex_stmtContext(p *Reindex_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_reindex_stmt
+}
+
func (*Reindex_stmtContext) IsReindex_stmtContext() {}
func NewReindex_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Reindex_stmtContext {
var p = new(Reindex_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_reindex_stmt
@@ -15426,77 +17147,87 @@ func (s *Reindex_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Reindex_stmt() (localctx IReindex_stmtContext) {
- this := p
- _ = this
-
localctx = NewReindex_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 82, SQLiteParserRULE_reindex_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1283)
+ p.SetState(1281)
p.Match(SQLiteParserREINDEX_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1294)
+ p.SetState(1292)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 173, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 172, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1284)
+ p.SetState(1282)
p.Collation_name()
}
- } else if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 173, p.GetParserRuleContext()) == 2 {
- p.SetState(1288)
+ } else if p.HasError() { // JIM
+ goto errorExit
+ } else if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 172, p.GetParserRuleContext()) == 2 {
+ p.SetState(1286)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 171, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 170, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1285)
+ p.SetState(1283)
p.Schema_name()
}
{
- p.SetState(1286)
+ p.SetState(1284)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(1292)
+ p.SetState(1290)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 172, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 171, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1290)
+ p.SetState(1288)
p.Table_name()
}
case 2:
{
- p.SetState(1291)
+ p.SetState(1289)
p.Index_name()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISelect_stmtContext is an interface to support dynamic dispatch.
@@ -15520,23 +17251,28 @@ type ISelect_stmtContext interface {
}
type Select_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySelect_stmtContext() *Select_stmtContext {
var p = new(Select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_select_stmt
return p
}
+func InitEmptySelect_stmtContext(p *Select_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_select_stmt
+}
+
func (*Select_stmtContext) IsSelect_stmtContext() {}
func NewSelect_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Select_stmtContext {
var p = new(Select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_select_stmt
@@ -15697,91 +17433,102 @@ func (s *Select_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Select_stmt() (localctx ISelect_stmtContext) {
- this := p
- _ = this
-
localctx = NewSelect_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 84, SQLiteParserRULE_select_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
- p.SetState(1297)
+ p.SetState(1295)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
{
- p.SetState(1296)
+ p.SetState(1294)
p.Common_table_stmt()
}
}
{
- p.SetState(1299)
+ p.SetState(1297)
p.Select_core()
}
- p.SetState(1305)
+ p.SetState(1303)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 175, p.GetParserRuleContext())
-
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 174, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
for _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
if _alt == 1 {
{
- p.SetState(1300)
+ p.SetState(1298)
p.Compound_operator()
}
{
- p.SetState(1301)
+ p.SetState(1299)
p.Select_core()
}
}
- p.SetState(1307)
+ p.SetState(1305)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 175, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 174, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
- p.SetState(1309)
+ p.SetState(1307)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1308)
+ p.SetState(1306)
p.Order_by_stmt()
}
}
- p.SetState(1312)
+ p.SetState(1310)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserLIMIT_ {
{
- p.SetState(1311)
+ p.SetState(1309)
p.Limit_stmt()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IJoin_clauseContext is an interface to support dynamic dispatch.
@@ -15804,23 +17551,28 @@ type IJoin_clauseContext interface {
}
type Join_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyJoin_clauseContext() *Join_clauseContext {
var p = new(Join_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_join_clause
return p
}
+func InitEmptyJoin_clauseContext(p *Join_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_join_clause
+}
+
func (*Join_clauseContext) IsJoin_clauseContext() {}
func NewJoin_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Join_clauseContext {
var p = new(Join_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_join_clause
@@ -15974,58 +17726,55 @@ func (s *Join_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Join_clause() (localctx IJoin_clauseContext) {
- this := p
- _ = this
-
localctx = NewJoin_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 86, SQLiteParserRULE_join_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1314)
+ p.SetState(1312)
p.Table_or_subquery()
}
- p.SetState(1321)
+ p.SetState(1319)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA || _la == SQLiteParserCROSS_ || ((int64((_la-78)) & ^0x3f) == 0 && ((int64(1)<<(_la-78))&562949971511297) != 0) {
{
- p.SetState(1315)
+ p.SetState(1313)
p.Join_operator()
}
{
- p.SetState(1316)
+ p.SetState(1314)
p.Table_or_subquery()
}
{
- p.SetState(1317)
+ p.SetState(1315)
p.Join_constraint()
}
- p.SetState(1323)
+ p.SetState(1321)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISelect_coreContext is an interface to support dynamic dispatch.
@@ -16071,23 +17820,28 @@ type ISelect_coreContext interface {
}
type Select_coreContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySelect_coreContext() *Select_coreContext {
var p = new(Select_coreContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_select_core
return p
}
+func InitEmptySelect_coreContext(p *Select_coreContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_select_core
+}
+
func (*Select_coreContext) IsSelect_coreContext() {}
func NewSelect_coreContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Select_coreContext {
var p = new(Select_coreContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_select_core
@@ -16411,45 +18165,33 @@ func (s *Select_coreContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Select_core() (localctx ISelect_coreContext) {
- this := p
- _ = this
-
localctx = NewSelect_coreContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 88, SQLiteParserRULE_select_core)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1414)
+ p.SetState(1412)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserSELECT_:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1324)
+ p.SetState(1322)
p.Match(SQLiteParserSELECT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1326)
+ p.SetState(1324)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 179, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 178, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1325)
+ p.SetState(1323)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserALL_ || _la == SQLiteParserDISTINCT_) {
@@ -16460,186 +18202,281 @@ func (p *SQLiteParser) Select_core() (localctx ISelect_coreContext) {
}
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1328)
+ p.SetState(1326)
p.Result_column()
}
- p.SetState(1333)
+ p.SetState(1331)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1329)
+ p.SetState(1327)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1330)
+ p.SetState(1328)
p.Result_column()
}
- p.SetState(1335)
+ p.SetState(1333)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1348)
+ p.SetState(1346)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserFROM_ {
{
- p.SetState(1336)
+ p.SetState(1334)
p.Match(SQLiteParserFROM_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1346)
+ p.SetState(1344)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 182, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 181, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1337)
+ p.SetState(1335)
p.Table_or_subquery()
}
- p.SetState(1342)
+ p.SetState(1340)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1338)
+ p.SetState(1336)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1339)
+ p.SetState(1337)
p.Table_or_subquery()
}
- p.SetState(1344)
+ p.SetState(1342)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case 2:
{
- p.SetState(1345)
+ p.SetState(1343)
p.Join_clause()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
}
- p.SetState(1352)
+ p.SetState(1350)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
- p.SetState(1350)
+ p.SetState(1348)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1351)
+ p.SetState(1349)
p.expr(0)
}
}
- p.SetState(1368)
+ p.SetState(1366)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserGROUP_ {
{
- p.SetState(1354)
+ p.SetState(1352)
p.Match(SQLiteParserGROUP_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1355)
+ p.SetState(1353)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1356)
+ p.SetState(1354)
p.expr(0)
}
- p.SetState(1361)
+ p.SetState(1359)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1357)
+ p.SetState(1355)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1358)
+ p.SetState(1356)
p.expr(0)
}
- p.SetState(1363)
+ p.SetState(1361)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1366)
+ p.SetState(1364)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserHAVING_ {
{
- p.SetState(1364)
+ p.SetState(1362)
p.Match(SQLiteParserHAVING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1365)
+ p.SetState(1363)
p.expr(0)
}
}
}
- p.SetState(1384)
+ p.SetState(1382)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWINDOW_ {
{
- p.SetState(1370)
+ p.SetState(1368)
p.Match(SQLiteParserWINDOW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1371)
+ p.SetState(1369)
p.Window_name()
}
{
- p.SetState(1372)
+ p.SetState(1370)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1373)
+ p.SetState(1371)
p.Window_defn()
}
- p.SetState(1381)
+ p.SetState(1379)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1374)
+ p.SetState(1372)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1375)
+ p.SetState(1373)
p.Window_name()
}
{
- p.SetState(1376)
+ p.SetState(1374)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1377)
+ p.SetState(1375)
p.Window_defn()
}
- p.SetState(1383)
+ p.SetState(1381)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
@@ -16648,89 +18485,150 @@ func (p *SQLiteParser) Select_core() (localctx ISelect_coreContext) {
case SQLiteParserVALUES_:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1386)
+ p.SetState(1384)
p.Match(SQLiteParserVALUES_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1387)
+ p.SetState(1385)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1388)
+ p.SetState(1386)
p.expr(0)
}
- p.SetState(1393)
+ p.SetState(1391)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1389)
+ p.SetState(1387)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1390)
+ p.SetState(1388)
p.expr(0)
}
- p.SetState(1395)
+ p.SetState(1393)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1396)
+ p.SetState(1394)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1411)
+ p.SetState(1409)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1397)
+ p.SetState(1395)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1398)
+ p.SetState(1396)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1399)
+ p.SetState(1397)
p.expr(0)
}
- p.SetState(1404)
+ p.SetState(1402)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1400)
+ p.SetState(1398)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1401)
+ p.SetState(1399)
p.expr(0)
}
- p.SetState(1406)
+ p.SetState(1404)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1407)
+ p.SetState(1405)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1413)
+ p.SetState(1411)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFactored_select_stmtContext is an interface to support dynamic dispatch.
@@ -16748,23 +18646,28 @@ type IFactored_select_stmtContext interface {
}
type Factored_select_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFactored_select_stmtContext() *Factored_select_stmtContext {
var p = new(Factored_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_factored_select_stmt
return p
}
+func InitEmptyFactored_select_stmtContext(p *Factored_select_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_factored_select_stmt
+}
+
func (*Factored_select_stmtContext) IsFactored_select_stmtContext() {}
func NewFactored_select_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Factored_select_stmtContext {
var p = new(Factored_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_factored_select_stmt
@@ -16811,35 +18714,25 @@ func (s *Factored_select_stmtContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Factored_select_stmt() (localctx IFactored_select_stmtContext) {
- this := p
- _ = this
-
localctx = NewFactored_select_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 90, SQLiteParserRULE_factored_select_stmt)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1416)
+ p.SetState(1414)
p.Select_stmt()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISimple_select_stmtContext is an interface to support dynamic dispatch.
@@ -16860,23 +18753,28 @@ type ISimple_select_stmtContext interface {
}
type Simple_select_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySimple_select_stmtContext() *Simple_select_stmtContext {
var p = new(Simple_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_simple_select_stmt
return p
}
+func InitEmptySimple_select_stmtContext(p *Simple_select_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_simple_select_stmt
+}
+
func (*Simple_select_stmtContext) IsSimple_select_stmtContext() {}
func NewSimple_select_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Simple_select_stmtContext {
var p = new(Simple_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_simple_select_stmt
@@ -16971,69 +18869,69 @@ func (s *Simple_select_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Simple_select_stmt() (localctx ISimple_select_stmtContext) {
- this := p
- _ = this
-
localctx = NewSimple_select_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 92, SQLiteParserRULE_simple_select_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1419)
+ p.SetState(1417)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
{
- p.SetState(1418)
+ p.SetState(1416)
p.Common_table_stmt()
}
}
{
- p.SetState(1421)
+ p.SetState(1419)
p.Select_core()
}
- p.SetState(1423)
+ p.SetState(1421)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1422)
+ p.SetState(1420)
p.Order_by_stmt()
}
}
- p.SetState(1426)
+ p.SetState(1424)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserLIMIT_ {
{
- p.SetState(1425)
+ p.SetState(1423)
p.Limit_stmt()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICompound_select_stmtContext is an interface to support dynamic dispatch.
@@ -17063,23 +18961,28 @@ type ICompound_select_stmtContext interface {
}
type Compound_select_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCompound_select_stmtContext() *Compound_select_stmtContext {
var p = new(Compound_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_compound_select_stmt
return p
}
+func InitEmptyCompound_select_stmtContext(p *Compound_select_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_compound_select_stmt
+}
+
func (*Compound_select_stmtContext) IsCompound_select_stmtContext() {}
func NewCompound_select_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Compound_select_stmtContext {
var p = new(Compound_select_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_compound_select_stmt
@@ -17231,119 +19134,148 @@ func (s *Compound_select_stmtContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Compound_select_stmt() (localctx ICompound_select_stmtContext) {
- this := p
- _ = this
-
localctx = NewCompound_select_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 94, SQLiteParserRULE_compound_select_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1429)
+ p.SetState(1427)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
{
- p.SetState(1428)
+ p.SetState(1426)
p.Common_table_stmt()
}
}
{
- p.SetState(1431)
+ p.SetState(1429)
p.Select_core()
}
- p.SetState(1441)
+ p.SetState(1439)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for ok := true; ok; ok = _la == SQLiteParserEXCEPT_ || _la == SQLiteParserINTERSECT_ || _la == SQLiteParserUNION_ {
- p.SetState(1438)
+ p.SetState(1436)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserUNION_:
{
- p.SetState(1432)
+ p.SetState(1430)
p.Match(SQLiteParserUNION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1434)
+ p.SetState(1432)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserALL_ {
{
- p.SetState(1433)
+ p.SetState(1431)
p.Match(SQLiteParserALL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
case SQLiteParserINTERSECT_:
{
- p.SetState(1436)
+ p.SetState(1434)
p.Match(SQLiteParserINTERSECT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserEXCEPT_:
{
- p.SetState(1437)
+ p.SetState(1435)
p.Match(SQLiteParserEXCEPT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
{
- p.SetState(1440)
+ p.SetState(1438)
p.Select_core()
}
- p.SetState(1443)
+ p.SetState(1441)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1446)
+ p.SetState(1444)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1445)
+ p.SetState(1443)
p.Order_by_stmt()
}
}
- p.SetState(1449)
+ p.SetState(1447)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserLIMIT_ {
{
- p.SetState(1448)
+ p.SetState(1446)
p.Limit_stmt()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_or_subqueryContext is an interface to support dynamic dispatch.
@@ -17381,23 +19313,28 @@ type ITable_or_subqueryContext interface {
}
type Table_or_subqueryContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_or_subqueryContext() *Table_or_subqueryContext {
var p = new(Table_or_subqueryContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_or_subquery
return p
}
+func InitEmptyTable_or_subqueryContext(p *Table_or_subqueryContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_or_subquery
+}
+
func (*Table_or_subqueryContext) IsTable_or_subqueryContext() {}
func NewTable_or_subqueryContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_or_subqueryContext {
var p = new(Table_or_subqueryContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_or_subquery
@@ -17674,175 +19611,228 @@ func (s *Table_or_subqueryContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Table_or_subquery() (localctx ITable_or_subqueryContext) {
- this := p
- _ = this
-
localctx = NewTable_or_subqueryContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 96, SQLiteParserRULE_table_or_subquery)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1579)
+ p.SetState(1577)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 227, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 226, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
- p.SetState(1454)
+ p.SetState(1452)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 203, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 202, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1451)
+ p.SetState(1449)
p.Schema_name()
}
{
- p.SetState(1452)
+ p.SetState(1450)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1456)
+ p.SetState(1454)
p.Table_name()
}
- p.SetState(1461)
+ p.SetState(1459)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
- p.SetState(1458)
+ p.SetState(1456)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
- p.SetState(1457)
+ p.SetState(1455)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
- p.SetState(1460)
+ p.SetState(1458)
p.Table_alias()
}
}
- p.SetState(1468)
+ p.SetState(1466)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserINDEXED_:
{
- p.SetState(1463)
+ p.SetState(1461)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1464)
+ p.SetState(1462)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1465)
+ p.SetState(1463)
p.Index_name()
}
case SQLiteParserNOT_:
{
- p.SetState(1466)
+ p.SetState(1464)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1467)
+ p.SetState(1465)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserCLOSE_PAR, SQLiteParserCOMMA, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserDEFAULT_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXCEPT_, SQLiteParserEXPLAIN_, SQLiteParserFULL_, SQLiteParserGROUP_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINTERSECT_, SQLiteParserJOIN_, SQLiteParserLEFT_, SQLiteParserLIMIT_, SQLiteParserNATURAL_, SQLiteParserON_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUNION_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWINDOW_:
+ case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserCLOSE_PAR, SQLiteParserCOMMA, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXCEPT_, SQLiteParserEXPLAIN_, SQLiteParserFULL_, SQLiteParserGROUP_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINTERSECT_, SQLiteParserJOIN_, SQLiteParserLEFT_, SQLiteParserLIMIT_, SQLiteParserNATURAL_, SQLiteParserON_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUNION_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWINDOW_:
default:
}
case 2:
p.EnterOuterAlt(localctx, 2)
- p.SetState(1473)
+ p.SetState(1471)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 207, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 206, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1470)
+ p.SetState(1468)
p.Schema_name()
}
{
- p.SetState(1471)
+ p.SetState(1469)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1475)
+ p.SetState(1473)
p.Table_function_name()
}
{
- p.SetState(1476)
+ p.SetState(1474)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1477)
+ p.SetState(1475)
p.expr(0)
}
- p.SetState(1482)
+ p.SetState(1480)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1478)
+ p.SetState(1476)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1479)
+ p.SetState(1477)
p.expr(0)
}
- p.SetState(1484)
+ p.SetState(1482)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1485)
+ p.SetState(1483)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1490)
+ p.SetState(1488)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
- p.SetState(1487)
+ p.SetState(1485)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
- p.SetState(1486)
+ p.SetState(1484)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
- p.SetState(1489)
+ p.SetState(1487)
p.Table_alias()
}
@@ -17851,80 +19841,122 @@ func (p *SQLiteParser) Table_or_subquery() (localctx ITable_or_subqueryContext)
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1492)
+ p.SetState(1490)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1502)
+ p.SetState(1500)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 212, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 211, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1493)
+ p.SetState(1491)
p.Table_or_subquery()
}
- p.SetState(1498)
+ p.SetState(1496)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1494)
+ p.SetState(1492)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1495)
+ p.SetState(1493)
p.Table_or_subquery()
}
- p.SetState(1500)
+ p.SetState(1498)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case 2:
{
- p.SetState(1501)
+ p.SetState(1499)
p.Join_clause()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1504)
+ p.SetState(1502)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 4:
p.EnterOuterAlt(localctx, 4)
{
- p.SetState(1506)
+ p.SetState(1504)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1507)
+ p.SetState(1505)
p.Select_stmt()
}
{
- p.SetState(1508)
+ p.SetState(1506)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1513)
+ p.SetState(1511)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
- p.SetState(1510)
+ p.SetState(1508)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
- p.SetState(1509)
+ p.SetState(1507)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
- p.SetState(1512)
+ p.SetState(1510)
p.Table_alias()
}
@@ -17932,231 +19964,347 @@ func (p *SQLiteParser) Table_or_subquery() (localctx ITable_or_subqueryContext)
case 5:
p.EnterOuterAlt(localctx, 5)
- p.SetState(1518)
+ p.SetState(1516)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 215, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 214, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1515)
+ p.SetState(1513)
p.Schema_name()
}
{
- p.SetState(1516)
+ p.SetState(1514)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1520)
+ p.SetState(1518)
p.Table_name()
}
- p.SetState(1525)
+ p.SetState(1523)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 217, p.GetParserRuleContext()) == 1 {
- p.SetState(1522)
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 216, p.GetParserRuleContext()) == 1 {
+ p.SetState(1520)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 216, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 215, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1521)
+ p.SetState(1519)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1524)
+ p.SetState(1522)
p.Table_alias_fallback()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(1532)
+ p.SetState(1530)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserINDEXED_:
{
- p.SetState(1527)
+ p.SetState(1525)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1528)
+ p.SetState(1526)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1529)
+ p.SetState(1527)
p.Index_name()
}
case SQLiteParserNOT_:
{
- p.SetState(1530)
+ p.SetState(1528)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1531)
+ p.SetState(1529)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserCLOSE_PAR, SQLiteParserCOMMA, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserDEFAULT_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXCEPT_, SQLiteParserEXPLAIN_, SQLiteParserFULL_, SQLiteParserGROUP_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINTERSECT_, SQLiteParserJOIN_, SQLiteParserLEFT_, SQLiteParserLIMIT_, SQLiteParserNATURAL_, SQLiteParserON_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUNION_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWINDOW_:
+ case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserCLOSE_PAR, SQLiteParserCOMMA, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXCEPT_, SQLiteParserEXPLAIN_, SQLiteParserFULL_, SQLiteParserGROUP_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINTERSECT_, SQLiteParserJOIN_, SQLiteParserLEFT_, SQLiteParserLIMIT_, SQLiteParserNATURAL_, SQLiteParserON_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserUNION_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWINDOW_:
default:
}
case 6:
p.EnterOuterAlt(localctx, 6)
- p.SetState(1537)
+ p.SetState(1535)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 219, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 218, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1534)
+ p.SetState(1532)
p.Schema_name()
}
{
- p.SetState(1535)
+ p.SetState(1533)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1539)
+ p.SetState(1537)
p.Table_function_name()
}
{
- p.SetState(1540)
+ p.SetState(1538)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1541)
+ p.SetState(1539)
p.expr(0)
}
- p.SetState(1546)
+ p.SetState(1544)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1542)
+ p.SetState(1540)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1543)
+ p.SetState(1541)
p.expr(0)
}
- p.SetState(1548)
+ p.SetState(1546)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1549)
+ p.SetState(1547)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1554)
+ p.SetState(1552)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 222, p.GetParserRuleContext()) == 1 {
- p.SetState(1551)
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 221, p.GetParserRuleContext()) == 1 {
+ p.SetState(1549)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 221, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 220, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1550)
+ p.SetState(1548)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1553)
+ p.SetState(1551)
p.Table_alias_fallback()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
case 7:
p.EnterOuterAlt(localctx, 7)
{
- p.SetState(1556)
+ p.SetState(1554)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1566)
+ p.SetState(1564)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 224, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 223, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1557)
+ p.SetState(1555)
p.Table_or_subquery()
}
- p.SetState(1562)
+ p.SetState(1560)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1558)
+ p.SetState(1556)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1559)
+ p.SetState(1557)
p.Table_or_subquery()
}
- p.SetState(1564)
+ p.SetState(1562)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case 2:
{
- p.SetState(1565)
+ p.SetState(1563)
p.Join_clause()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1568)
+ p.SetState(1566)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 8:
p.EnterOuterAlt(localctx, 8)
{
- p.SetState(1570)
+ p.SetState(1568)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1571)
+ p.SetState(1569)
p.Select_stmt()
}
{
- p.SetState(1572)
+ p.SetState(1570)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1577)
+ p.SetState(1575)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 226, p.GetParserRuleContext()) == 1 {
- p.SetState(1574)
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 225, p.GetParserRuleContext()) == 1 {
+ p.SetState(1572)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 225, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 224, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1573)
+ p.SetState(1571)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1576)
+ p.SetState(1574)
p.Table_alias_fallback()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IResult_columnContext is an interface to support dynamic dispatch.
@@ -18179,23 +20327,28 @@ type IResult_columnContext interface {
}
type Result_columnContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyResult_columnContext() *Result_columnContext {
var p = new(Result_columnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_result_column
return p
}
+func InitEmptyResult_columnContext(p *Result_columnContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_result_column
+}
+
func (*Result_columnContext) IsResult_columnContext() {}
func NewResult_columnContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Result_columnContext {
var p = new(Result_columnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_result_column
@@ -18286,86 +20439,105 @@ func (s *Result_columnContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Result_column() (localctx IResult_columnContext) {
- this := p
- _ = this
-
localctx = NewResult_columnContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 98, SQLiteParserRULE_result_column)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1593)
+ p.SetState(1591)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 230, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 229, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1581)
+ p.SetState(1579)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1582)
+ p.SetState(1580)
p.Table_name()
}
{
- p.SetState(1583)
+ p.SetState(1581)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1584)
+ p.SetState(1582)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1586)
+ p.SetState(1584)
p.expr(0)
}
- p.SetState(1591)
+ p.SetState(1589)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ || _la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL {
- p.SetState(1588)
+ p.SetState(1586)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
- p.SetState(1587)
+ p.SetState(1585)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
{
- p.SetState(1590)
+ p.SetState(1588)
p.Column_alias()
}
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IJoin_operatorContext is an interface to support dynamic dispatch.
@@ -18391,23 +20563,28 @@ type IJoin_operatorContext interface {
}
type Join_operatorContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyJoin_operatorContext() *Join_operatorContext {
var p = new(Join_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_join_operator
return p
}
+func InitEmptyJoin_operatorContext(p *Join_operatorContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_join_operator
+}
+
func (*Join_operatorContext) IsJoin_operatorContext() {}
func NewJoin_operatorContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Join_operatorContext {
var p = new(Join_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_join_operator
@@ -18474,60 +20651,57 @@ func (s *Join_operatorContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Join_operator() (localctx IJoin_operatorContext) {
- this := p
- _ = this
-
localctx = NewJoin_operatorContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 100, SQLiteParserRULE_join_operator)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1609)
+ p.SetState(1607)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserCOMMA:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1595)
+ p.SetState(1593)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserFULL_, SQLiteParserINNER_, SQLiteParserJOIN_, SQLiteParserLEFT_, SQLiteParserNATURAL_, SQLiteParserRIGHT_:
p.EnterOuterAlt(localctx, 2)
- p.SetState(1597)
+ p.SetState(1595)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNATURAL_ {
{
- p.SetState(1596)
+ p.SetState(1594)
p.Match(SQLiteParserNATURAL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
- p.SetState(1604)
+ p.SetState(1602)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserFULL_, SQLiteParserLEFT_, SQLiteParserRIGHT_:
{
- p.SetState(1599)
+ p.SetState(1597)
_la = p.GetTokenStream().LA(1)
if !((int64((_la-78)) & ^0x3f) == 0 && ((int64(1)<<(_la-78))&562949954469889) != 0) {
@@ -18537,22 +20711,33 @@ func (p *SQLiteParser) Join_operator() (localctx IJoin_operatorContext) {
p.Consume()
}
}
- p.SetState(1601)
+ p.SetState(1599)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserOUTER_ {
{
- p.SetState(1600)
+ p.SetState(1598)
p.Match(SQLiteParserOUTER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
case SQLiteParserINNER_:
{
- p.SetState(1603)
+ p.SetState(1601)
p.Match(SQLiteParserINNER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserJOIN_:
@@ -18560,26 +20745,49 @@ func (p *SQLiteParser) Join_operator() (localctx IJoin_operatorContext) {
default:
}
{
- p.SetState(1606)
+ p.SetState(1604)
p.Match(SQLiteParserJOIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCROSS_:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1607)
+ p.SetState(1605)
p.Match(SQLiteParserCROSS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1608)
+ p.SetState(1606)
p.Match(SQLiteParserJOIN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IJoin_constraintContext is an interface to support dynamic dispatch.
@@ -18605,23 +20813,28 @@ type IJoin_constraintContext interface {
}
type Join_constraintContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyJoin_constraintContext() *Join_constraintContext {
var p = new(Join_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_join_constraint
return p
}
+func InitEmptyJoin_constraintContext(p *Join_constraintContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_join_constraint
+}
+
func (*Join_constraintContext) IsJoin_constraintContext() {}
func NewJoin_constraintContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Join_constraintContext {
var p = new(Join_constraintContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_join_constraint
@@ -18733,82 +20946,103 @@ func (s *Join_constraintContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Join_constraint() (localctx IJoin_constraintContext) {
- this := p
- _ = this
-
localctx = NewJoin_constraintContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 102, SQLiteParserRULE_join_constraint)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1625)
+ p.SetState(1623)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 236, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 235, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1611)
+ p.SetState(1609)
p.Match(SQLiteParserON_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1612)
+ p.SetState(1610)
p.expr(0)
}
- } else if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 236, p.GetParserRuleContext()) == 2 {
+ } else if p.HasError() { // JIM
+ goto errorExit
+ } else if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 235, p.GetParserRuleContext()) == 2 {
{
- p.SetState(1613)
+ p.SetState(1611)
p.Match(SQLiteParserUSING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1614)
+ p.SetState(1612)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1615)
+ p.SetState(1613)
p.Column_name()
}
- p.SetState(1620)
+ p.SetState(1618)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1616)
+ p.SetState(1614)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1617)
+ p.SetState(1615)
p.Column_name()
}
- p.SetState(1622)
+ p.SetState(1620)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1623)
+ p.SetState(1621)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICompound_operatorContext is an interface to support dynamic dispatch.
@@ -18829,23 +21063,28 @@ type ICompound_operatorContext interface {
}
type Compound_operatorContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCompound_operatorContext() *Compound_operatorContext {
var p = new(Compound_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_compound_operator
return p
}
+func InitEmptyCompound_operatorContext(p *Compound_operatorContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_compound_operator
+}
+
func (*Compound_operatorContext) IsCompound_operatorContext() {}
func NewCompound_operatorContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Compound_operatorContext {
var p = new(Compound_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_compound_operator
@@ -18892,47 +21131,42 @@ func (s *Compound_operatorContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Compound_operator() (localctx ICompound_operatorContext) {
- this := p
- _ = this
-
localctx = NewCompound_operatorContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 104, SQLiteParserRULE_compound_operator)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1633)
+ p.SetState(1631)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserUNION_:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1627)
+ p.SetState(1625)
p.Match(SQLiteParserUNION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1629)
+ p.SetState(1627)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserALL_ {
{
- p.SetState(1628)
+ p.SetState(1626)
p.Match(SQLiteParserALL_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
}
@@ -18940,22 +21174,41 @@ func (p *SQLiteParser) Compound_operator() (localctx ICompound_operatorContext)
case SQLiteParserINTERSECT_:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1631)
+ p.SetState(1629)
p.Match(SQLiteParserINTERSECT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserEXCEPT_:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1632)
+ p.SetState(1630)
p.Match(SQLiteParserEXCEPT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IUpdate_stmtContext is an interface to support dynamic dispatch.
@@ -18994,23 +21247,28 @@ type IUpdate_stmtContext interface {
}
type Update_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyUpdate_stmtContext() *Update_stmtContext {
var p = new(Update_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_update_stmt
return p
}
+func InitEmptyUpdate_stmtContext(p *Update_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_update_stmt
+}
+
func (*Update_stmtContext) IsUpdate_stmtContext() {}
func NewUpdate_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Update_stmtContext {
var p = new(Update_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_update_stmt
@@ -19264,55 +21522,47 @@ func (s *Update_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Update_stmt() (localctx IUpdate_stmtContext) {
- this := p
- _ = this
-
localctx = NewUpdate_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 106, SQLiteParserRULE_update_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1636)
+ p.SetState(1634)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
{
- p.SetState(1635)
+ p.SetState(1633)
p.With_clause()
}
}
{
- p.SetState(1638)
+ p.SetState(1636)
p.Match(SQLiteParserUPDATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1641)
+ p.SetState(1639)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 240, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 239, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1639)
+ p.SetState(1637)
p.Match(SQLiteParserOR_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1640)
+ p.SetState(1638)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserABORT_ || ((int64((_la-74)) & ^0x3f) == 0 && ((int64(1)<<(_la-74))&19140298416325121) != 0)) {
@@ -19323,105 +21573,161 @@ func (p *SQLiteParser) Update_stmt() (localctx IUpdate_stmtContext) {
}
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1643)
+ p.SetState(1641)
p.Qualified_table_name()
}
{
- p.SetState(1644)
+ p.SetState(1642)
p.Match(SQLiteParserSET_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1647)
+ p.SetState(1645)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 241, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 240, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1645)
+ p.SetState(1643)
p.Column_name()
}
case 2:
{
- p.SetState(1646)
+ p.SetState(1644)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1649)
+ p.SetState(1647)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1650)
+ p.SetState(1648)
p.expr(0)
}
- p.SetState(1661)
+ p.SetState(1659)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1651)
+ p.SetState(1649)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1654)
+ p.SetState(1652)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 242, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 241, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1652)
+ p.SetState(1650)
p.Column_name()
}
case 2:
{
- p.SetState(1653)
+ p.SetState(1651)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1656)
+ p.SetState(1654)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1657)
+ p.SetState(1655)
p.expr(0)
}
- p.SetState(1663)
+ p.SetState(1661)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1666)
+ p.SetState(1664)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
- p.SetState(1664)
+ p.SetState(1662)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1665)
+ p.SetState(1663)
p.expr(0)
}
}
- p.SetState(1669)
+ p.SetState(1667)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserRETURNING_ {
{
- p.SetState(1668)
+ p.SetState(1666)
p.Returning_clause()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IColumn_name_listContext is an interface to support dynamic dispatch.
@@ -19444,23 +21750,28 @@ type IColumn_name_listContext interface {
}
type Column_name_listContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyColumn_name_listContext() *Column_name_listContext {
var p = new(Column_name_listContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_column_name_list
return p
}
+func InitEmptyColumn_name_listContext(p *Column_name_listContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_column_name_list
+}
+
func (*Column_name_listContext) IsColumn_name_listContext() {}
func NewColumn_name_listContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Column_name_listContext {
var p = new(Column_name_listContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_column_name_list
@@ -19548,62 +21859,71 @@ func (s *Column_name_listContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Column_name_list() (localctx IColumn_name_listContext) {
- this := p
- _ = this
-
localctx = NewColumn_name_listContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 108, SQLiteParserRULE_column_name_list)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1671)
+ p.SetState(1669)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1672)
+ p.SetState(1670)
p.Column_name()
}
- p.SetState(1677)
+ p.SetState(1675)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1673)
+ p.SetState(1671)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1674)
+ p.SetState(1672)
p.Column_name()
}
- p.SetState(1679)
+ p.SetState(1677)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
{
- p.SetState(1680)
+ p.SetState(1678)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IUpdate_stmt_limitedContext is an interface to support dynamic dispatch.
@@ -19643,23 +21963,28 @@ type IUpdate_stmt_limitedContext interface {
}
type Update_stmt_limitedContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyUpdate_stmt_limitedContext() *Update_stmt_limitedContext {
var p = new(Update_stmt_limitedContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_update_stmt_limited
return p
}
+func InitEmptyUpdate_stmt_limitedContext(p *Update_stmt_limitedContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_update_stmt_limited
+}
+
func (*Update_stmt_limitedContext) IsUpdate_stmt_limitedContext() {}
func NewUpdate_stmt_limitedContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Update_stmt_limitedContext {
var p = new(Update_stmt_limitedContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_update_stmt_limited
@@ -19929,55 +22254,47 @@ func (s *Update_stmt_limitedContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Update_stmt_limited() (localctx IUpdate_stmt_limitedContext) {
- this := p
- _ = this
-
localctx = NewUpdate_stmt_limitedContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 110, SQLiteParserRULE_update_stmt_limited)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1683)
+ p.SetState(1681)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWITH_ {
{
- p.SetState(1682)
+ p.SetState(1680)
p.With_clause()
}
}
{
- p.SetState(1685)
+ p.SetState(1683)
p.Match(SQLiteParserUPDATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1688)
+ p.SetState(1686)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 248, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 247, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1686)
+ p.SetState(1684)
p.Match(SQLiteParserOR_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1687)
+ p.SetState(1685)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserABORT_ || ((int64((_la-74)) & ^0x3f) == 0 && ((int64(1)<<(_la-74))&19140298416325121) != 0)) {
@@ -19988,116 +22305,175 @@ func (p *SQLiteParser) Update_stmt_limited() (localctx IUpdate_stmt_limitedConte
}
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1690)
+ p.SetState(1688)
p.Qualified_table_name()
}
{
- p.SetState(1691)
+ p.SetState(1689)
p.Match(SQLiteParserSET_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1694)
+ p.SetState(1692)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 249, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 248, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1692)
+ p.SetState(1690)
p.Column_name()
}
case 2:
{
- p.SetState(1693)
+ p.SetState(1691)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1696)
+ p.SetState(1694)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1697)
+ p.SetState(1695)
p.expr(0)
}
- p.SetState(1708)
+ p.SetState(1706)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1698)
+ p.SetState(1696)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1701)
+ p.SetState(1699)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 250, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 249, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1699)
+ p.SetState(1697)
p.Column_name()
}
case 2:
{
- p.SetState(1700)
+ p.SetState(1698)
p.Column_name_list()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
{
- p.SetState(1703)
+ p.SetState(1701)
p.Match(SQLiteParserASSIGN)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1704)
+ p.SetState(1702)
p.expr(0)
}
- p.SetState(1710)
+ p.SetState(1708)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1713)
+ p.SetState(1711)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserWHERE_ {
{
- p.SetState(1711)
+ p.SetState(1709)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1712)
+ p.SetState(1710)
p.expr(0)
}
}
- p.SetState(1719)
+ p.SetState(1717)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserLIMIT_ || _la == SQLiteParserORDER_ {
- p.SetState(1716)
+ p.SetState(1714)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1715)
+ p.SetState(1713)
p.Order_by_stmt()
}
}
{
- p.SetState(1718)
+ p.SetState(1716)
p.Limit_stmt()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IQualified_table_nameContext is an interface to support dynamic dispatch.
@@ -20123,23 +22499,28 @@ type IQualified_table_nameContext interface {
}
type Qualified_table_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyQualified_table_nameContext() *Qualified_table_nameContext {
var p = new(Qualified_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_qualified_table_name
return p
}
+func InitEmptyQualified_table_nameContext(p *Qualified_table_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_qualified_table_name
+}
+
func (*Qualified_table_nameContext) IsQualified_table_nameContext() {}
func NewQualified_table_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Qualified_table_nameContext {
var p = new(Qualified_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_qualified_table_name
@@ -20254,97 +22635,119 @@ func (s *Qualified_table_nameContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Qualified_table_name() (localctx IQualified_table_nameContext) {
- this := p
- _ = this
-
localctx = NewQualified_table_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 112, SQLiteParserRULE_qualified_table_name)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(1724)
+ p.SetState(1722)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 255, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 254, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1721)
+ p.SetState(1719)
p.Schema_name()
}
{
- p.SetState(1722)
+ p.SetState(1720)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1726)
+ p.SetState(1724)
p.Table_name()
}
- p.SetState(1729)
+ p.SetState(1727)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserAS_ {
{
- p.SetState(1727)
+ p.SetState(1725)
p.Match(SQLiteParserAS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1728)
+ p.SetState(1726)
p.Alias()
}
}
- p.SetState(1736)
+ p.SetState(1734)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserINDEXED_:
{
- p.SetState(1731)
+ p.SetState(1729)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1732)
+ p.SetState(1730)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1733)
+ p.SetState(1731)
p.Index_name()
}
case SQLiteParserNOT_:
{
- p.SetState(1734)
+ p.SetState(1732)
p.Match(SQLiteParserNOT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1735)
+ p.SetState(1733)
p.Match(SQLiteParserINDEXED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserDEFAULT_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXPLAIN_, SQLiteParserINSERT_, SQLiteParserLIMIT_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserUPDATE_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_:
+ case SQLiteParserEOF, SQLiteParserSCOL, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserATTACH_, SQLiteParserBEGIN_, SQLiteParserCOMMIT_, SQLiteParserCREATE_, SQLiteParserDELETE_, SQLiteParserDETACH_, SQLiteParserDROP_, SQLiteParserEND_, SQLiteParserEXPLAIN_, SQLiteParserINSERT_, SQLiteParserLIMIT_, SQLiteParserORDER_, SQLiteParserPRAGMA_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserREPLACE_, SQLiteParserRETURNING_, SQLiteParserROLLBACK_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserUPDATE_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserWHERE_, SQLiteParserWITH_:
default:
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IVacuum_stmtContext is an interface to support dynamic dispatch.
@@ -20365,23 +22768,28 @@ type IVacuum_stmtContext interface {
}
type Vacuum_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyVacuum_stmtContext() *Vacuum_stmtContext {
var p = new(Vacuum_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_vacuum_stmt
return p
}
+func InitEmptyVacuum_stmtContext(p *Vacuum_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_vacuum_stmt
+}
+
func (*Vacuum_stmtContext) IsVacuum_stmtContext() {}
func NewVacuum_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Vacuum_stmtContext {
var p = new(Vacuum_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_vacuum_stmt
@@ -20452,61 +22860,65 @@ func (s *Vacuum_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Vacuum_stmt() (localctx IVacuum_stmtContext) {
- this := p
- _ = this
-
localctx = NewVacuum_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 114, SQLiteParserRULE_vacuum_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1738)
+ p.SetState(1736)
p.Match(SQLiteParserVACUUM_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1740)
+ p.SetState(1738)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 258, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 257, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1739)
+ p.SetState(1737)
p.Schema_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(1744)
+ p.SetState(1742)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserINTO_ {
{
- p.SetState(1742)
+ p.SetState(1740)
p.Match(SQLiteParserINTO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1743)
+ p.SetState(1741)
p.Filename()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFilter_clauseContext is an interface to support dynamic dispatch.
@@ -20528,23 +22940,28 @@ type IFilter_clauseContext interface {
}
type Filter_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFilter_clauseContext() *Filter_clauseContext {
var p = new(Filter_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_filter_clause
return p
}
+func InitEmptyFilter_clauseContext(p *Filter_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_filter_clause
+}
+
func (*Filter_clauseContext) IsFilter_clauseContext() {}
func NewFilter_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Filter_clauseContext {
var p = new(Filter_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_filter_clause
@@ -20607,51 +23024,57 @@ func (s *Filter_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Filter_clause() (localctx IFilter_clauseContext) {
- this := p
- _ = this
-
localctx = NewFilter_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 116, SQLiteParserRULE_filter_clause)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1746)
+ p.SetState(1744)
p.Match(SQLiteParserFILTER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1747)
+ p.SetState(1745)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1748)
+ p.SetState(1746)
p.Match(SQLiteParserWHERE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1749)
+ p.SetState(1747)
p.expr(0)
}
{
- p.SetState(1750)
+ p.SetState(1748)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IWindow_defnContext is an interface to support dynamic dispatch.
@@ -20682,23 +23105,28 @@ type IWindow_defnContext interface {
}
type Window_defnContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyWindow_defnContext() *Window_defnContext {
var p = new(Window_defnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_window_defn
return p
}
+func InitEmptyWindow_defnContext(p *Window_defnContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_window_defn
+}
+
func (*Window_defnContext) IsWindow_defnContext() {}
func NewWindow_defnContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Window_defnContext {
var p = new(Window_defnContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_window_defn
@@ -20875,130 +23303,173 @@ func (s *Window_defnContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Window_defn() (localctx IWindow_defnContext) {
- this := p
- _ = this
-
localctx = NewWindow_defnContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 118, SQLiteParserRULE_window_defn)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1752)
+ p.SetState(1750)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1754)
+ p.SetState(1752)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 260, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 259, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1753)
+ p.SetState(1751)
p.Base_window_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(1766)
+ p.SetState(1764)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(1756)
+ p.SetState(1754)
p.Match(SQLiteParserPARTITION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1757)
+ p.SetState(1755)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1758)
+ p.SetState(1756)
p.expr(0)
}
- p.SetState(1763)
+ p.SetState(1761)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1759)
+ p.SetState(1757)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1760)
+ p.SetState(1758)
p.expr(0)
}
- p.SetState(1765)
+ p.SetState(1763)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
}
{
- p.SetState(1768)
+ p.SetState(1766)
p.Match(SQLiteParserORDER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1769)
+ p.SetState(1767)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1770)
+ p.SetState(1768)
p.Ordering_term()
}
- p.SetState(1775)
+ p.SetState(1773)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1771)
+ p.SetState(1769)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1772)
+ p.SetState(1770)
p.Ordering_term()
}
- p.SetState(1777)
+ p.SetState(1775)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
- p.SetState(1779)
+ p.SetState(1777)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if (int64((_la-130)) & ^0x3f) == 0 && ((int64(1)<<(_la-130))&4503599761588225) != 0 {
{
- p.SetState(1778)
+ p.SetState(1776)
p.Frame_spec()
}
}
{
- p.SetState(1781)
+ p.SetState(1779)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOver_clauseContext is an interface to support dynamic dispatch.
@@ -21031,23 +23502,28 @@ type IOver_clauseContext interface {
}
type Over_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOver_clauseContext() *Over_clauseContext {
var p = new(Over_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_over_clause
return p
}
+func InitEmptyOver_clauseContext(p *Over_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_over_clause
+}
+
func (*Over_clauseContext) IsOver_clauseContext() {}
func NewOver_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Over_clauseContext {
var p = new(Over_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_over_clause
@@ -21244,151 +23720,207 @@ func (s *Over_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Over_clause() (localctx IOver_clauseContext) {
- this := p
- _ = this
-
localctx = NewOver_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 120, SQLiteParserRULE_over_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1783)
+ p.SetState(1781)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1817)
+ p.SetState(1815)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 271, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 270, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1784)
+ p.SetState(1782)
p.Window_name()
}
case 2:
{
- p.SetState(1785)
+ p.SetState(1783)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1787)
+ p.SetState(1785)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 265, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 264, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1786)
+ p.SetState(1784)
p.Base_window_name()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(1799)
+ p.SetState(1797)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(1789)
+ p.SetState(1787)
p.Match(SQLiteParserPARTITION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1790)
+ p.SetState(1788)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1791)
+ p.SetState(1789)
p.expr(0)
}
- p.SetState(1796)
+ p.SetState(1794)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1792)
+ p.SetState(1790)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1793)
+ p.SetState(1791)
p.expr(0)
}
- p.SetState(1798)
+ p.SetState(1796)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
}
- p.SetState(1811)
+ p.SetState(1809)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1801)
+ p.SetState(1799)
p.Match(SQLiteParserORDER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1802)
+ p.SetState(1800)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1803)
+ p.SetState(1801)
p.Ordering_term()
}
- p.SetState(1808)
+ p.SetState(1806)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1804)
+ p.SetState(1802)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1805)
+ p.SetState(1803)
p.Ordering_term()
}
- p.SetState(1810)
+ p.SetState(1808)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
}
- p.SetState(1814)
+ p.SetState(1812)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if (int64((_la-130)) & ^0x3f) == 0 && ((int64(1)<<(_la-130))&4503599761588225) != 0 {
{
- p.SetState(1813)
+ p.SetState(1811)
p.Frame_spec()
}
}
{
- p.SetState(1816)
+ p.SetState(1814)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFrame_specContext is an interface to support dynamic dispatch.
@@ -21413,23 +23945,28 @@ type IFrame_specContext interface {
}
type Frame_specContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFrame_specContext() *Frame_specContext {
var p = new(Frame_specContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_frame_spec
return p
}
+func InitEmptyFrame_specContext(p *Frame_specContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_frame_spec
+}
+
func (*Frame_specContext) IsFrame_specContext() {}
func NewFrame_specContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Frame_specContext {
var p = new(Frame_specContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_frame_spec
@@ -21504,72 +24041,82 @@ func (s *Frame_specContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Frame_spec() (localctx IFrame_specContext) {
- this := p
- _ = this
-
localctx = NewFrame_specContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 122, SQLiteParserRULE_frame_spec)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1819)
+ p.SetState(1817)
p.Frame_clause()
}
- p.SetState(1827)
+ p.SetState(1825)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserEXCLUDE_:
{
- p.SetState(1820)
+ p.SetState(1818)
p.Match(SQLiteParserEXCLUDE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1821)
+ p.SetState(1819)
p.Match(SQLiteParserNO_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1822)
+ p.SetState(1820)
p.Match(SQLiteParserOTHERS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCURRENT_:
{
- p.SetState(1823)
+ p.SetState(1821)
p.Match(SQLiteParserCURRENT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1824)
+ p.SetState(1822)
p.Match(SQLiteParserROW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserGROUP_:
{
- p.SetState(1825)
+ p.SetState(1823)
p.Match(SQLiteParserGROUP_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserTIES_:
{
- p.SetState(1826)
+ p.SetState(1824)
p.Match(SQLiteParserTIES_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCLOSE_PAR:
@@ -21577,7 +24124,17 @@ func (p *SQLiteParser) Frame_spec() (localctx IFrame_specContext) {
default:
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFrame_clauseContext is an interface to support dynamic dispatch.
@@ -21602,23 +24159,28 @@ type IFrame_clauseContext interface {
}
type Frame_clauseContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFrame_clauseContext() *Frame_clauseContext {
var p = new(Frame_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_frame_clause
return p
}
+func InitEmptyFrame_clauseContext(p *Frame_clauseContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_frame_clause
+}
+
func (*Frame_clauseContext) IsFrame_clauseContext() {}
func NewFrame_clauseContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Frame_clauseContext {
var p = new(Frame_clauseContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_frame_clause
@@ -21717,32 +24279,13 @@ func (s *Frame_clauseContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Frame_clause() (localctx IFrame_clauseContext) {
- this := p
- _ = this
-
localctx = NewFrame_clauseContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 124, SQLiteParserRULE_frame_clause)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1829)
+ p.SetState(1827)
_la = p.GetTokenStream().LA(1)
if !((int64((_la-130)) & ^0x3f) == 0 && ((int64(1)<<(_la-130))&4503599761588225) != 0) {
@@ -21752,36 +24295,60 @@ func (p *SQLiteParser) Frame_clause() (localctx IFrame_clauseContext) {
p.Consume()
}
}
- p.SetState(1836)
+ p.SetState(1834)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 273, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 272, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1830)
+ p.SetState(1828)
p.Frame_single()
}
case 2:
{
- p.SetState(1831)
+ p.SetState(1829)
p.Match(SQLiteParserBETWEEN_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1832)
+ p.SetState(1830)
p.Frame_left()
}
{
- p.SetState(1833)
+ p.SetState(1831)
p.Match(SQLiteParserAND_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1834)
+ p.SetState(1832)
p.Frame_right()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISimple_function_invocationContext is an interface to support dynamic dispatch.
@@ -21806,23 +24373,28 @@ type ISimple_function_invocationContext interface {
}
type Simple_function_invocationContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySimple_function_invocationContext() *Simple_function_invocationContext {
var p = new(Simple_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_simple_function_invocation
return p
}
+func InitEmptySimple_function_invocationContext(p *Simple_function_invocationContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_simple_function_invocation
+}
+
func (*Simple_function_invocationContext) IsSimple_function_invocationContext() {}
func NewSimple_function_invocationContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Simple_function_invocationContext {
var p = new(Simple_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_simple_function_invocation
@@ -21930,81 +24502,98 @@ func (s *Simple_function_invocationContext) ExitRule(listener antlr.ParseTreeLis
}
func (p *SQLiteParser) Simple_function_invocation() (localctx ISimple_function_invocationContext) {
- this := p
- _ = this
-
localctx = NewSimple_function_invocationContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 126, SQLiteParserRULE_simple_function_invocation)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1838)
+ p.SetState(1836)
p.Simple_func()
}
{
- p.SetState(1839)
+ p.SetState(1837)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1849)
+ p.SetState(1847)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
{
- p.SetState(1840)
+ p.SetState(1838)
p.expr(0)
}
- p.SetState(1845)
+ p.SetState(1843)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1841)
+ p.SetState(1839)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1842)
+ p.SetState(1840)
p.expr(0)
}
- p.SetState(1847)
+ p.SetState(1845)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case SQLiteParserSTAR:
{
- p.SetState(1848)
+ p.SetState(1846)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
{
- p.SetState(1851)
+ p.SetState(1849)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAggregate_function_invocationContext is an interface to support dynamic dispatch.
@@ -22031,23 +24620,28 @@ type IAggregate_function_invocationContext interface {
}
type Aggregate_function_invocationContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAggregate_function_invocationContext() *Aggregate_function_invocationContext {
var p = new(Aggregate_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_aggregate_function_invocation
return p
}
+func InitEmptyAggregate_function_invocationContext(p *Aggregate_function_invocationContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_aggregate_function_invocation
+}
+
func (*Aggregate_function_invocationContext) IsAggregate_function_invocationContext() {}
func NewAggregate_function_invocationContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Aggregate_function_invocationContext {
var p = new(Aggregate_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_aggregate_function_invocation
@@ -22175,80 +24769,87 @@ func (s *Aggregate_function_invocationContext) ExitRule(listener antlr.ParseTree
}
func (p *SQLiteParser) Aggregate_function_invocation() (localctx IAggregate_function_invocationContext) {
- this := p
- _ = this
-
localctx = NewAggregate_function_invocationContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 128, SQLiteParserRULE_aggregate_function_invocation)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1853)
+ p.SetState(1851)
p.Aggregate_func()
}
{
- p.SetState(1854)
+ p.SetState(1852)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1867)
+ p.SetState(1865)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
- p.SetState(1856)
+ p.SetState(1854)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 276, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 275, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1855)
+ p.SetState(1853)
p.Match(SQLiteParserDISTINCT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1858)
+ p.SetState(1856)
p.expr(0)
}
- p.SetState(1863)
+ p.SetState(1861)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1859)
+ p.SetState(1857)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1860)
+ p.SetState(1858)
p.expr(0)
}
- p.SetState(1865)
+ p.SetState(1863)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case SQLiteParserSTAR:
{
- p.SetState(1866)
+ p.SetState(1864)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCLOSE_PAR:
@@ -22256,22 +24857,39 @@ func (p *SQLiteParser) Aggregate_function_invocation() (localctx IAggregate_func
default:
}
{
- p.SetState(1869)
+ p.SetState(1867)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1871)
+ p.SetState(1869)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserFILTER_ {
{
- p.SetState(1870)
+ p.SetState(1868)
p.Filter_clause()
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IWindow_function_invocationContext is an interface to support dynamic dispatch.
@@ -22300,23 +24918,28 @@ type IWindow_function_invocationContext interface {
}
type Window_function_invocationContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyWindow_function_invocationContext() *Window_function_invocationContext {
var p = new(Window_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_window_function_invocation
return p
}
+func InitEmptyWindow_function_invocationContext(p *Window_function_invocationContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_window_function_invocation
+}
+
func (*Window_function_invocationContext) IsWindow_function_invocationContext() {}
func NewWindow_function_invocationContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Window_function_invocationContext {
var p = new(Window_function_invocationContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_window_function_invocation
@@ -22476,70 +25099,71 @@ func (s *Window_function_invocationContext) ExitRule(listener antlr.ParseTreeLis
}
func (p *SQLiteParser) Window_function_invocation() (localctx IWindow_function_invocationContext) {
- this := p
- _ = this
-
localctx = NewWindow_function_invocationContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 130, SQLiteParserRULE_window_function_invocation)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1873)
+ p.SetState(1871)
p.Window_function()
}
{
- p.SetState(1874)
+ p.SetState(1872)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1884)
+ p.SetState(1882)
p.GetErrorHandler().Sync(p)
-
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserOPEN_PAR, SQLiteParserPLUS, SQLiteParserMINUS, SQLiteParserTILDE, SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_, SQLiteParserIDENTIFIER, SQLiteParserNUMERIC_LITERAL, SQLiteParserNUMBERED_BIND_PARAMETER, SQLiteParserNAMED_BIND_PARAMETER, SQLiteParserSTRING_LITERAL, SQLiteParserBLOB_LITERAL:
{
- p.SetState(1875)
+ p.SetState(1873)
p.expr(0)
}
- p.SetState(1880)
+ p.SetState(1878)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1876)
+ p.SetState(1874)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1877)
+ p.SetState(1875)
p.expr(0)
}
- p.SetState(1882)
+ p.SetState(1880)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
case SQLiteParserSTAR:
{
- p.SetState(1883)
+ p.SetState(1881)
p.Match(SQLiteParserSTAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCLOSE_PAR:
@@ -22547,42 +25171,69 @@ func (p *SQLiteParser) Window_function_invocation() (localctx IWindow_function_i
default:
}
{
- p.SetState(1886)
+ p.SetState(1884)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1888)
+ p.SetState(1886)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserFILTER_ {
{
- p.SetState(1887)
+ p.SetState(1885)
p.Filter_clause()
}
}
{
- p.SetState(1890)
+ p.SetState(1888)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1893)
+ p.SetState(1891)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 283, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 282, p.GetParserRuleContext()) {
case 1:
{
- p.SetState(1891)
+ p.SetState(1889)
p.Window_defn()
}
case 2:
{
- p.SetState(1892)
+ p.SetState(1890)
p.Window_name()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICommon_table_stmtContext is an interface to support dynamic dispatch.
@@ -22605,23 +25256,28 @@ type ICommon_table_stmtContext interface {
}
type Common_table_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCommon_table_stmtContext() *Common_table_stmtContext {
var p = new(Common_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_common_table_stmt
return p
}
+func InitEmptyCommon_table_stmtContext(p *Common_table_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_common_table_stmt
+}
+
func (*Common_table_stmtContext) IsCommon_table_stmtContext() {}
func NewCommon_table_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Common_table_stmtContext {
var p = new(Common_table_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_common_table_stmt
@@ -22709,68 +25365,79 @@ func (s *Common_table_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Common_table_stmt() (localctx ICommon_table_stmtContext) {
- this := p
- _ = this
-
localctx = NewCommon_table_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 132, SQLiteParserRULE_common_table_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1895)
+ p.SetState(1893)
p.Match(SQLiteParserWITH_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1897)
+ p.SetState(1895)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 284, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 283, p.GetParserRuleContext()) == 1 {
{
- p.SetState(1896)
+ p.SetState(1894)
p.Match(SQLiteParserRECURSIVE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(1899)
+ p.SetState(1897)
p.Common_table_expression()
}
- p.SetState(1904)
+ p.SetState(1902)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1900)
+ p.SetState(1898)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1901)
+ p.SetState(1899)
p.Common_table_expression()
}
- p.SetState(1906)
+ p.SetState(1904)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOrder_by_stmtContext is an interface to support dynamic dispatch.
@@ -22793,23 +25460,28 @@ type IOrder_by_stmtContext interface {
}
type Order_by_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOrder_by_stmtContext() *Order_by_stmtContext {
var p = new(Order_by_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_order_by_stmt
return p
}
+func InitEmptyOrder_by_stmtContext(p *Order_by_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_order_by_stmt
+}
+
func (*Order_by_stmtContext) IsOrder_by_stmtContext() {}
func NewOrder_by_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Order_by_stmtContext {
var p = new(Order_by_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_order_by_stmt
@@ -22897,62 +25569,71 @@ func (s *Order_by_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Order_by_stmt() (localctx IOrder_by_stmtContext) {
- this := p
- _ = this
-
localctx = NewOrder_by_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 134, SQLiteParserRULE_order_by_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1907)
+ p.SetState(1905)
p.Match(SQLiteParserORDER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1908)
+ p.SetState(1906)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1909)
+ p.SetState(1907)
p.Ordering_term()
}
- p.SetState(1914)
+ p.SetState(1912)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(1910)
+ p.SetState(1908)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1911)
+ p.SetState(1909)
p.Ordering_term()
}
- p.SetState(1916)
+ p.SetState(1914)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ILimit_stmtContext is an interface to support dynamic dispatch.
@@ -22974,23 +25655,28 @@ type ILimit_stmtContext interface {
}
type Limit_stmtContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyLimit_stmtContext() *Limit_stmtContext {
var p = new(Limit_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_limit_stmt
return p
}
+func InitEmptyLimit_stmtContext(p *Limit_stmtContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_limit_stmt
+}
+
func (*Limit_stmtContext) IsLimit_stmtContext() {}
func NewLimit_stmtContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Limit_stmtContext {
var p = new(Limit_stmtContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_limit_stmt
@@ -23074,45 +25760,33 @@ func (s *Limit_stmtContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Limit_stmt() (localctx ILimit_stmtContext) {
- this := p
- _ = this
-
localctx = NewLimit_stmtContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 136, SQLiteParserRULE_limit_stmt)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1917)
+ p.SetState(1915)
p.Match(SQLiteParserLIMIT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1918)
+ p.SetState(1916)
p.expr(0)
}
- p.SetState(1921)
+ p.SetState(1919)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCOMMA || _la == SQLiteParserOFFSET_ {
{
- p.SetState(1919)
+ p.SetState(1917)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserCOMMA || _la == SQLiteParserOFFSET_) {
@@ -23123,13 +25797,23 @@ func (p *SQLiteParser) Limit_stmt() (localctx ILimit_stmtContext) {
}
}
{
- p.SetState(1920)
+ p.SetState(1918)
p.expr(0)
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOrdering_termContext is an interface to support dynamic dispatch.
@@ -23153,23 +25837,28 @@ type IOrdering_termContext interface {
}
type Ordering_termContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOrdering_termContext() *Ordering_termContext {
var p = new(Ordering_termContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_ordering_term
return p
}
+func InitEmptyOrdering_termContext(p *Ordering_termContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_ordering_term
+}
+
func (*Ordering_termContext) IsOrdering_termContext() {}
func NewOrdering_termContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Ordering_termContext {
var p = new(Ordering_termContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_ordering_term
@@ -23264,71 +25953,69 @@ func (s *Ordering_termContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Ordering_term() (localctx IOrdering_termContext) {
- this := p
- _ = this
-
localctx = NewOrdering_termContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 138, SQLiteParserRULE_ordering_term)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1923)
+ p.SetState(1921)
p.expr(0)
}
- p.SetState(1926)
+ p.SetState(1924)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCOLLATE_ {
{
- p.SetState(1924)
+ p.SetState(1922)
p.Match(SQLiteParserCOLLATE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1925)
+ p.SetState(1923)
p.Collation_name()
}
}
- p.SetState(1929)
+ p.SetState(1927)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserASC_ || _la == SQLiteParserDESC_ {
{
- p.SetState(1928)
+ p.SetState(1926)
p.Asc_desc()
}
}
- p.SetState(1933)
+ p.SetState(1931)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserNULLS_ {
{
- p.SetState(1931)
+ p.SetState(1929)
p.Match(SQLiteParserNULLS_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1932)
+ p.SetState(1930)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserFIRST_ || _la == SQLiteParserLAST_) {
@@ -23341,7 +26028,17 @@ func (p *SQLiteParser) Ordering_term() (localctx IOrdering_termContext) {
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAsc_descContext is an interface to support dynamic dispatch.
@@ -23360,23 +26057,28 @@ type IAsc_descContext interface {
}
type Asc_descContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAsc_descContext() *Asc_descContext {
var p = new(Asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_asc_desc
return p
}
+func InitEmptyAsc_descContext(p *Asc_descContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_asc_desc
+}
+
func (*Asc_descContext) IsAsc_descContext() {}
func NewAsc_descContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Asc_descContext {
var p = new(Asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_asc_desc
@@ -23415,32 +26117,13 @@ func (s *Asc_descContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Asc_desc() (localctx IAsc_descContext) {
- this := p
- _ = this
-
localctx = NewAsc_descContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 140, SQLiteParserRULE_asc_desc)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1935)
+ p.SetState(1933)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserASC_ || _la == SQLiteParserDESC_) {
@@ -23451,7 +26134,17 @@ func (p *SQLiteParser) Asc_desc() (localctx IAsc_descContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFrame_leftContext is an interface to support dynamic dispatch.
@@ -23474,23 +26167,28 @@ type IFrame_leftContext interface {
}
type Frame_leftContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFrame_leftContext() *Frame_leftContext {
var p = new(Frame_leftContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_frame_left
return p
}
+func InitEmptyFrame_leftContext(p *Frame_leftContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_frame_left
+}
+
func (*Frame_leftContext) IsFrame_leftContext() {}
func NewFrame_leftContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Frame_leftContext {
var p = new(Frame_leftContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_frame_left
@@ -23557,78 +26255,98 @@ func (s *Frame_leftContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Frame_left() (localctx IFrame_leftContext) {
- this := p
- _ = this
-
localctx = NewFrame_leftContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 142, SQLiteParserRULE_frame_left)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1947)
+ p.SetState(1945)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 291, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 290, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1937)
+ p.SetState(1935)
p.expr(0)
}
{
- p.SetState(1938)
+ p.SetState(1936)
p.Match(SQLiteParserPRECEDING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1940)
+ p.SetState(1938)
p.expr(0)
}
{
- p.SetState(1941)
+ p.SetState(1939)
p.Match(SQLiteParserFOLLOWING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1943)
+ p.SetState(1941)
p.Match(SQLiteParserCURRENT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1944)
+ p.SetState(1942)
p.Match(SQLiteParserROW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 4:
p.EnterOuterAlt(localctx, 4)
{
- p.SetState(1945)
+ p.SetState(1943)
p.Match(SQLiteParserUNBOUNDED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1946)
+ p.SetState(1944)
p.Match(SQLiteParserPRECEDING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFrame_rightContext is an interface to support dynamic dispatch.
@@ -23651,23 +26369,28 @@ type IFrame_rightContext interface {
}
type Frame_rightContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFrame_rightContext() *Frame_rightContext {
var p = new(Frame_rightContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_frame_right
return p
}
+func InitEmptyFrame_rightContext(p *Frame_rightContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_frame_right
+}
+
func (*Frame_rightContext) IsFrame_rightContext() {}
func NewFrame_rightContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Frame_rightContext {
var p = new(Frame_rightContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_frame_right
@@ -23734,78 +26457,98 @@ func (s *Frame_rightContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Frame_right() (localctx IFrame_rightContext) {
- this := p
- _ = this
-
localctx = NewFrame_rightContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 144, SQLiteParserRULE_frame_right)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1959)
+ p.SetState(1957)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 292, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 291, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1949)
+ p.SetState(1947)
p.expr(0)
}
{
- p.SetState(1950)
+ p.SetState(1948)
p.Match(SQLiteParserPRECEDING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1952)
+ p.SetState(1950)
p.expr(0)
}
{
- p.SetState(1953)
+ p.SetState(1951)
p.Match(SQLiteParserFOLLOWING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1955)
+ p.SetState(1953)
p.Match(SQLiteParserCURRENT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1956)
+ p.SetState(1954)
p.Match(SQLiteParserROW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 4:
p.EnterOuterAlt(localctx, 4)
{
- p.SetState(1957)
+ p.SetState(1955)
p.Match(SQLiteParserUNBOUNDED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1958)
+ p.SetState(1956)
p.Match(SQLiteParserFOLLOWING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFrame_singleContext is an interface to support dynamic dispatch.
@@ -23827,23 +26570,28 @@ type IFrame_singleContext interface {
}
type Frame_singleContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFrame_singleContext() *Frame_singleContext {
var p = new(Frame_singleContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_frame_single
return p
}
+func InitEmptyFrame_singleContext(p *Frame_singleContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_frame_single
+}
+
func (*Frame_singleContext) IsFrame_singleContext() {}
func NewFrame_singleContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Frame_singleContext {
var p = new(Frame_singleContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_frame_single
@@ -23906,67 +26654,83 @@ func (s *Frame_singleContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Frame_single() (localctx IFrame_singleContext) {
- this := p
- _ = this
-
localctx = NewFrame_singleContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 146, SQLiteParserRULE_frame_single)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(1968)
+ p.SetState(1966)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 293, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 292, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1961)
+ p.SetState(1959)
p.expr(0)
}
{
- p.SetState(1962)
+ p.SetState(1960)
p.Match(SQLiteParserPRECEDING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1964)
+ p.SetState(1962)
p.Match(SQLiteParserUNBOUNDED_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1965)
+ p.SetState(1963)
p.Match(SQLiteParserPRECEDING_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case 3:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1966)
+ p.SetState(1964)
p.Match(SQLiteParserCURRENT_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1967)
+ p.SetState(1965)
p.Match(SQLiteParserROW_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IWindow_functionContext is an interface to support dynamic dispatch.
@@ -24008,23 +26772,28 @@ type IWindow_functionContext interface {
}
type Window_functionContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyWindow_functionContext() *Window_functionContext {
var p = new(Window_functionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_window_function
return p
}
+func InitEmptyWindow_functionContext(p *Window_functionContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_window_function
+}
+
func (*Window_functionContext) IsWindow_functionContext() {}
func NewWindow_functionContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Window_functionContext {
var p = new(Window_functionContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_window_function
@@ -24251,37 +27020,21 @@ func (s *Window_functionContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Window_function() (localctx IWindow_functionContext) {
- this := p
- _ = this
-
localctx = NewWindow_functionContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 148, SQLiteParserRULE_window_function)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(2055)
+ p.SetState(2053)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserFIRST_VALUE_, SQLiteParserLAST_VALUE_:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(1970)
+ p.SetState(1968)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserFIRST_VALUE_ || _la == SQLiteParserLAST_VALUE_) {
@@ -24292,60 +27045,86 @@ func (p *SQLiteParser) Window_function() (localctx IWindow_functionContext) {
}
}
{
- p.SetState(1971)
+ p.SetState(1969)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1972)
+ p.SetState(1970)
p.expr(0)
}
{
- p.SetState(1973)
+ p.SetState(1971)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1974)
+ p.SetState(1972)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1975)
+ p.SetState(1973)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1977)
+ p.SetState(1975)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(1976)
+ p.SetState(1974)
p.Partition_by()
}
}
{
- p.SetState(1979)
+ p.SetState(1977)
p.Order_by_expr_asc_desc()
}
- p.SetState(1981)
+ p.SetState(1979)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if (int64((_la-130)) & ^0x3f) == 0 && ((int64(1)<<(_la-130))&4503599761588225) != 0 {
{
- p.SetState(1980)
+ p.SetState(1978)
p.Frame_clause()
}
}
{
- p.SetState(1983)
+ p.SetState(1981)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserCUME_DIST_, SQLiteParserPERCENT_RANK_:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(1985)
+ p.SetState(1983)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserCUME_DIST_ || _la == SQLiteParserPERCENT_RANK_) {
@@ -24356,52 +27135,78 @@ func (p *SQLiteParser) Window_function() (localctx IWindow_functionContext) {
}
}
{
- p.SetState(1986)
+ p.SetState(1984)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1987)
+ p.SetState(1985)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1988)
+ p.SetState(1986)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1989)
+ p.SetState(1987)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(1991)
+ p.SetState(1989)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(1990)
+ p.SetState(1988)
p.Partition_by()
}
}
- p.SetState(1994)
+ p.SetState(1992)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserORDER_ {
{
- p.SetState(1993)
+ p.SetState(1991)
p.Order_by_expr()
}
}
{
- p.SetState(1996)
+ p.SetState(1994)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserDENSE_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(1997)
+ p.SetState(1995)
_la = p.GetTokenStream().LA(1)
if !((int64((_la-163)) & ^0x3f) == 0 && ((int64(1)<<(_la-163))&385) != 0) {
@@ -24412,45 +27217,68 @@ func (p *SQLiteParser) Window_function() (localctx IWindow_functionContext) {
}
}
{
- p.SetState(1998)
+ p.SetState(1996)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(1999)
+ p.SetState(1997)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2000)
+ p.SetState(1998)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2001)
+ p.SetState(1999)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2003)
+ p.SetState(2001)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(2002)
+ p.SetState(2000)
p.Partition_by()
}
}
{
- p.SetState(2005)
+ p.SetState(2003)
p.Order_by_expr_asc_desc()
}
{
- p.SetState(2006)
+ p.SetState(2004)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserLAG_, SQLiteParserLEAD_:
p.EnterOuterAlt(localctx, 4)
{
- p.SetState(2008)
+ p.SetState(2006)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserLAG_ || _la == SQLiteParserLEAD_) {
@@ -24461,182 +27289,282 @@ func (p *SQLiteParser) Window_function() (localctx IWindow_functionContext) {
}
}
{
- p.SetState(2009)
+ p.SetState(2007)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2010)
+ p.SetState(2008)
p.expr(0)
}
- p.SetState(2012)
+ p.SetState(2010)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 299, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 298, p.GetParserRuleContext()) == 1 {
{
- p.SetState(2011)
+ p.SetState(2009)
p.Of_OF_fset()
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
- p.SetState(2015)
+ p.SetState(2013)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserCOMMA {
{
- p.SetState(2014)
+ p.SetState(2012)
p.Default_DEFAULT__value()
}
}
{
- p.SetState(2017)
+ p.SetState(2015)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2018)
+ p.SetState(2016)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2019)
+ p.SetState(2017)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2021)
+ p.SetState(2019)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(2020)
+ p.SetState(2018)
p.Partition_by()
}
}
{
- p.SetState(2023)
+ p.SetState(2021)
p.Order_by_expr_asc_desc()
}
{
- p.SetState(2024)
+ p.SetState(2022)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserNTH_VALUE_:
p.EnterOuterAlt(localctx, 5)
{
- p.SetState(2026)
+ p.SetState(2024)
p.Match(SQLiteParserNTH_VALUE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2027)
+ p.SetState(2025)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2028)
+ p.SetState(2026)
p.expr(0)
}
{
- p.SetState(2029)
+ p.SetState(2027)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2030)
+ p.SetState(2028)
p.Signed_number()
}
{
- p.SetState(2031)
+ p.SetState(2029)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2032)
+ p.SetState(2030)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2033)
+ p.SetState(2031)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2035)
+ p.SetState(2033)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(2034)
+ p.SetState(2032)
p.Partition_by()
}
}
{
- p.SetState(2037)
+ p.SetState(2035)
p.Order_by_expr_asc_desc()
}
- p.SetState(2039)
+ p.SetState(2037)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if (int64((_la-130)) & ^0x3f) == 0 && ((int64(1)<<(_la-130))&4503599761588225) != 0 {
{
- p.SetState(2038)
+ p.SetState(2036)
p.Frame_clause()
}
}
{
- p.SetState(2041)
+ p.SetState(2039)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserNTILE_:
p.EnterOuterAlt(localctx, 6)
{
- p.SetState(2043)
+ p.SetState(2041)
p.Match(SQLiteParserNTILE_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2044)
+ p.SetState(2042)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2045)
+ p.SetState(2043)
p.expr(0)
}
{
- p.SetState(2046)
+ p.SetState(2044)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2047)
+ p.SetState(2045)
p.Match(SQLiteParserOVER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2048)
+ p.SetState(2046)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2050)
+ p.SetState(2048)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserPARTITION_ {
{
- p.SetState(2049)
+ p.SetState(2047)
p.Partition_by()
}
}
{
- p.SetState(2052)
+ p.SetState(2050)
p.Order_by_expr_asc_desc()
}
{
- p.SetState(2053)
+ p.SetState(2051)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOf_OF_fsetContext is an interface to support dynamic dispatch.
@@ -24655,23 +27583,28 @@ type IOf_OF_fsetContext interface {
}
type Of_OF_fsetContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOf_OF_fsetContext() *Of_OF_fsetContext {
var p = new(Of_OF_fsetContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_of_OF_fset
return p
}
+func InitEmptyOf_OF_fsetContext(p *Of_OF_fsetContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_of_OF_fset
+}
+
func (*Of_OF_fsetContext) IsOf_OF_fsetContext() {}
func NewOf_OF_fsetContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Of_OF_fsetContext {
var p = new(Of_OF_fsetContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_of_OF_fset
@@ -24722,39 +27655,33 @@ func (s *Of_OF_fsetContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Of_OF_fset() (localctx IOf_OF_fsetContext) {
- this := p
- _ = this
-
localctx = NewOf_OF_fsetContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 150, SQLiteParserRULE_of_OF_fset)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2057)
+ p.SetState(2055)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2058)
+ p.SetState(2056)
p.Signed_number()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IDefault_DEFAULT__valueContext is an interface to support dynamic dispatch.
@@ -24773,23 +27700,28 @@ type IDefault_DEFAULT__valueContext interface {
}
type Default_DEFAULT__valueContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyDefault_DEFAULT__valueContext() *Default_DEFAULT__valueContext {
var p = new(Default_DEFAULT__valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_default_DEFAULT__value
return p
}
+func InitEmptyDefault_DEFAULT__valueContext(p *Default_DEFAULT__valueContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_default_DEFAULT__value
+}
+
func (*Default_DEFAULT__valueContext) IsDefault_DEFAULT__valueContext() {}
func NewDefault_DEFAULT__valueContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Default_DEFAULT__valueContext {
var p = new(Default_DEFAULT__valueContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_default_DEFAULT__value
@@ -24840,39 +27772,33 @@ func (s *Default_DEFAULT__valueContext) ExitRule(listener antlr.ParseTreeListene
}
func (p *SQLiteParser) Default_DEFAULT__value() (localctx IDefault_DEFAULT__valueContext) {
- this := p
- _ = this
-
localctx = NewDefault_DEFAULT__valueContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 152, SQLiteParserRULE_default_DEFAULT__value)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2060)
+ p.SetState(2058)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2061)
+ p.SetState(2059)
p.Signed_number()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IPartition_byContext is an interface to support dynamic dispatch.
@@ -24893,15 +27819,20 @@ type IPartition_byContext interface {
}
type Partition_byContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyPartition_byContext() *Partition_byContext {
var p = new(Partition_byContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_partition_by
+ return p
+}
+
+func InitEmptyPartition_byContext(p *Partition_byContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_partition_by
- return p
}
func (*Partition_byContext) IsPartition_byContext() {}
@@ -24909,7 +27840,7 @@ func (*Partition_byContext) IsPartition_byContext() {}
func NewPartition_byContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Partition_byContext {
var p = new(Partition_byContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_partition_by
@@ -24989,60 +27920,65 @@ func (s *Partition_byContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Partition_by() (localctx IPartition_byContext) {
- this := p
- _ = this
-
localctx = NewPartition_byContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 154, SQLiteParserRULE_partition_by)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
var _alt int
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2063)
+ p.SetState(2061)
p.Match(SQLiteParserPARTITION_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2064)
+ p.SetState(2062)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2066)
+ p.SetState(2064)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_alt = 1
for ok := true; ok; ok = _alt != 2 && _alt != antlr.ATNInvalidAltNumber {
switch _alt {
case 1:
{
- p.SetState(2065)
+ p.SetState(2063)
p.expr(0)
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
- p.SetState(2068)
+ p.SetState(2066)
p.GetErrorHandler().Sync(p)
- _alt = p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 306, p.GetParserRuleContext())
+ _alt = p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 305, p.GetParserRuleContext())
+ if p.HasError() {
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOrder_by_exprContext is an interface to support dynamic dispatch.
@@ -25063,23 +27999,28 @@ type IOrder_by_exprContext interface {
}
type Order_by_exprContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOrder_by_exprContext() *Order_by_exprContext {
var p = new(Order_by_exprContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_order_by_expr
return p
}
+func InitEmptyOrder_by_exprContext(p *Order_by_exprContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_order_by_expr
+}
+
func (*Order_by_exprContext) IsOrder_by_exprContext() {}
func NewOrder_by_exprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Order_by_exprContext {
var p = new(Order_by_exprContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_order_by_expr
@@ -25159,54 +28100,59 @@ func (s *Order_by_exprContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Order_by_expr() (localctx IOrder_by_exprContext) {
- this := p
- _ = this
-
localctx = NewOrder_by_exprContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 156, SQLiteParserRULE_order_by_expr)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2070)
+ p.SetState(2068)
p.Match(SQLiteParserORDER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2071)
+ p.SetState(2069)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
- p.SetState(2073)
+ p.SetState(2071)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for ok := true; ok; ok = ((int64((_la-3)) & ^0x3f) == 0 && ((int64(1)<<(_la-3))&-16776415) != 0) || ((int64((_la-67)) & ^0x3f) == 0 && ((int64(1)<<(_la-67))&-1) != 0) || ((int64((_la-131)) & ^0x3f) == 0 && ((int64(1)<<(_la-131))&9088264048033660927) != 0) {
{
- p.SetState(2072)
+ p.SetState(2070)
p.expr(0)
}
- p.SetState(2075)
+ p.SetState(2073)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IOrder_by_expr_asc_descContext is an interface to support dynamic dispatch.
@@ -25226,23 +28172,28 @@ type IOrder_by_expr_asc_descContext interface {
}
type Order_by_expr_asc_descContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyOrder_by_expr_asc_descContext() *Order_by_expr_asc_descContext {
var p = new(Order_by_expr_asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_order_by_expr_asc_desc
return p
}
+func InitEmptyOrder_by_expr_asc_descContext(p *Order_by_expr_asc_descContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_order_by_expr_asc_desc
+}
+
func (*Order_by_expr_asc_descContext) IsOrder_by_expr_asc_descContext() {}
func NewOrder_by_expr_asc_descContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Order_by_expr_asc_descContext {
var p = new(Order_by_expr_asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_order_by_expr_asc_desc
@@ -25297,43 +28248,41 @@ func (s *Order_by_expr_asc_descContext) ExitRule(listener antlr.ParseTreeListene
}
func (p *SQLiteParser) Order_by_expr_asc_desc() (localctx IOrder_by_expr_asc_descContext) {
- this := p
- _ = this
-
localctx = NewOrder_by_expr_asc_descContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 158, SQLiteParserRULE_order_by_expr_asc_desc)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2077)
+ p.SetState(2075)
p.Match(SQLiteParserORDER_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2078)
+ p.SetState(2076)
p.Match(SQLiteParserBY_)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2079)
+ p.SetState(2077)
p.Order_by_expr_asc_desc()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IExpr_asc_descContext is an interface to support dynamic dispatch.
@@ -25356,23 +28305,28 @@ type IExpr_asc_descContext interface {
}
type Expr_asc_descContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyExpr_asc_descContext() *Expr_asc_descContext {
var p = new(Expr_asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_expr_asc_desc
return p
}
+func InitEmptyExpr_asc_descContext(p *Expr_asc_descContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_expr_asc_desc
+}
+
func (*Expr_asc_descContext) IsExpr_asc_descContext() {}
func NewExpr_asc_descContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Expr_asc_descContext {
var p = new(Expr_asc_descContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_expr_asc_desc
@@ -25493,76 +28447,83 @@ func (s *Expr_asc_descContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Expr_asc_desc() (localctx IExpr_asc_descContext) {
- this := p
- _ = this
-
localctx = NewExpr_asc_descContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 160, SQLiteParserRULE_expr_asc_desc)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2081)
+ p.SetState(2079)
p.expr(0)
}
- p.SetState(2083)
+ p.SetState(2081)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserASC_ || _la == SQLiteParserDESC_ {
{
- p.SetState(2082)
+ p.SetState(2080)
p.Asc_desc()
}
}
- p.SetState(2092)
+ p.SetState(2090)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
for _la == SQLiteParserCOMMA {
{
- p.SetState(2085)
+ p.SetState(2083)
p.Match(SQLiteParserCOMMA)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2086)
+ p.SetState(2084)
p.expr(0)
}
- p.SetState(2088)
+ p.SetState(2086)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
if _la == SQLiteParserASC_ || _la == SQLiteParserDESC_ {
{
- p.SetState(2087)
+ p.SetState(2085)
p.Asc_desc()
}
}
- p.SetState(2094)
+ p.SetState(2092)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
_la = p.GetTokenStream().LA(1)
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IInitial_selectContext is an interface to support dynamic dispatch.
@@ -25580,23 +28541,28 @@ type IInitial_selectContext interface {
}
type Initial_selectContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyInitial_selectContext() *Initial_selectContext {
var p = new(Initial_selectContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_initial_select
return p
}
+func InitEmptyInitial_selectContext(p *Initial_selectContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_initial_select
+}
+
func (*Initial_selectContext) IsInitial_selectContext() {}
func NewInitial_selectContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Initial_selectContext {
var p = new(Initial_selectContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_initial_select
@@ -25643,35 +28609,25 @@ func (s *Initial_selectContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Initial_select() (localctx IInitial_selectContext) {
- this := p
- _ = this
-
localctx = NewInitial_selectContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 162, SQLiteParserRULE_initial_select)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2095)
+ p.SetState(2093)
p.Select_stmt()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IRecursive__selectContext is an interface to support dynamic dispatch.
@@ -25689,23 +28645,28 @@ type IRecursive__selectContext interface {
}
type Recursive__selectContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyRecursive__selectContext() *Recursive__selectContext {
var p = new(Recursive__selectContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_recursive__select
return p
}
+func InitEmptyRecursive__selectContext(p *Recursive__selectContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_recursive__select
+}
+
func (*Recursive__selectContext) IsRecursive__selectContext() {}
func NewRecursive__selectContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Recursive__selectContext {
var p = new(Recursive__selectContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_recursive__select
@@ -25752,35 +28713,25 @@ func (s *Recursive__selectContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Recursive__select() (localctx IRecursive__selectContext) {
- this := p
- _ = this
-
localctx = NewRecursive__selectContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 164, SQLiteParserRULE_recursive__select)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2097)
+ p.SetState(2095)
p.Select_stmt()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IUnary_operatorContext is an interface to support dynamic dispatch.
@@ -25801,23 +28752,28 @@ type IUnary_operatorContext interface {
}
type Unary_operatorContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyUnary_operatorContext() *Unary_operatorContext {
var p = new(Unary_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_unary_operator
return p
}
+func InitEmptyUnary_operatorContext(p *Unary_operatorContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_unary_operator
+}
+
func (*Unary_operatorContext) IsUnary_operatorContext() {}
func NewUnary_operatorContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Unary_operatorContext {
var p = new(Unary_operatorContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_unary_operator
@@ -25864,32 +28820,13 @@ func (s *Unary_operatorContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Unary_operator() (localctx IUnary_operatorContext) {
- this := p
- _ = this
-
localctx = NewUnary_operatorContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 166, SQLiteParserRULE_unary_operator)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2099)
+ p.SetState(2097)
_la = p.GetTokenStream().LA(1)
if !(((int64(_la) & ^0x3f) == 0 && ((int64(1)<<_la)&6400) != 0) || _la == SQLiteParserNOT_) {
@@ -25900,7 +28837,17 @@ func (p *SQLiteParser) Unary_operator() (localctx IUnary_operatorContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IError_messageContext is an interface to support dynamic dispatch.
@@ -25918,23 +28865,28 @@ type IError_messageContext interface {
}
type Error_messageContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyError_messageContext() *Error_messageContext {
var p = new(Error_messageContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_error_message
return p
}
+func InitEmptyError_messageContext(p *Error_messageContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_error_message
+}
+
func (*Error_messageContext) IsError_messageContext() {}
func NewError_messageContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Error_messageContext {
var p = new(Error_messageContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_error_message
@@ -25969,35 +28921,29 @@ func (s *Error_messageContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Error_message() (localctx IError_messageContext) {
- this := p
- _ = this
-
localctx = NewError_messageContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 168, SQLiteParserRULE_error_message)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2101)
+ p.SetState(2099)
p.Match(SQLiteParserSTRING_LITERAL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IModule_argumentContext is an interface to support dynamic dispatch.
@@ -26016,23 +28962,28 @@ type IModule_argumentContext interface {
}
type Module_argumentContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyModule_argumentContext() *Module_argumentContext {
var p = new(Module_argumentContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_module_argument
return p
}
+func InitEmptyModule_argumentContext(p *Module_argumentContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_module_argument
+}
+
func (*Module_argumentContext) IsModule_argumentContext() {}
func NewModule_argumentContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Module_argumentContext {
var p = new(Module_argumentContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_module_argument
@@ -26095,48 +29046,44 @@ func (s *Module_argumentContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Module_argument() (localctx IModule_argumentContext) {
- this := p
- _ = this
-
localctx = NewModule_argumentContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 170, SQLiteParserRULE_module_argument)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(2105)
+ p.SetState(2103)
p.GetErrorHandler().Sync(p)
- switch p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 311, p.GetParserRuleContext()) {
+ if p.HasError() {
+ goto errorExit
+ }
+
+ switch p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 310, p.GetParserRuleContext()) {
case 1:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2103)
+ p.SetState(2101)
p.expr(0)
}
case 2:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(2104)
+ p.SetState(2102)
p.Column_def()
}
+ case antlr.ATNInvalidAltNumber:
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IColumn_aliasContext is an interface to support dynamic dispatch.
@@ -26155,23 +29102,28 @@ type IColumn_aliasContext interface {
}
type Column_aliasContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyColumn_aliasContext() *Column_aliasContext {
var p = new(Column_aliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_column_alias
return p
}
+func InitEmptyColumn_aliasContext(p *Column_aliasContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_column_alias
+}
+
func (*Column_aliasContext) IsColumn_aliasContext() {}
func NewColumn_aliasContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Column_aliasContext {
var p = new(Column_aliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_column_alias
@@ -26210,32 +29162,13 @@ func (s *Column_aliasContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Column_alias() (localctx IColumn_aliasContext) {
- this := p
- _ = this
-
localctx = NewColumn_aliasContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 172, SQLiteParserRULE_column_alias)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2107)
+ p.SetState(2105)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL) {
@@ -26246,7 +29179,17 @@ func (p *SQLiteParser) Column_alias() (localctx IColumn_aliasContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IKeywordContext is an interface to support dynamic dispatch.
@@ -26420,23 +29363,28 @@ type IKeywordContext interface {
}
type KeywordContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyKeywordContext() *KeywordContext {
var p = new(KeywordContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_keyword
return p
}
+func InitEmptyKeywordContext(p *KeywordContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_keyword
+}
+
func (*KeywordContext) IsKeywordContext() {}
func NewKeywordContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *KeywordContext {
var p = new(KeywordContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_keyword
@@ -27095,32 +30043,13 @@ func (s *KeywordContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Keyword() (localctx IKeywordContext) {
- this := p
- _ = this
-
localctx = NewKeywordContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 174, SQLiteParserRULE_keyword)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2109)
+ p.SetState(2107)
_la = p.GetTokenStream().LA(1)
if !(((int64(_la) & ^0x3f) == 0 && ((int64(1)<<_la)&-134217728) != 0) || ((int64((_la-64)) & ^0x3f) == 0 && ((int64(1)<<(_la-64))&-1) != 0) || ((int64((_la-128)) & ^0x3f) == 0 && ((int64(1)<<(_la-128))&72057594037927935) != 0)) {
@@ -27131,7 +30060,17 @@ func (p *SQLiteParser) Keyword() (localctx IKeywordContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// INameContext is an interface to support dynamic dispatch.
@@ -27149,23 +30088,28 @@ type INameContext interface {
}
type NameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyNameContext() *NameContext {
var p = new(NameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_name
return p
}
+func InitEmptyNameContext(p *NameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_name
+}
+
func (*NameContext) IsNameContext() {}
func NewNameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *NameContext {
var p = new(NameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_name
@@ -27212,35 +30156,25 @@ func (s *NameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Name() (localctx INameContext) {
- this := p
- _ = this
-
localctx = NewNameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 176, SQLiteParserRULE_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2111)
+ p.SetState(2109)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFunction_nameContext is an interface to support dynamic dispatch.
@@ -27258,23 +30192,28 @@ type IFunction_nameContext interface {
}
type Function_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFunction_nameContext() *Function_nameContext {
var p = new(Function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_function_name
return p
}
+func InitEmptyFunction_nameContext(p *Function_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_function_name
+}
+
func (*Function_nameContext) IsFunction_nameContext() {}
func NewFunction_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Function_nameContext {
var p = new(Function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_function_name
@@ -27321,35 +30260,25 @@ func (s *Function_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Function_name() (localctx IFunction_nameContext) {
- this := p
- _ = this
-
localctx = NewFunction_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 178, SQLiteParserRULE_function_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2113)
+ p.SetState(2111)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IQualified_function_nameContext is an interface to support dynamic dispatch.
@@ -27369,23 +30298,28 @@ type IQualified_function_nameContext interface {
}
type Qualified_function_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyQualified_function_nameContext() *Qualified_function_nameContext {
var p = new(Qualified_function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_qualified_function_name
return p
}
+func InitEmptyQualified_function_nameContext(p *Qualified_function_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_qualified_function_name
+}
+
func (*Qualified_function_nameContext) IsQualified_function_nameContext() {}
func NewQualified_function_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Qualified_function_nameContext {
var p = new(Qualified_function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_qualified_function_name
@@ -27452,49 +30386,45 @@ func (s *Qualified_function_nameContext) ExitRule(listener antlr.ParseTreeListen
}
func (p *SQLiteParser) Qualified_function_name() (localctx IQualified_function_nameContext) {
- this := p
- _ = this
-
localctx = NewQualified_function_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 180, SQLiteParserRULE_qualified_function_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
- p.SetState(2118)
+ p.SetState(2116)
p.GetErrorHandler().Sync(p)
- if p.GetInterpreter().AdaptivePredict(p.GetTokenStream(), 312, p.GetParserRuleContext()) == 1 {
+ if p.GetInterpreter().AdaptivePredict(p.BaseParser, p.GetTokenStream(), 311, p.GetParserRuleContext()) == 1 {
{
- p.SetState(2115)
+ p.SetState(2113)
p.Schema_name()
}
{
- p.SetState(2116)
+ p.SetState(2114)
p.Match(SQLiteParserDOT)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
+ } else if p.HasError() { // JIM
+ goto errorExit
}
{
- p.SetState(2120)
+ p.SetState(2118)
p.Function_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISchema_nameContext is an interface to support dynamic dispatch.
@@ -27512,23 +30442,28 @@ type ISchema_nameContext interface {
}
type Schema_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySchema_nameContext() *Schema_nameContext {
var p = new(Schema_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_schema_name
return p
}
+func InitEmptySchema_nameContext(p *Schema_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_schema_name
+}
+
func (*Schema_nameContext) IsSchema_nameContext() {}
func NewSchema_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Schema_nameContext {
var p = new(Schema_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_schema_name
@@ -27575,35 +30510,25 @@ func (s *Schema_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Schema_name() (localctx ISchema_nameContext) {
- this := p
- _ = this
-
localctx = NewSchema_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 182, SQLiteParserRULE_schema_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2122)
+ p.SetState(2120)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_nameContext is an interface to support dynamic dispatch.
@@ -27621,23 +30546,28 @@ type ITable_nameContext interface {
}
type Table_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_nameContext() *Table_nameContext {
var p = new(Table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_name
return p
}
+func InitEmptyTable_nameContext(p *Table_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_name
+}
+
func (*Table_nameContext) IsTable_nameContext() {}
func NewTable_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_nameContext {
var p = new(Table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_name
@@ -27684,35 +30614,25 @@ func (s *Table_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Table_name() (localctx ITable_nameContext) {
- this := p
- _ = this
-
localctx = NewTable_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 184, SQLiteParserRULE_table_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2124)
+ p.SetState(2122)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_or_index_nameContext is an interface to support dynamic dispatch.
@@ -27730,23 +30650,28 @@ type ITable_or_index_nameContext interface {
}
type Table_or_index_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_or_index_nameContext() *Table_or_index_nameContext {
var p = new(Table_or_index_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_or_index_name
return p
}
+func InitEmptyTable_or_index_nameContext(p *Table_or_index_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_or_index_name
+}
+
func (*Table_or_index_nameContext) IsTable_or_index_nameContext() {}
func NewTable_or_index_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_or_index_nameContext {
var p = new(Table_or_index_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_or_index_name
@@ -27793,35 +30718,25 @@ func (s *Table_or_index_nameContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Table_or_index_name() (localctx ITable_or_index_nameContext) {
- this := p
- _ = this
-
localctx = NewTable_or_index_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 186, SQLiteParserRULE_table_or_index_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2126)
+ p.SetState(2124)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// INew_table_nameContext is an interface to support dynamic dispatch.
@@ -27839,23 +30754,28 @@ type INew_table_nameContext interface {
}
type New_table_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyNew_table_nameContext() *New_table_nameContext {
var p = new(New_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_new_table_name
return p
}
+func InitEmptyNew_table_nameContext(p *New_table_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_new_table_name
+}
+
func (*New_table_nameContext) IsNew_table_nameContext() {}
func NewNew_table_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *New_table_nameContext {
var p = new(New_table_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_new_table_name
@@ -27902,35 +30822,25 @@ func (s *New_table_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) New_table_name() (localctx INew_table_nameContext) {
- this := p
- _ = this
-
localctx = NewNew_table_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 188, SQLiteParserRULE_new_table_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2128)
+ p.SetState(2126)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IColumn_nameContext is an interface to support dynamic dispatch.
@@ -27948,23 +30858,28 @@ type IColumn_nameContext interface {
}
type Column_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyColumn_nameContext() *Column_nameContext {
var p = new(Column_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_column_name
return p
}
+func InitEmptyColumn_nameContext(p *Column_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_column_name
+}
+
func (*Column_nameContext) IsColumn_nameContext() {}
func NewColumn_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Column_nameContext {
var p = new(Column_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_column_name
@@ -28011,35 +30926,25 @@ func (s *Column_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Column_name() (localctx IColumn_nameContext) {
- this := p
- _ = this
-
localctx = NewColumn_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 190, SQLiteParserRULE_column_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2130)
+ p.SetState(2128)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ICollation_nameContext is an interface to support dynamic dispatch.
@@ -28057,15 +30962,20 @@ type ICollation_nameContext interface {
}
type Collation_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyCollation_nameContext() *Collation_nameContext {
var p = new(Collation_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_collation_name
+ return p
+}
+
+func InitEmptyCollation_nameContext(p *Collation_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_collation_name
- return p
}
func (*Collation_nameContext) IsCollation_nameContext() {}
@@ -28073,7 +30983,7 @@ func (*Collation_nameContext) IsCollation_nameContext() {}
func NewCollation_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Collation_nameContext {
var p = new(Collation_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_collation_name
@@ -28120,35 +31030,25 @@ func (s *Collation_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Collation_name() (localctx ICollation_nameContext) {
- this := p
- _ = this
-
localctx = NewCollation_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 192, SQLiteParserRULE_collation_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2132)
+ p.SetState(2130)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IForeign_tableContext is an interface to support dynamic dispatch.
@@ -28166,23 +31066,28 @@ type IForeign_tableContext interface {
}
type Foreign_tableContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyForeign_tableContext() *Foreign_tableContext {
var p = new(Foreign_tableContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_foreign_table
return p
}
+func InitEmptyForeign_tableContext(p *Foreign_tableContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_foreign_table
+}
+
func (*Foreign_tableContext) IsForeign_tableContext() {}
func NewForeign_tableContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Foreign_tableContext {
var p = new(Foreign_tableContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_foreign_table
@@ -28229,35 +31134,25 @@ func (s *Foreign_tableContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Foreign_table() (localctx IForeign_tableContext) {
- this := p
- _ = this
-
localctx = NewForeign_tableContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 194, SQLiteParserRULE_foreign_table)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2134)
+ p.SetState(2132)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IIndex_nameContext is an interface to support dynamic dispatch.
@@ -28275,23 +31170,28 @@ type IIndex_nameContext interface {
}
type Index_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyIndex_nameContext() *Index_nameContext {
var p = new(Index_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_index_name
return p
}
+func InitEmptyIndex_nameContext(p *Index_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_index_name
+}
+
func (*Index_nameContext) IsIndex_nameContext() {}
func NewIndex_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Index_nameContext {
var p = new(Index_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_index_name
@@ -28338,35 +31238,25 @@ func (s *Index_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Index_name() (localctx IIndex_nameContext) {
- this := p
- _ = this
-
localctx = NewIndex_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 196, SQLiteParserRULE_index_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2136)
+ p.SetState(2134)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITrigger_nameContext is an interface to support dynamic dispatch.
@@ -28384,23 +31274,28 @@ type ITrigger_nameContext interface {
}
type Trigger_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTrigger_nameContext() *Trigger_nameContext {
var p = new(Trigger_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_trigger_name
return p
}
+func InitEmptyTrigger_nameContext(p *Trigger_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_trigger_name
+}
+
func (*Trigger_nameContext) IsTrigger_nameContext() {}
func NewTrigger_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Trigger_nameContext {
var p = new(Trigger_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_trigger_name
@@ -28447,35 +31342,25 @@ func (s *Trigger_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Trigger_name() (localctx ITrigger_nameContext) {
- this := p
- _ = this
-
localctx = NewTrigger_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 198, SQLiteParserRULE_trigger_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2138)
+ p.SetState(2136)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IView_nameContext is an interface to support dynamic dispatch.
@@ -28493,23 +31378,28 @@ type IView_nameContext interface {
}
type View_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyView_nameContext() *View_nameContext {
var p = new(View_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_view_name
return p
}
+func InitEmptyView_nameContext(p *View_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_view_name
+}
+
func (*View_nameContext) IsView_nameContext() {}
func NewView_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *View_nameContext {
var p = new(View_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_view_name
@@ -28556,35 +31446,25 @@ func (s *View_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) View_name() (localctx IView_nameContext) {
- this := p
- _ = this
-
localctx = NewView_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 200, SQLiteParserRULE_view_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2140)
+ p.SetState(2138)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IModule_nameContext is an interface to support dynamic dispatch.
@@ -28602,23 +31482,28 @@ type IModule_nameContext interface {
}
type Module_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyModule_nameContext() *Module_nameContext {
var p = new(Module_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_module_name
return p
}
+func InitEmptyModule_nameContext(p *Module_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_module_name
+}
+
func (*Module_nameContext) IsModule_nameContext() {}
func NewModule_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Module_nameContext {
var p = new(Module_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_module_name
@@ -28665,35 +31550,25 @@ func (s *Module_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Module_name() (localctx IModule_nameContext) {
- this := p
- _ = this
-
localctx = NewModule_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 202, SQLiteParserRULE_module_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2142)
+ p.SetState(2140)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IPragma_nameContext is an interface to support dynamic dispatch.
@@ -28711,23 +31586,28 @@ type IPragma_nameContext interface {
}
type Pragma_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyPragma_nameContext() *Pragma_nameContext {
var p = new(Pragma_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_pragma_name
return p
}
+func InitEmptyPragma_nameContext(p *Pragma_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_pragma_name
+}
+
func (*Pragma_nameContext) IsPragma_nameContext() {}
func NewPragma_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Pragma_nameContext {
var p = new(Pragma_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_pragma_name
@@ -28774,35 +31654,25 @@ func (s *Pragma_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Pragma_name() (localctx IPragma_nameContext) {
- this := p
- _ = this
-
localctx = NewPragma_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 204, SQLiteParserRULE_pragma_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2144)
+ p.SetState(2142)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISavepoint_nameContext is an interface to support dynamic dispatch.
@@ -28820,23 +31690,28 @@ type ISavepoint_nameContext interface {
}
type Savepoint_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySavepoint_nameContext() *Savepoint_nameContext {
var p = new(Savepoint_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_savepoint_name
return p
}
+func InitEmptySavepoint_nameContext(p *Savepoint_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_savepoint_name
+}
+
func (*Savepoint_nameContext) IsSavepoint_nameContext() {}
func NewSavepoint_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Savepoint_nameContext {
var p = new(Savepoint_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_savepoint_name
@@ -28883,35 +31758,25 @@ func (s *Savepoint_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Savepoint_name() (localctx ISavepoint_nameContext) {
- this := p
- _ = this
-
localctx = NewSavepoint_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 206, SQLiteParserRULE_savepoint_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2146)
+ p.SetState(2144)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_aliasContext is an interface to support dynamic dispatch.
@@ -28930,23 +31795,28 @@ type ITable_aliasContext interface {
}
type Table_aliasContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_aliasContext() *Table_aliasContext {
var p = new(Table_aliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_alias
return p
}
+func InitEmptyTable_aliasContext(p *Table_aliasContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_alias
+}
+
func (*Table_aliasContext) IsTable_aliasContext() {}
func NewTable_aliasContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_aliasContext {
var p = new(Table_aliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_alias
@@ -28985,32 +31855,13 @@ func (s *Table_aliasContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Table_alias() (localctx ITable_aliasContext) {
- this := p
- _ = this
-
localctx = NewTable_aliasContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 208, SQLiteParserRULE_table_alias)
var _la int
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2148)
+ p.SetState(2146)
_la = p.GetTokenStream().LA(1)
if !(_la == SQLiteParserIDENTIFIER || _la == SQLiteParserSTRING_LITERAL) {
@@ -29021,7 +31872,17 @@ func (p *SQLiteParser) Table_alias() (localctx ITable_aliasContext) {
}
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_alias_fallbackContext is an interface to support dynamic dispatch.
@@ -29039,23 +31900,28 @@ type ITable_alias_fallbackContext interface {
}
type Table_alias_fallbackContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_alias_fallbackContext() *Table_alias_fallbackContext {
var p = new(Table_alias_fallbackContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_alias_fallback
return p
}
+func InitEmptyTable_alias_fallbackContext(p *Table_alias_fallbackContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_alias_fallback
+}
+
func (*Table_alias_fallbackContext) IsTable_alias_fallbackContext() {}
func NewTable_alias_fallbackContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_alias_fallbackContext {
var p = new(Table_alias_fallbackContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_alias_fallback
@@ -29102,35 +31968,25 @@ func (s *Table_alias_fallbackContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Table_alias_fallback() (localctx ITable_alias_fallbackContext) {
- this := p
- _ = this
-
localctx = NewTable_alias_fallbackContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 210, SQLiteParserRULE_table_alias_fallback)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2150)
+ p.SetState(2148)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITransaction_nameContext is an interface to support dynamic dispatch.
@@ -29148,23 +32004,28 @@ type ITransaction_nameContext interface {
}
type Transaction_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTransaction_nameContext() *Transaction_nameContext {
var p = new(Transaction_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_transaction_name
return p
}
+func InitEmptyTransaction_nameContext(p *Transaction_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_transaction_name
+}
+
func (*Transaction_nameContext) IsTransaction_nameContext() {}
func NewTransaction_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Transaction_nameContext {
var p = new(Transaction_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_transaction_name
@@ -29211,35 +32072,25 @@ func (s *Transaction_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Transaction_name() (localctx ITransaction_nameContext) {
- this := p
- _ = this
-
localctx = NewTransaction_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 212, SQLiteParserRULE_transaction_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2152)
+ p.SetState(2150)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IWindow_nameContext is an interface to support dynamic dispatch.
@@ -29257,23 +32108,28 @@ type IWindow_nameContext interface {
}
type Window_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyWindow_nameContext() *Window_nameContext {
var p = new(Window_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_window_name
return p
}
+func InitEmptyWindow_nameContext(p *Window_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_window_name
+}
+
func (*Window_nameContext) IsWindow_nameContext() {}
func NewWindow_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Window_nameContext {
var p = new(Window_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_window_name
@@ -29320,35 +32176,25 @@ func (s *Window_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Window_name() (localctx IWindow_nameContext) {
- this := p
- _ = this
-
localctx = NewWindow_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 214, SQLiteParserRULE_window_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2154)
+ p.SetState(2152)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAliasContext is an interface to support dynamic dispatch.
@@ -29366,23 +32212,28 @@ type IAliasContext interface {
}
type AliasContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAliasContext() *AliasContext {
var p = new(AliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_alias
return p
}
+func InitEmptyAliasContext(p *AliasContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_alias
+}
+
func (*AliasContext) IsAliasContext() {}
func NewAliasContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *AliasContext {
var p = new(AliasContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_alias
@@ -29429,35 +32280,25 @@ func (s *AliasContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Alias() (localctx IAliasContext) {
- this := p
- _ = this
-
localctx = NewAliasContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 216, SQLiteParserRULE_alias)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2156)
+ p.SetState(2154)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IFilenameContext is an interface to support dynamic dispatch.
@@ -29475,23 +32316,28 @@ type IFilenameContext interface {
}
type FilenameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyFilenameContext() *FilenameContext {
var p = new(FilenameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_filename
return p
}
+func InitEmptyFilenameContext(p *FilenameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_filename
+}
+
func (*FilenameContext) IsFilenameContext() {}
func NewFilenameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *FilenameContext {
var p = new(FilenameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_filename
@@ -29538,35 +32384,25 @@ func (s *FilenameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Filename() (localctx IFilenameContext) {
- this := p
- _ = this
-
localctx = NewFilenameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 218, SQLiteParserRULE_filename)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2158)
+ p.SetState(2156)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IBase_window_nameContext is an interface to support dynamic dispatch.
@@ -29584,23 +32420,28 @@ type IBase_window_nameContext interface {
}
type Base_window_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyBase_window_nameContext() *Base_window_nameContext {
var p = new(Base_window_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_base_window_name
return p
}
+func InitEmptyBase_window_nameContext(p *Base_window_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_base_window_name
+}
+
func (*Base_window_nameContext) IsBase_window_nameContext() {}
func NewBase_window_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Base_window_nameContext {
var p = new(Base_window_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_base_window_name
@@ -29647,35 +32488,25 @@ func (s *Base_window_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Base_window_name() (localctx IBase_window_nameContext) {
- this := p
- _ = this
-
localctx = NewBase_window_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 220, SQLiteParserRULE_base_window_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2160)
+ p.SetState(2158)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ISimple_funcContext is an interface to support dynamic dispatch.
@@ -29693,23 +32524,28 @@ type ISimple_funcContext interface {
}
type Simple_funcContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptySimple_funcContext() *Simple_funcContext {
var p = new(Simple_funcContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_simple_func
return p
}
+func InitEmptySimple_funcContext(p *Simple_funcContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_simple_func
+}
+
func (*Simple_funcContext) IsSimple_funcContext() {}
func NewSimple_funcContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Simple_funcContext {
var p = new(Simple_funcContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_simple_func
@@ -29756,35 +32592,25 @@ func (s *Simple_funcContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Simple_func() (localctx ISimple_funcContext) {
- this := p
- _ = this
-
localctx = NewSimple_funcContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 222, SQLiteParserRULE_simple_func)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2162)
+ p.SetState(2160)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAggregate_funcContext is an interface to support dynamic dispatch.
@@ -29802,23 +32628,28 @@ type IAggregate_funcContext interface {
}
type Aggregate_funcContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAggregate_funcContext() *Aggregate_funcContext {
var p = new(Aggregate_funcContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_aggregate_func
return p
}
+func InitEmptyAggregate_funcContext(p *Aggregate_funcContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_aggregate_func
+}
+
func (*Aggregate_funcContext) IsAggregate_funcContext() {}
func NewAggregate_funcContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Aggregate_funcContext {
var p = new(Aggregate_funcContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_aggregate_func
@@ -29865,35 +32696,25 @@ func (s *Aggregate_funcContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Aggregate_func() (localctx IAggregate_funcContext) {
- this := p
- _ = this
-
localctx = NewAggregate_funcContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 224, SQLiteParserRULE_aggregate_func)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2164)
+ p.SetState(2162)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// ITable_function_nameContext is an interface to support dynamic dispatch.
@@ -29911,23 +32732,28 @@ type ITable_function_nameContext interface {
}
type Table_function_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyTable_function_nameContext() *Table_function_nameContext {
var p = new(Table_function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_table_function_name
return p
}
+func InitEmptyTable_function_nameContext(p *Table_function_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_table_function_name
+}
+
func (*Table_function_nameContext) IsTable_function_nameContext() {}
func NewTable_function_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Table_function_nameContext {
var p = new(Table_function_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_table_function_name
@@ -29974,35 +32800,25 @@ func (s *Table_function_nameContext) ExitRule(listener antlr.ParseTreeListener)
}
func (p *SQLiteParser) Table_function_name() (localctx ITable_function_nameContext) {
- this := p
- _ = this
-
localctx = NewTable_function_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 226, SQLiteParserRULE_table_function_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2166)
+ p.SetState(2164)
p.Any_name()
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
// IAny_nameContext is an interface to support dynamic dispatch.
@@ -30025,23 +32841,28 @@ type IAny_nameContext interface {
}
type Any_nameContext struct {
- *antlr.BaseParserRuleContext
+ antlr.BaseParserRuleContext
parser antlr.Parser
}
func NewEmptyAny_nameContext() *Any_nameContext {
var p = new(Any_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(nil, -1)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
p.RuleIndex = SQLiteParserRULE_any_name
return p
}
+func InitEmptyAny_nameContext(p *Any_nameContext) {
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, nil, -1)
+ p.RuleIndex = SQLiteParserRULE_any_name
+}
+
func (*Any_nameContext) IsAny_nameContext() {}
func NewAny_nameContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *Any_nameContext {
var p = new(Any_nameContext)
- p.BaseParserRuleContext = antlr.NewBaseParserRuleContext(parent, invokingState)
+ antlr.InitBaseParserRuleContext(&p.BaseParserRuleContext, parent, invokingState)
p.parser = parser
p.RuleIndex = SQLiteParserRULE_any_name
@@ -30120,73 +32941,83 @@ func (s *Any_nameContext) ExitRule(listener antlr.ParseTreeListener) {
}
func (p *SQLiteParser) Any_name() (localctx IAny_nameContext) {
- this := p
- _ = this
-
localctx = NewAny_nameContext(p, p.GetParserRuleContext(), p.GetState())
p.EnterRule(localctx, 228, SQLiteParserRULE_any_name)
-
- defer func() {
- p.ExitRule()
- }()
-
- defer func() {
- if err := recover(); err != nil {
- if v, ok := err.(antlr.RecognitionException); ok {
- localctx.SetException(v)
- p.GetErrorHandler().ReportError(p, v)
- p.GetErrorHandler().Recover(p, v)
- } else {
- panic(err)
- }
- }
- }()
-
- p.SetState(2175)
+ p.SetState(2173)
p.GetErrorHandler().Sync(p)
+ if p.HasError() {
+ goto errorExit
+ }
switch p.GetTokenStream().LA(1) {
case SQLiteParserIDENTIFIER:
p.EnterOuterAlt(localctx, 1)
{
- p.SetState(2168)
+ p.SetState(2166)
p.Match(SQLiteParserIDENTIFIER)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserABORT_, SQLiteParserACTION_, SQLiteParserADD_, SQLiteParserAFTER_, SQLiteParserALL_, SQLiteParserALTER_, SQLiteParserANALYZE_, SQLiteParserAND_, SQLiteParserAS_, SQLiteParserASC_, SQLiteParserATTACH_, SQLiteParserAUTOINCREMENT_, SQLiteParserBEFORE_, SQLiteParserBEGIN_, SQLiteParserBETWEEN_, SQLiteParserBY_, SQLiteParserCASCADE_, SQLiteParserCASE_, SQLiteParserCAST_, SQLiteParserCHECK_, SQLiteParserCOLLATE_, SQLiteParserCOLUMN_, SQLiteParserCOMMIT_, SQLiteParserCONFLICT_, SQLiteParserCONSTRAINT_, SQLiteParserCREATE_, SQLiteParserCROSS_, SQLiteParserCURRENT_DATE_, SQLiteParserCURRENT_TIME_, SQLiteParserCURRENT_TIMESTAMP_, SQLiteParserDATABASE_, SQLiteParserDEFAULT_, SQLiteParserDEFERRABLE_, SQLiteParserDEFERRED_, SQLiteParserDELETE_, SQLiteParserDESC_, SQLiteParserDETACH_, SQLiteParserDISTINCT_, SQLiteParserDROP_, SQLiteParserEACH_, SQLiteParserELSE_, SQLiteParserEND_, SQLiteParserESCAPE_, SQLiteParserEXCEPT_, SQLiteParserEXCLUSIVE_, SQLiteParserEXISTS_, SQLiteParserEXPLAIN_, SQLiteParserFAIL_, SQLiteParserFOR_, SQLiteParserFOREIGN_, SQLiteParserFROM_, SQLiteParserFULL_, SQLiteParserGLOB_, SQLiteParserGROUP_, SQLiteParserHAVING_, SQLiteParserIF_, SQLiteParserIGNORE_, SQLiteParserIMMEDIATE_, SQLiteParserIN_, SQLiteParserINDEX_, SQLiteParserINDEXED_, SQLiteParserINITIALLY_, SQLiteParserINNER_, SQLiteParserINSERT_, SQLiteParserINSTEAD_, SQLiteParserINTERSECT_, SQLiteParserINTO_, SQLiteParserIS_, SQLiteParserISNULL_, SQLiteParserJOIN_, SQLiteParserKEY_, SQLiteParserLEFT_, SQLiteParserLIKE_, SQLiteParserLIMIT_, SQLiteParserMATCH_, SQLiteParserNATURAL_, SQLiteParserNO_, SQLiteParserNOT_, SQLiteParserNOTNULL_, SQLiteParserNULL_, SQLiteParserOF_, SQLiteParserOFFSET_, SQLiteParserON_, SQLiteParserOR_, SQLiteParserORDER_, SQLiteParserOUTER_, SQLiteParserPLAN_, SQLiteParserPRAGMA_, SQLiteParserPRIMARY_, SQLiteParserQUERY_, SQLiteParserRAISE_, SQLiteParserRECURSIVE_, SQLiteParserREFERENCES_, SQLiteParserREGEXP_, SQLiteParserREINDEX_, SQLiteParserRELEASE_, SQLiteParserRENAME_, SQLiteParserREPLACE_, SQLiteParserRESTRICT_, SQLiteParserRETURNING_, SQLiteParserRIGHT_, SQLiteParserROLLBACK_, SQLiteParserROW_, SQLiteParserROWS_, SQLiteParserSAVEPOINT_, SQLiteParserSELECT_, SQLiteParserSET_, SQLiteParserSTRICT_, SQLiteParserTABLE_, SQLiteParserTEMP_, SQLiteParserTEMPORARY_, SQLiteParserTHEN_, SQLiteParserTO_, SQLiteParserTRANSACTION_, SQLiteParserTRIGGER_, SQLiteParserUNION_, SQLiteParserUNIQUE_, SQLiteParserUPDATE_, SQLiteParserUSING_, SQLiteParserVACUUM_, SQLiteParserVALUES_, SQLiteParserVIEW_, SQLiteParserVIRTUAL_, SQLiteParserWHEN_, SQLiteParserWHERE_, SQLiteParserWITH_, SQLiteParserWITHOUT_, SQLiteParserFIRST_VALUE_, SQLiteParserOVER_, SQLiteParserPARTITION_, SQLiteParserRANGE_, SQLiteParserPRECEDING_, SQLiteParserUNBOUNDED_, SQLiteParserCURRENT_, SQLiteParserFOLLOWING_, SQLiteParserCUME_DIST_, SQLiteParserDENSE_RANK_, SQLiteParserLAG_, SQLiteParserLAST_VALUE_, SQLiteParserLEAD_, SQLiteParserNTH_VALUE_, SQLiteParserNTILE_, SQLiteParserPERCENT_RANK_, SQLiteParserRANK_, SQLiteParserROW_NUMBER_, SQLiteParserGENERATED_, SQLiteParserALWAYS_, SQLiteParserSTORED_, SQLiteParserTRUE_, SQLiteParserFALSE_, SQLiteParserWINDOW_, SQLiteParserNULLS_, SQLiteParserFIRST_, SQLiteParserLAST_, SQLiteParserFILTER_, SQLiteParserGROUPS_, SQLiteParserEXCLUDE_:
p.EnterOuterAlt(localctx, 2)
{
- p.SetState(2169)
+ p.SetState(2167)
p.Keyword()
}
case SQLiteParserSTRING_LITERAL:
p.EnterOuterAlt(localctx, 3)
{
- p.SetState(2170)
+ p.SetState(2168)
p.Match(SQLiteParserSTRING_LITERAL)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
case SQLiteParserOPEN_PAR:
p.EnterOuterAlt(localctx, 4)
{
- p.SetState(2171)
+ p.SetState(2169)
p.Match(SQLiteParserOPEN_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
{
- p.SetState(2172)
+ p.SetState(2170)
p.Any_name()
}
{
- p.SetState(2173)
+ p.SetState(2171)
p.Match(SQLiteParserCLOSE_PAR)
+ if p.HasError() {
+ // Recognition error - abort rule
+ goto errorExit
+ }
}
default:
- panic(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ p.SetError(antlr.NewNoViableAltException(p, nil, nil, nil, nil, nil))
+ goto errorExit
}
+errorExit:
+ if p.HasError() {
+ v := p.GetError()
+ localctx.SetException(v)
+ p.GetErrorHandler().ReportError(p, v)
+ p.GetErrorHandler().Recover(p, v)
+ p.SetError(nil)
+ }
+ p.ExitRule()
return localctx
+ goto errorExit // Trick to prevent compiler error if the label is not used
}
func (p *SQLiteParser) Sempred(localctx antlr.RuleContext, ruleIndex, predIndex int) bool {
@@ -30204,9 +33035,6 @@ func (p *SQLiteParser) Sempred(localctx antlr.RuleContext, ruleIndex, predIndex
}
func (p *SQLiteParser) Expr_Sempred(localctx antlr.RuleContext, predIndex int) bool {
- this := p
- _ = this
-
switch predIndex {
case 0:
return p.Precpred(p.GetParserRuleContext(), 20)
diff --git a/internal/engine/sqlite/parser/sqliteparser_base_listener.go b/internal/engine/sqlite/parser/sqliteparser_base_listener.go
index f0c1539232..1480f105f7 100644
--- a/internal/engine/sqlite/parser/sqliteparser_base_listener.go
+++ b/internal/engine/sqlite/parser/sqliteparser_base_listener.go
@@ -1,8 +1,8 @@
-// Code generated from SQLiteParser.g4 by ANTLR 4.12.0. DO NOT EDIT.
+// Code generated from SQLiteParser.g4 by ANTLR 4.13.1. DO NOT EDIT.
package parser // SQLiteParser
-import "github.com/antlr/antlr4/runtime/Go/antlr/v4"
+import "github.com/antlr4-go/antlr/v4"
// BaseSQLiteParserListener is a complete listener for a parse tree produced by SQLiteParser.
type BaseSQLiteParserListener struct{}
diff --git a/internal/engine/sqlite/parser/sqliteparser_listener.go b/internal/engine/sqlite/parser/sqliteparser_listener.go
index 26bc7d5939..4dfcb9632f 100644
--- a/internal/engine/sqlite/parser/sqliteparser_listener.go
+++ b/internal/engine/sqlite/parser/sqliteparser_listener.go
@@ -1,8 +1,8 @@
-// Code generated from SQLiteParser.g4 by ANTLR 4.12.0. DO NOT EDIT.
+// Code generated from SQLiteParser.g4 by ANTLR 4.13.1. DO NOT EDIT.
package parser // SQLiteParser
-import "github.com/antlr/antlr4/runtime/Go/antlr/v4"
+import "github.com/antlr4-go/antlr/v4"
// SQLiteParserListener is a complete listener for a parse tree produced by SQLiteParser.
type SQLiteParserListener interface {
diff --git a/internal/engine/sqlite/utils.go b/internal/engine/sqlite/utils.go
index f3b5ee289d..874d53ab41 100644
--- a/internal/engine/sqlite/utils.go
+++ b/internal/engine/sqlite/utils.go
@@ -12,7 +12,7 @@ type tableNamer interface {
func parseTableName(c tableNamer) *ast.TableName {
name := ast.TableName{
- Name: c.Table_name().GetText(),
+ Name: identifier(c.Table_name().GetText()),
}
if c.Schema_name() != nil {
name.Schema = c.Schema_name().GetText()
diff --git a/internal/ext/process/gen.go b/internal/ext/process/gen.go
index b677f6805a..b5720dbc33 100644
--- a/internal/ext/process/gen.go
+++ b/internal/ext/process/gen.go
@@ -11,6 +11,7 @@ import (
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
+ "google.golang.org/protobuf/encoding/protojson"
"google.golang.org/protobuf/proto"
"google.golang.org/protobuf/reflect/protoreflect"
@@ -18,8 +19,9 @@ import (
)
type Runner struct {
- Cmd string
- Env []string
+ Cmd string
+ Format string
+ Env []string
}
func (r *Runner) Invoke(ctx context.Context, method string, args any, reply any, opts ...grpc.CallOption) error {
@@ -28,9 +30,27 @@ func (r *Runner) Invoke(ctx context.Context, method string, args any, reply any,
return fmt.Errorf("args isn't a protoreflect.ProtoMessage")
}
- stdin, err := proto.Marshal(req)
- if err != nil {
- return fmt.Errorf("failed to encode codegen request: %w", err)
+ var stdin []byte
+ var err error
+ switch r.Format {
+ case "json":
+ m := &protojson.MarshalOptions{
+ EmitUnpopulated: true,
+ Indent: "",
+ UseProtoNames: true,
+ }
+ stdin, err = m.Marshal(req)
+
+ if err != nil {
+ return fmt.Errorf("failed to encode codegen request: %w", err)
+ }
+ case "", "protobuf":
+ stdin, err = proto.Marshal(req)
+ if err != nil {
+ return fmt.Errorf("failed to encode codegen request: %w", err)
+ }
+ default:
+ return fmt.Errorf("unknown plugin format: %s", r.Format)
}
// Check if the output plugin exists
@@ -66,8 +86,15 @@ func (r *Runner) Invoke(ctx context.Context, method string, args any, reply any,
return fmt.Errorf("reply isn't a protoreflect.ProtoMessage")
}
- if err := proto.Unmarshal(out, resp); err != nil {
- return fmt.Errorf("process: failed to read codegen resp: %w", err)
+ switch r.Format {
+ case "json":
+ if err := protojson.Unmarshal(out, resp); err != nil {
+ return fmt.Errorf("process: failed to read codegen resp: %w", err)
+ }
+ default:
+ if err := proto.Unmarshal(out, resp); err != nil {
+ return fmt.Errorf("process: failed to read codegen resp: %w", err)
+ }
}
return nil
diff --git a/internal/ext/wasm/nowasm.go b/internal/ext/wasm/nowasm.go
deleted file mode 100644
index 419c6eefef..0000000000
--- a/internal/ext/wasm/nowasm.go
+++ /dev/null
@@ -1,19 +0,0 @@
-//go:build nowasm || !(cgo && ((linux && amd64) || (linux && arm64) || (darwin && amd64) || (darwin && arm64) || (windows && amd64)))
-
-package wasm
-
-import (
- "context"
-
- "google.golang.org/grpc"
- "google.golang.org/grpc/codes"
- "google.golang.org/grpc/status"
-)
-
-func (r *Runner) Invoke(ctx context.Context, method string, args any, reply any, opts ...grpc.CallOption) error {
- return status.Error(codes.FailedPrecondition, "sqlc built without wasmtime support")
-}
-
-func (r *Runner) NewStream(ctx context.Context, desc *grpc.StreamDesc, method string, opts ...grpc.CallOption) (grpc.ClientStream, error) {
- return nil, status.Error(codes.Unimplemented, codes.Unimplemented.String())
-}
diff --git a/internal/ext/wasm/wasm.go b/internal/ext/wasm/wasm.go
index d0a2d4c047..58384a9c95 100644
--- a/internal/ext/wasm/wasm.go
+++ b/internal/ext/wasm/wasm.go
@@ -1,10 +1,7 @@
-//go:build !nowasm && cgo && ((linux && amd64) || (linux && arm64) || (darwin && amd64) || (darwin && arm64) || (windows && amd64))
-
-// The above build constraint is based of the cgo directives in this file:
-// https://github.com/bytecodealliance/wasmtime-go/blob/main/ffi.go
package wasm
import (
+ "bytes"
"context"
"crypto/sha256"
"errors"
@@ -15,10 +12,11 @@ import (
"os"
"path/filepath"
"runtime"
- "runtime/trace"
"strings"
- wasmtime "github.com/bytecodealliance/wasmtime-go/v14"
+ "github.com/tetratelabs/wazero"
+ "github.com/tetratelabs/wazero/imports/wasi_snapshot_preview1"
+ "github.com/tetratelabs/wazero/sys"
"golang.org/x/sync/singleflight"
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
@@ -31,27 +29,13 @@ import (
"github.com/sqlc-dev/sqlc/internal/plugin"
)
-// This version must be updated whenever the wasmtime-go dependency is updated
-const wasmtimeVersion = `v14.0.0`
+var flight singleflight.Group
-func cacheDir() (string, error) {
- cache := os.Getenv("SQLCCACHE")
- if cache != "" {
- return cache, nil
- }
- cacheHome := os.Getenv("XDG_CACHE_HOME")
- if cacheHome == "" {
- home, err := os.UserHomeDir()
- if err != nil {
- return "", err
- }
- cacheHome = filepath.Join(home, ".cache")
- }
- return filepath.Join(cacheHome, "sqlc"), nil
+type runtimeAndCode struct {
+ rt wazero.Runtime
+ code wazero.CompiledModule
}
-var flight singleflight.Group
-
// Verify the provided sha256 is valid.
func (r *Runner) getChecksum(ctx context.Context) (string, error) {
if r.SHA256 != "" {
@@ -66,67 +50,26 @@ func (r *Runner) getChecksum(ctx context.Context) (string, error) {
return sum, nil
}
-func (r *Runner) loadModule(ctx context.Context, engine *wasmtime.Engine) (*wasmtime.Module, error) {
+func (r *Runner) loadAndCompile(ctx context.Context) (*runtimeAndCode, error) {
expected, err := r.getChecksum(ctx)
if err != nil {
return nil, err
}
- value, err, _ := flight.Do(expected, func() (interface{}, error) {
- return r.loadSerializedModule(ctx, engine, expected)
- })
- if err != nil {
- return nil, err
- }
- data, ok := value.([]byte)
- if !ok {
- return nil, fmt.Errorf("returned value was not a byte slice")
- }
- return wasmtime.NewModuleDeserialize(engine, data)
-}
-
-func (r *Runner) loadSerializedModule(ctx context.Context, engine *wasmtime.Engine, expectedSha string) ([]byte, error) {
cacheDir, err := cache.PluginsDir()
if err != nil {
return nil, err
}
-
- pluginDir := filepath.Join(cacheDir, expectedSha)
- modName := fmt.Sprintf("plugin_%s_%s_%s.module", runtime.GOOS, runtime.GOARCH, wasmtimeVersion)
- modPath := filepath.Join(pluginDir, modName)
- _, staterr := os.Stat(modPath)
- if staterr == nil {
- data, err := os.ReadFile(modPath)
- if err != nil {
- return nil, err
- }
- return data, nil
- }
-
- wmod, err := r.loadWASM(ctx, cacheDir, expectedSha)
+ value, err, _ := flight.Do(expected, func() (interface{}, error) {
+ return r.loadAndCompileWASM(ctx, cacheDir, expected)
+ })
if err != nil {
return nil, err
}
-
- moduRegion := trace.StartRegion(ctx, "wasmtime.NewModule")
- module, err := wasmtime.NewModule(engine, wmod)
- moduRegion.End()
- if err != nil {
- return nil, fmt.Errorf("define wasi: %w", err)
- }
-
- err = os.Mkdir(pluginDir, 0755)
- if err != nil && !os.IsExist(err) {
- return nil, fmt.Errorf("mkdirall: %w", err)
- }
- out, err := module.Serialize()
- if err != nil {
- return nil, fmt.Errorf("serialize: %w", err)
- }
- if err := os.WriteFile(modPath, out, 0444); err != nil {
- return nil, fmt.Errorf("cache wasm: %w", err)
+ data, ok := value.(*runtimeAndCode)
+ if !ok {
+ return nil, fmt.Errorf("returned value was not a compiled module")
}
-
- return out, nil
+ return data, nil
}
func (r *Runner) fetch(ctx context.Context, uri string) ([]byte, string, error) {
@@ -170,7 +113,7 @@ func (r *Runner) fetch(ctx context.Context, uri string) ([]byte, string, error)
return wmod, actual, nil
}
-func (r *Runner) loadWASM(ctx context.Context, cache string, expected string) ([]byte, error) {
+func (r *Runner) loadAndCompileWASM(ctx context.Context, cache string, expected string) (*runtimeAndCode, error) {
pluginDir := filepath.Join(cache, expected)
pluginPath := filepath.Join(pluginDir, "plugin.wasm")
_, staterr := os.Stat(pluginPath)
@@ -199,7 +142,26 @@ func (r *Runner) loadWASM(ctx context.Context, cache string, expected string) ([
}
}
- return wmod, nil
+ wazeroCache, err := wazero.NewCompilationCacheWithDir(filepath.Join(cache, "wazero"))
+ if err != nil {
+ return nil, fmt.Errorf("wazero.NewCompilationCacheWithDir: %w", err)
+ }
+
+ config := wazero.NewRuntimeConfig().WithCompilationCache(wazeroCache)
+ rt := wazero.NewRuntimeWithConfig(ctx, config)
+
+ if _, err := wasi_snapshot_preview1.Instantiate(ctx, rt); err != nil {
+ return nil, fmt.Errorf("wasi_snapshot_preview1 instantiate: %w", err)
+ }
+
+ // Compile the Wasm binary once so that we can skip the entire compilation
+ // time during instantiation.
+ code, err := rt.CompileModule(ctx, wmod)
+ if err != nil {
+ return nil, fmt.Errorf("compile module: %w", err)
+ }
+
+ return &runtimeAndCode{rt: rt, code: code}, nil
}
// removePGCatalog removes the pg_catalog schema from the request. There is a
@@ -241,75 +203,34 @@ func (r *Runner) Invoke(ctx context.Context, method string, args any, reply any,
return fmt.Errorf("failed to encode codegen request: %w", err)
}
- engine := wasmtime.NewEngine()
- module, err := r.loadModule(ctx, engine)
+ runtimeAndCode, err := r.loadAndCompile(ctx)
if err != nil {
- return fmt.Errorf("loadModule: %w", err)
- }
-
- linker := wasmtime.NewLinker(engine)
- if err := linker.DefineWasi(); err != nil {
- return err
+ return fmt.Errorf("loadBytes: %w", err)
}
- dir, err := os.MkdirTemp(os.Getenv("SQLCTMPDIR"), "out")
- if err != nil {
- return fmt.Errorf("temp dir: %w", err)
- }
+ var stderr, stdout bytes.Buffer
- defer os.RemoveAll(dir)
- stdinPath := filepath.Join(dir, "stdin")
- stderrPath := filepath.Join(dir, "stderr")
- stdoutPath := filepath.Join(dir, "stdout")
-
- if err := os.WriteFile(stdinPath, stdinBlob, 0755); err != nil {
- return fmt.Errorf("write file: %w", err)
- }
-
- // Configure WASI imports to write stdout into a file.
- wasiConfig := wasmtime.NewWasiConfig()
- wasiConfig.SetArgv([]string{"plugin.wasm", method})
- wasiConfig.SetStdinFile(stdinPath)
- wasiConfig.SetStdoutFile(stdoutPath)
- wasiConfig.SetStderrFile(stderrPath)
-
- keys := []string{"SQLC_VERSION"}
- vals := []string{info.Version}
+ conf := wazero.NewModuleConfig().
+ WithName("").
+ WithArgs("plugin.wasm", method).
+ WithStdin(bytes.NewReader(stdinBlob)).
+ WithStdout(&stdout).
+ WithStderr(&stderr).
+ WithEnv("SQLC_VERSION", info.Version)
for _, key := range r.Env {
- keys = append(keys, key)
- vals = append(vals, os.Getenv(key))
- }
- wasiConfig.SetEnv(keys, vals)
-
- store := wasmtime.NewStore(engine)
- store.SetWasi(wasiConfig)
-
- linkRegion := trace.StartRegion(ctx, "linker.DefineModule")
- err = linker.DefineModule(store, "", module)
- linkRegion.End()
- if err != nil {
- return fmt.Errorf("define wasi: %w", err)
+ conf = conf.WithEnv(key, os.Getenv(key))
}
- // Run the function
- fn, err := linker.GetDefault(store, "")
- if err != nil {
- return fmt.Errorf("wasi: get default: %w", err)
+ result, err := runtimeAndCode.rt.InstantiateModule(ctx, runtimeAndCode.code, conf)
+ if err == nil {
+ defer result.Close(ctx)
}
-
- callRegion := trace.StartRegion(ctx, "call _start")
- _, err = fn.Call(store)
- callRegion.End()
-
- if cerr := checkError(err, stderrPath); cerr != nil {
+ if cerr := checkError(err, stderr); cerr != nil {
return cerr
}
// Print WASM stdout
- stdoutBlob, err := os.ReadFile(stdoutPath)
- if err != nil {
- return fmt.Errorf("read file: %w", err)
- }
+ stdoutBlob := stdout.Bytes()
resp, ok := reply.(protoreflect.ProtoMessage)
if !ok {
@@ -327,23 +248,21 @@ func (r *Runner) NewStream(ctx context.Context, desc *grpc.StreamDesc, method st
return nil, status.Error(codes.Unimplemented, "")
}
-func checkError(err error, stderrPath string) error {
+func checkError(err error, stderr bytes.Buffer) error {
if err == nil {
return err
}
- var wtError *wasmtime.Error
- if errors.As(err, &wtError) {
- if code, ok := wtError.ExitStatus(); ok {
- if code == 0 {
- return nil
- }
+ if exitErr, ok := err.(*sys.ExitError); ok {
+ if exitErr.ExitCode() == 0 {
+ return nil
}
}
+
// Print WASM stdout
- stderrBlob, rferr := os.ReadFile(stderrPath)
- if rferr == nil && len(stderrBlob) > 0 {
- return errors.New(string(stderrBlob))
+ stderrBlob := stderr.String()
+ if len(stderrBlob) > 0 {
+ return errors.New(stderrBlob)
}
return fmt.Errorf("call: %w", err)
}
diff --git a/internal/inflection/singular.go b/internal/inflection/singular.go
index edac927603..64e042a6ab 100644
--- a/internal/inflection/singular.go
+++ b/internal/inflection/singular.go
@@ -43,5 +43,10 @@ func Singular(s SingularParams) string {
if strings.ToLower(s.Name) == "waves" {
return "wave"
}
+
+ if strings.ToLower(s.Name) == "metadata" {
+ return "metadata"
+ }
+
return upstream.Singular(s.Name)
}
diff --git a/internal/info/facts.go b/internal/info/facts.go
index d92a2113c4..8ec3ad2964 100644
--- a/internal/info/facts.go
+++ b/internal/info/facts.go
@@ -2,4 +2,4 @@ package info
// When no version is set, return the next bug fix version
// after the most recent tag
-const Version = "v1.24.0"
+const Version = "v1.29.0"
diff --git a/internal/metadata/meta.go b/internal/metadata/meta.go
index 97ff36dbd2..8f63624d2c 100644
--- a/internal/metadata/meta.go
+++ b/internal/metadata/meta.go
@@ -3,6 +3,7 @@ package metadata
import (
"bufio"
"fmt"
+ "github.com/sqlc-dev/sqlc/internal/constants"
"strings"
"unicode"
@@ -18,6 +19,10 @@ type Metadata struct {
Params map[string]string
Flags map[string]bool
+ // RuleSkiplist contains the names of rules to disable vetting for.
+ // If the map is empty, but the disable vet flag is specified, then all rules are ignored.
+ RuleSkiplist map[string]struct{}
+
Filename string
}
@@ -113,9 +118,12 @@ func ParseQueryNameAndType(t string, commentStyle CommentSyntax) (string, string
return "", "", nil
}
-func ParseParamsAndFlags(comments []string) (map[string]string, map[string]bool, error) {
+// ParseCommentFlags processes the comments provided with queries to determine the metadata params, flags and rules to skip.
+// All flags in query comments are prefixed with `@`, e.g. @param, @@sqlc-vet-disable.
+func ParseCommentFlags(comments []string) (map[string]string, map[string]bool, map[string]struct{}, error) {
params := make(map[string]string)
flags := make(map[string]bool)
+ ruleSkiplist := make(map[string]struct{})
for _, line := range comments {
s := bufio.NewScanner(strings.NewReader(line))
@@ -129,7 +137,7 @@ func ParseParamsAndFlags(comments []string) (map[string]string, map[string]bool,
}
switch token {
- case "@param":
+ case constants.QueryFlagParam:
s.Scan()
name := s.Text()
var rest []string
@@ -138,14 +146,27 @@ func ParseParamsAndFlags(comments []string) (map[string]string, map[string]bool,
rest = append(rest, paramToken)
}
params[name] = strings.Join(rest, " ")
+
+ case constants.QueryFlagSqlcVetDisable:
+ flags[token] = true
+
+ // Vet rules can all be disabled in the same line or split across lines .i.e.
+ // /* @sqlc-vet-disable sqlc/db-prepare delete-without-where */
+ // is equivalent to:
+ // /* @sqlc-vet-disable sqlc/db-prepare */
+ // /* @sqlc-vet-disable delete-without-where */
+ for s.Scan() {
+ ruleSkiplist[s.Text()] = struct{}{}
+ }
+
default:
flags[token] = true
}
if s.Err() != nil {
- return params, flags, s.Err()
+ return params, flags, ruleSkiplist, s.Err()
}
}
- return params, flags, nil
+ return params, flags, ruleSkiplist, nil
}
diff --git a/internal/metadata/meta_test.go b/internal/metadata/meta_test.go
index 3c2be6d6de..e9ef54586e 100644
--- a/internal/metadata/meta_test.go
+++ b/internal/metadata/meta_test.go
@@ -1,6 +1,8 @@
package metadata
-import "testing"
+import (
+ "testing"
+)
func TestParseQueryNameAndType(t *testing.T) {
@@ -77,7 +79,7 @@ func TestParseQueryParams(t *testing.T) {
" @param @invalid UUID ",
},
} {
- params, _, err := ParseParamsAndFlags(comments)
+ params, _, _, err := ParseCommentFlags(comments)
if err != nil {
t.Errorf("expected comments to parse, got err: %s", err)
}
@@ -123,7 +125,7 @@ func TestParseQueryFlags(t *testing.T) {
" @param @flag-bar UUID",
},
} {
- _, flags, err := ParseParamsAndFlags(comments)
+ _, flags, _, err := ParseCommentFlags(comments)
if err != nil {
t.Errorf("expected comments to parse, got err: %s", err)
}
@@ -137,3 +139,44 @@ func TestParseQueryFlags(t *testing.T) {
}
}
}
+
+func TestParseQueryRuleSkiplist(t *testing.T) {
+ for _, comments := range [][]string{
+ {
+ " name: CreateFoo :one",
+ " @sqlc-vet-disable sqlc/db-prepare delete-without-where ",
+ },
+ {
+ " name: CreateFoo :one ",
+ " @sqlc-vet-disable sqlc/db-prepare ",
+ " @sqlc-vet-disable delete-without-where ",
+ },
+ {
+ " name: CreateFoo :one",
+ " @sqlc-vet-disable sqlc/db-prepare ",
+ " update-without where",
+ " @sqlc-vet-disable delete-without-where ",
+ },
+ } {
+ _, flags, ruleSkiplist, err := ParseCommentFlags(comments)
+ if err != nil {
+ t.Errorf("expected comments to parse, got err: %s", err)
+ }
+
+ if !flags["@sqlc-vet-disable"] {
+ t.Errorf("expected @sqlc-vet-disable flag not found")
+ }
+
+ if _, ok := ruleSkiplist["sqlc/db-prepare"]; !ok {
+ t.Errorf("expected rule not found in skiplist")
+ }
+
+ if _, ok := ruleSkiplist["delete-without-where"]; !ok {
+ t.Errorf("expected rule not found in skiplist")
+ }
+
+ if _, ok := ruleSkiplist["update-without-where"]; ok {
+ t.Errorf("unexpected rule found in skiplist")
+ }
+ }
+}
diff --git a/internal/migrations/migrations.go b/internal/migrations/migrations.go
index ac0e8b3d9a..4ade6045a4 100644
--- a/internal/migrations/migrations.go
+++ b/internal/migrations/migrations.go
@@ -15,16 +15,17 @@ func RemoveRollbackStatements(contents string) string {
s := bufio.NewScanner(strings.NewReader(contents))
var lines []string
for s.Scan() {
- if strings.HasPrefix(s.Text(), "-- +goose Down") {
+ statement := strings.ToLower(s.Text())
+ if strings.HasPrefix(statement, "-- +goose down") {
break
}
- if strings.HasPrefix(s.Text(), "-- +migrate Down") {
+ if strings.HasPrefix(statement, "-- +migrate down") {
break
}
- if strings.HasPrefix(s.Text(), "---- create above / drop below ----") {
+ if strings.HasPrefix(statement, "---- create above / drop below ----") {
break
}
- if strings.HasPrefix(s.Text(), "-- migrate:down") {
+ if strings.HasPrefix(statement, "-- migrate:down") {
break
}
lines = append(lines, s.Text())
diff --git a/internal/pgx/poolcache/poolcache.go b/internal/pgx/poolcache/poolcache.go
new file mode 100644
index 0000000000..3fce3cb131
--- /dev/null
+++ b/internal/pgx/poolcache/poolcache.go
@@ -0,0 +1,61 @@
+package poolcache
+
+import (
+ "context"
+ "fmt"
+ "sync"
+
+ "github.com/jackc/pgx/v5/pgxpool"
+)
+
+type Cache struct {
+ lock sync.RWMutex
+ closed bool
+ pools map[string]*pgxpool.Pool
+}
+
+func New() *Cache {
+ return &Cache{
+ pools: map[string]*pgxpool.Pool{},
+ }
+}
+
+func (c *Cache) Open(ctx context.Context, uri string) (*pgxpool.Pool, error) {
+ if c.closed {
+ return nil, fmt.Errorf("poolcache is closed")
+ }
+
+ c.lock.RLock()
+ existing, found := c.pools[uri]
+ c.lock.RUnlock()
+
+ if found {
+ return existing, nil
+ }
+
+ pool, err := pgxpool.New(ctx, uri)
+ if err != nil {
+ return nil, err
+ }
+
+ c.lock.Lock()
+ c.pools[uri] = pool
+ c.lock.Unlock()
+
+ return pool, nil
+}
+
+func (c *Cache) Close() error {
+ c.lock.Lock()
+ defer c.lock.Unlock()
+
+ var closeErr error
+ for _, pool := range c.pools {
+ pool.Close()
+ }
+
+ c.closed = true
+ clear(c.pools)
+
+ return closeErr
+}
diff --git a/internal/quickdb/region.go b/internal/quickdb/region.go
deleted file mode 100644
index 1900e33a14..0000000000
--- a/internal/quickdb/region.go
+++ /dev/null
@@ -1,19 +0,0 @@
-package quickdb
-
-import (
- "net/http"
- "sync"
-)
-
-var region string
-var once sync.Once
-
-func GetClosestRegion() string {
- once.Do(func() {
- resp, err := http.Get("https://find-closest-db-region.sqlc.dev")
- if err == nil {
- region = resp.Header.Get("Region")
- }
- })
- return region
-}
diff --git a/internal/quickdb/v1/quickdb.pb.go b/internal/quickdb/v1/quickdb.pb.go
index 048dcc0316..690dfc16f1 100755
--- a/internal/quickdb/v1/quickdb.pb.go
+++ b/internal/quickdb/v1/quickdb.pb.go
@@ -368,6 +368,7 @@ type UploadArchiveRequest struct {
Annotations map[string]string `protobuf:"bytes,4,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
QuerySets []*QuerySet `protobuf:"bytes,5,rep,name=query_sets,json=querySets,proto3" json:"query_sets,omitempty"`
Config *File `protobuf:"bytes,6,opt,name=config,proto3" json:"config,omitempty"`
+ Tags []string `protobuf:"bytes,7,rep,name=tags,proto3" json:"tags,omitempty"`
}
func (x *UploadArchiveRequest) Reset() {
@@ -444,6 +445,13 @@ func (x *UploadArchiveRequest) GetConfig() *File {
return nil
}
+func (x *UploadArchiveRequest) GetTags() []string {
+ if x != nil {
+ return x.Tags
+ }
+ return nil
+}
+
type UploadArchiveResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -500,6 +508,7 @@ type VerifyQuerySetsRequest struct {
QuerySets []*QuerySet `protobuf:"bytes,2,rep,name=query_sets,json=querySets,proto3" json:"query_sets,omitempty"`
Config *File `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
Annotations map[string]string `protobuf:"bytes,4,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ Against string `protobuf:"bytes,5,opt,name=against,proto3" json:"against,omitempty"`
}
func (x *VerifyQuerySetsRequest) Reset() {
@@ -562,6 +571,13 @@ func (x *VerifyQuerySetsRequest) GetAnnotations() map[string]string {
return nil
}
+func (x *VerifyQuerySetsRequest) GetAgainst() string {
+ if x != nil {
+ return x.Against
+ }
+ return ""
+}
+
type VerifyQuerySetsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -625,6 +641,100 @@ func (x *VerifyQuerySetsResponse) GetSummary() string {
return ""
}
+type GetQuerySetsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
+}
+
+func (x *GetQuerySetsRequest) Reset() {
+ *x = GetQuerySetsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_v1_quickdb_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetQuerySetsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetQuerySetsRequest) ProtoMessage() {}
+
+func (x *GetQuerySetsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_v1_quickdb_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetQuerySetsRequest.ProtoReflect.Descriptor instead.
+func (*GetQuerySetsRequest) Descriptor() ([]byte, []int) {
+ return file_v1_quickdb_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *GetQuerySetsRequest) GetTag() string {
+ if x != nil {
+ return x.Tag
+ }
+ return ""
+}
+
+type GetQuerySetsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ QuerySets []*QuerySet `protobuf:"bytes,1,rep,name=query_sets,json=querySets,proto3" json:"query_sets,omitempty"`
+}
+
+func (x *GetQuerySetsResponse) Reset() {
+ *x = GetQuerySetsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_v1_quickdb_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetQuerySetsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetQuerySetsResponse) ProtoMessage() {}
+
+func (x *GetQuerySetsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_v1_quickdb_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetQuerySetsResponse.ProtoReflect.Descriptor instead.
+func (*GetQuerySetsResponse) Descriptor() ([]byte, []int) {
+ return file_v1_quickdb_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *GetQuerySetsResponse) GetQuerySets() []*QuerySet {
+ if x != nil {
+ return x.QuerySets
+ }
+ return nil
+}
+
var File_v1_quickdb_proto protoreflect.FileDescriptor
var file_v1_quickdb_proto_rawDesc = []byte{
@@ -669,7 +779,7 @@ var file_v1_quickdb_proto_rawDesc = []byte{
0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76,
0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x65,
0x52, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x22, 0xd3, 0x03, 0x0a, 0x14, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69,
+ 0x22, 0xe7, 0x03, 0x0a, 0x14, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69,
0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x71, 0x6c,
0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0b, 0x73, 0x71, 0x6c, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x06,
@@ -694,92 +804,111 @@ var file_v1_quickdb_proto_rawDesc = []byte{
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72,
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71,
0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x06,
- 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
- 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
- 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
- 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x33, 0x0a, 0x15, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64,
- 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
- 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0c, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x22, 0xe1, 0x02, 0x0a, 0x16,
- 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x71, 0x6c, 0x63, 0x5f, 0x76,
- 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x71,
- 0x6c, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x0a, 0x71, 0x75, 0x65,
- 0x72, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e,
- 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e,
- 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79,
- 0x53, 0x65, 0x74, 0x52, 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x12, 0x38,
- 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20,
- 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76,
- 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x65,
- 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x65, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e,
- 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e,
- 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66,
- 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74,
- 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a,
- 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e,
- 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
- 0x65, 0x0a, 0x17, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65,
- 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72,
- 0x72, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x72, 0x72,
- 0x6f, 0x72, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x07,
- 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73,
- 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x32, 0x9d, 0x04, 0x0a, 0x05, 0x51, 0x75, 0x69, 0x63, 0x6b,
- 0x12, 0x92, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d,
- 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x3a, 0x2e, 0x72,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07,
+ 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
+ 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+ 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x33, 0x0a, 0x15, 0x55, 0x70,
+ 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x22,
+ 0xfb, 0x02, 0x0a, 0x16, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53,
+ 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x71,
+ 0x6c, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0b, 0x73, 0x71, 0x6c, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a,
+ 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e,
+ 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x52, 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65,
+ 0x74, 0x73, 0x12, 0x38, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63,
+ 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e,
+ 0x46, 0x69, 0x6c, 0x65, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x65, 0x0a, 0x0b,
+ 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x43, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e,
+ 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56,
+ 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x1a, 0x3e, 0x0a,
+ 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
+ 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
+ 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x65, 0x0a,
+ 0x17, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x72, 0x6f,
+ 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x72, 0x72, 0x6f, 0x72,
+ 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75,
+ 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d,
+ 0x6d, 0x61, 0x72, 0x79, 0x22, 0x27, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x74,
+ 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x22, 0x5b, 0x0a,
+ 0x14, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73,
+ 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63,
+ 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x52,
+ 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x32, 0x90, 0x05, 0x0a, 0x05, 0x51,
+ 0x75, 0x69, 0x63, 0x6b, 0x12, 0x92, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45,
+ 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
+ 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64,
+ 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74,
+ 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72,
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71,
0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
- 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b,
- 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x70, 0x68, 0x65,
- 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x15, 0x44, 0x72, 0x6f, 0x70, 0x45, 0x70,
- 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12,
- 0x38, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65,
- 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f,
- 0x70, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61,
- 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x72, 0x65, 0x6d, 0x6f,
- 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63,
- 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x45, 0x70, 0x68, 0x65, 0x6d,
- 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0d, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72,
- 0x63, 0x68, 0x69, 0x76, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73,
- 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e,
- 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64,
- 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69,
- 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x0f, 0x56, 0x65,
- 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x12, 0x32, 0x2e,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x15, 0x44, 0x72,
+ 0x6f, 0x70, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62,
+ 0x61, 0x73, 0x65, 0x12, 0x38, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c,
+ 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31,
+ 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61,
+ 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e,
0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e,
- 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66,
- 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x33, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e,
+ 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x45,
+ 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0d, 0x55, 0x70, 0x6c, 0x6f,
+ 0x61, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x12, 0x30, 0x2e, 0x72, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63,
+ 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x63,
+ 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x72, 0x65,
+ 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75,
+ 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x41,
+ 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a,
+ 0x0a, 0x0f, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74,
+ 0x73, 0x12, 0x32, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e,
0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56,
0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0xeb, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x72,
- 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71,
- 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x51, 0x75, 0x69, 0x63, 0x6b,
- 0x64, 0x62, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75,
- 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x71, 0x6c, 0x63, 0x2d, 0x64, 0x65, 0x76, 0x2f, 0x73,
- 0x71, 0x6c, 0x63, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x76, 0x31, 0x3b,
- 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x76, 0x31, 0xa2, 0x02, 0x04, 0x52, 0x53, 0x44, 0x51,
- 0xaa, 0x02, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x53, 0x71, 0x6c, 0x63, 0x2e, 0x44,
- 0x65, 0x76, 0x2e, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a,
- 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x53, 0x71, 0x6c, 0x63, 0x5c, 0x44, 0x65, 0x76, 0x5c,
- 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x26, 0x52, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x5c, 0x53, 0x71, 0x6c, 0x63, 0x5c, 0x44, 0x65, 0x76, 0x5c, 0x51, 0x75, 0x69,
- 0x63, 0x6b, 0x64, 0x62, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64,
- 0x61, 0x74, 0x61, 0xea, 0x02, 0x1e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x3a, 0x3a, 0x53, 0x71,
- 0x6c, 0x63, 0x3a, 0x3a, 0x44, 0x65, 0x76, 0x3a, 0x3a, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62,
- 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73,
+ 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e,
+ 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65,
+ 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x0c, 0x47, 0x65,
+ 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x74, 0x73, 0x12, 0x2f, 0x2e, 0x72, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69,
+ 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x72, 0x65,
+ 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c, 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75,
+ 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x72,
+ 0x79, 0x53, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0xeb, 0x01,
+ 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x73, 0x71, 0x6c,
+ 0x63, 0x2e, 0x64, 0x65, 0x76, 0x2e, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x2e, 0x76, 0x31,
+ 0x42, 0x0c, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x71, 0x6c,
+ 0x63, 0x2d, 0x64, 0x65, 0x76, 0x2f, 0x73, 0x71, 0x6c, 0x63, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72,
+ 0x6e, 0x61, 0x6c, 0x2f, 0x76, 0x31, 0x3b, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x76, 0x31,
+ 0xa2, 0x02, 0x04, 0x52, 0x53, 0x44, 0x51, 0xaa, 0x02, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x53, 0x71, 0x6c, 0x63, 0x2e, 0x44, 0x65, 0x76, 0x2e, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64,
+ 0x62, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x53, 0x71,
+ 0x6c, 0x63, 0x5c, 0x44, 0x65, 0x76, 0x5c, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x5c, 0x56,
+ 0x31, 0xe2, 0x02, 0x26, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x53, 0x71, 0x6c, 0x63, 0x5c,
+ 0x44, 0x65, 0x76, 0x5c, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x5c, 0x56, 0x31, 0x5c, 0x47,
+ 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1e, 0x52, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x3a, 0x3a, 0x53, 0x71, 0x6c, 0x63, 0x3a, 0x3a, 0x44, 0x65, 0x76, 0x3a, 0x3a,
+ 0x51, 0x75, 0x69, 0x63, 0x6b, 0x64, 0x62, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
}
var (
@@ -794,7 +923,7 @@ func file_v1_quickdb_proto_rawDescGZIP() []byte {
return file_v1_quickdb_proto_rawDescData
}
-var file_v1_quickdb_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
+var file_v1_quickdb_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_v1_quickdb_proto_goTypes = []interface{}{
(*CreateEphemeralDatabaseRequest)(nil), // 0: remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseRequest
(*CreateEphemeralDatabaseResponse)(nil), // 1: remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseResponse
@@ -806,8 +935,10 @@ var file_v1_quickdb_proto_goTypes = []interface{}{
(*UploadArchiveResponse)(nil), // 7: remote.sqlc.dev.quickdb.v1.UploadArchiveResponse
(*VerifyQuerySetsRequest)(nil), // 8: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest
(*VerifyQuerySetsResponse)(nil), // 9: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsResponse
- nil, // 10: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.AnnotationsEntry
- nil, // 11: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.AnnotationsEntry
+ (*GetQuerySetsRequest)(nil), // 10: remote.sqlc.dev.quickdb.v1.GetQuerySetsRequest
+ (*GetQuerySetsResponse)(nil), // 11: remote.sqlc.dev.quickdb.v1.GetQuerySetsResponse
+ nil, // 12: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.AnnotationsEntry
+ nil, // 13: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.AnnotationsEntry
}
var file_v1_quickdb_proto_depIdxs = []int32{
4, // 0: remote.sqlc.dev.quickdb.v1.QuerySet.schema:type_name -> remote.sqlc.dev.quickdb.v1.File
@@ -815,25 +946,28 @@ var file_v1_quickdb_proto_depIdxs = []int32{
4, // 2: remote.sqlc.dev.quickdb.v1.QuerySet.codegen_request:type_name -> remote.sqlc.dev.quickdb.v1.File
4, // 3: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.inputs:type_name -> remote.sqlc.dev.quickdb.v1.File
4, // 4: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.outputs:type_name -> remote.sqlc.dev.quickdb.v1.File
- 10, // 5: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.annotations:type_name -> remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.AnnotationsEntry
+ 12, // 5: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.annotations:type_name -> remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.AnnotationsEntry
5, // 6: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.query_sets:type_name -> remote.sqlc.dev.quickdb.v1.QuerySet
4, // 7: remote.sqlc.dev.quickdb.v1.UploadArchiveRequest.config:type_name -> remote.sqlc.dev.quickdb.v1.File
5, // 8: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.query_sets:type_name -> remote.sqlc.dev.quickdb.v1.QuerySet
4, // 9: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.config:type_name -> remote.sqlc.dev.quickdb.v1.File
- 11, // 10: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.annotations:type_name -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.AnnotationsEntry
- 0, // 11: remote.sqlc.dev.quickdb.v1.Quick.CreateEphemeralDatabase:input_type -> remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseRequest
- 2, // 12: remote.sqlc.dev.quickdb.v1.Quick.DropEphemeralDatabase:input_type -> remote.sqlc.dev.quickdb.v1.DropEphemeralDatabaseRequest
- 6, // 13: remote.sqlc.dev.quickdb.v1.Quick.UploadArchive:input_type -> remote.sqlc.dev.quickdb.v1.UploadArchiveRequest
- 8, // 14: remote.sqlc.dev.quickdb.v1.Quick.VerifyQuerySets:input_type -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest
- 1, // 15: remote.sqlc.dev.quickdb.v1.Quick.CreateEphemeralDatabase:output_type -> remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseResponse
- 3, // 16: remote.sqlc.dev.quickdb.v1.Quick.DropEphemeralDatabase:output_type -> remote.sqlc.dev.quickdb.v1.DropEphemeralDatabaseResponse
- 7, // 17: remote.sqlc.dev.quickdb.v1.Quick.UploadArchive:output_type -> remote.sqlc.dev.quickdb.v1.UploadArchiveResponse
- 9, // 18: remote.sqlc.dev.quickdb.v1.Quick.VerifyQuerySets:output_type -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsResponse
- 15, // [15:19] is the sub-list for method output_type
- 11, // [11:15] is the sub-list for method input_type
- 11, // [11:11] is the sub-list for extension type_name
- 11, // [11:11] is the sub-list for extension extendee
- 0, // [0:11] is the sub-list for field type_name
+ 13, // 10: remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.annotations:type_name -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest.AnnotationsEntry
+ 5, // 11: remote.sqlc.dev.quickdb.v1.GetQuerySetsResponse.query_sets:type_name -> remote.sqlc.dev.quickdb.v1.QuerySet
+ 0, // 12: remote.sqlc.dev.quickdb.v1.Quick.CreateEphemeralDatabase:input_type -> remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseRequest
+ 2, // 13: remote.sqlc.dev.quickdb.v1.Quick.DropEphemeralDatabase:input_type -> remote.sqlc.dev.quickdb.v1.DropEphemeralDatabaseRequest
+ 6, // 14: remote.sqlc.dev.quickdb.v1.Quick.UploadArchive:input_type -> remote.sqlc.dev.quickdb.v1.UploadArchiveRequest
+ 8, // 15: remote.sqlc.dev.quickdb.v1.Quick.VerifyQuerySets:input_type -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsRequest
+ 10, // 16: remote.sqlc.dev.quickdb.v1.Quick.GetQuerySets:input_type -> remote.sqlc.dev.quickdb.v1.GetQuerySetsRequest
+ 1, // 17: remote.sqlc.dev.quickdb.v1.Quick.CreateEphemeralDatabase:output_type -> remote.sqlc.dev.quickdb.v1.CreateEphemeralDatabaseResponse
+ 3, // 18: remote.sqlc.dev.quickdb.v1.Quick.DropEphemeralDatabase:output_type -> remote.sqlc.dev.quickdb.v1.DropEphemeralDatabaseResponse
+ 7, // 19: remote.sqlc.dev.quickdb.v1.Quick.UploadArchive:output_type -> remote.sqlc.dev.quickdb.v1.UploadArchiveResponse
+ 9, // 20: remote.sqlc.dev.quickdb.v1.Quick.VerifyQuerySets:output_type -> remote.sqlc.dev.quickdb.v1.VerifyQuerySetsResponse
+ 11, // 21: remote.sqlc.dev.quickdb.v1.Quick.GetQuerySets:output_type -> remote.sqlc.dev.quickdb.v1.GetQuerySetsResponse
+ 17, // [17:22] is the sub-list for method output_type
+ 12, // [12:17] is the sub-list for method input_type
+ 12, // [12:12] is the sub-list for extension type_name
+ 12, // [12:12] is the sub-list for extension extendee
+ 0, // [0:12] is the sub-list for field type_name
}
func init() { file_v1_quickdb_proto_init() }
@@ -962,6 +1096,30 @@ func file_v1_quickdb_proto_init() {
return nil
}
}
+ file_v1_quickdb_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetQuerySetsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_v1_quickdb_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetQuerySetsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -969,7 +1127,7 @@ func file_v1_quickdb_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_v1_quickdb_proto_rawDesc,
NumEnums: 0,
- NumMessages: 12,
+ NumMessages: 14,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/internal/quickdb/v1/quickdb_grpc.pb.go b/internal/quickdb/v1/quickdb_grpc.pb.go
index 97b25abe65..f8f4a131fc 100644
--- a/internal/quickdb/v1/quickdb_grpc.pb.go
+++ b/internal/quickdb/v1/quickdb_grpc.pb.go
@@ -23,6 +23,7 @@ const (
Quick_DropEphemeralDatabase_FullMethodName = "/remote.sqlc.dev.quickdb.v1.Quick/DropEphemeralDatabase"
Quick_UploadArchive_FullMethodName = "/remote.sqlc.dev.quickdb.v1.Quick/UploadArchive"
Quick_VerifyQuerySets_FullMethodName = "/remote.sqlc.dev.quickdb.v1.Quick/VerifyQuerySets"
+ Quick_GetQuerySets_FullMethodName = "/remote.sqlc.dev.quickdb.v1.Quick/GetQuerySets"
)
// QuickClient is the client API for Quick service.
@@ -33,6 +34,7 @@ type QuickClient interface {
DropEphemeralDatabase(ctx context.Context, in *DropEphemeralDatabaseRequest, opts ...grpc.CallOption) (*DropEphemeralDatabaseResponse, error)
UploadArchive(ctx context.Context, in *UploadArchiveRequest, opts ...grpc.CallOption) (*UploadArchiveResponse, error)
VerifyQuerySets(ctx context.Context, in *VerifyQuerySetsRequest, opts ...grpc.CallOption) (*VerifyQuerySetsResponse, error)
+ GetQuerySets(ctx context.Context, in *GetQuerySetsRequest, opts ...grpc.CallOption) (*GetQuerySetsResponse, error)
}
type quickClient struct {
@@ -79,6 +81,15 @@ func (c *quickClient) VerifyQuerySets(ctx context.Context, in *VerifyQuerySetsRe
return out, nil
}
+func (c *quickClient) GetQuerySets(ctx context.Context, in *GetQuerySetsRequest, opts ...grpc.CallOption) (*GetQuerySetsResponse, error) {
+ out := new(GetQuerySetsResponse)
+ err := c.cc.Invoke(ctx, Quick_GetQuerySets_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
// QuickServer is the server API for Quick service.
// All implementations must embed UnimplementedQuickServer
// for forward compatibility
@@ -87,6 +98,7 @@ type QuickServer interface {
DropEphemeralDatabase(context.Context, *DropEphemeralDatabaseRequest) (*DropEphemeralDatabaseResponse, error)
UploadArchive(context.Context, *UploadArchiveRequest) (*UploadArchiveResponse, error)
VerifyQuerySets(context.Context, *VerifyQuerySetsRequest) (*VerifyQuerySetsResponse, error)
+ GetQuerySets(context.Context, *GetQuerySetsRequest) (*GetQuerySetsResponse, error)
mustEmbedUnimplementedQuickServer()
}
@@ -106,6 +118,9 @@ func (UnimplementedQuickServer) UploadArchive(context.Context, *UploadArchiveReq
func (UnimplementedQuickServer) VerifyQuerySets(context.Context, *VerifyQuerySetsRequest) (*VerifyQuerySetsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method VerifyQuerySets not implemented")
}
+func (UnimplementedQuickServer) GetQuerySets(context.Context, *GetQuerySetsRequest) (*GetQuerySetsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetQuerySets not implemented")
+}
func (UnimplementedQuickServer) mustEmbedUnimplementedQuickServer() {}
// UnsafeQuickServer may be embedded to opt out of forward compatibility for this service.
@@ -191,6 +206,24 @@ func _Quick_VerifyQuerySets_Handler(srv interface{}, ctx context.Context, dec fu
return interceptor(ctx, in, info, handler)
}
+func _Quick_GetQuerySets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetQuerySetsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(QuickServer).GetQuerySets(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: Quick_GetQuerySets_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(QuickServer).GetQuerySets(ctx, req.(*GetQuerySetsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
// Quick_ServiceDesc is the grpc.ServiceDesc for Quick service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -214,6 +247,10 @@ var Quick_ServiceDesc = grpc.ServiceDesc{
MethodName: "VerifyQuerySets",
Handler: _Quick_VerifyQuerySets_Handler,
},
+ {
+ MethodName: "GetQuerySets",
+ Handler: _Quick_GetQuerySets_Handler,
+ },
},
Streams: []grpc.StreamDesc{},
Metadata: "v1/quickdb.proto",
diff --git a/internal/sql/ast/aggref.go b/internal/sql/ast/aggref.go
index c4fa9af7e5..6642f4d9e3 100644
--- a/internal/sql/ast/aggref.go
+++ b/internal/sql/ast/aggref.go
@@ -6,7 +6,6 @@ type Aggref struct {
Aggtype Oid
Aggcollid Oid
Inputcollid Oid
- Aggtranstype Oid
Aggargtypes *List
Aggdirectargs *List
Args *List
diff --git a/internal/sql/ast/grant_role_stmt.go b/internal/sql/ast/grant_role_stmt.go
index 5d785efa7e..5e0b2a8e87 100644
--- a/internal/sql/ast/grant_role_stmt.go
+++ b/internal/sql/ast/grant_role_stmt.go
@@ -4,7 +4,6 @@ type GrantRoleStmt struct {
GrantedRoles *List
GranteeRoles *List
IsGrant bool
- AdminOpt bool
Grantor *RoleSpec
Behavior DropBehavior
}
diff --git a/internal/sql/ast/index_stmt.go b/internal/sql/ast/index_stmt.go
index c0f12bdb68..fe0f03593c 100644
--- a/internal/sql/ast/index_stmt.go
+++ b/internal/sql/ast/index_stmt.go
@@ -11,7 +11,6 @@ type IndexStmt struct {
ExcludeOpNames *List
Idxcomment *string
IndexOid Oid
- OldNode Oid
Unique bool
Primary bool
Isconstraint bool
diff --git a/internal/sql/ast/op_expr.go b/internal/sql/ast/op_expr.go
index 5b371545dc..0c7c21726e 100644
--- a/internal/sql/ast/op_expr.go
+++ b/internal/sql/ast/op_expr.go
@@ -3,7 +3,6 @@ package ast
type OpExpr struct {
Xpr Node
Opno Oid
- Opfuncid Oid
Opresulttype Oid
Opretset bool
Opcollid Oid
diff --git a/internal/sql/ast/scalar_array_op_expr.go b/internal/sql/ast/scalar_array_op_expr.go
index 6b9ad6ad8b..fc438c10b3 100644
--- a/internal/sql/ast/scalar_array_op_expr.go
+++ b/internal/sql/ast/scalar_array_op_expr.go
@@ -3,7 +3,6 @@ package ast
type ScalarArrayOpExpr struct {
Xpr Node
Opno Oid
- Opfuncid Oid
UseOr bool
Inputcollid Oid
Args *List
diff --git a/internal/sql/sqlpath/read.go b/internal/sql/sqlpath/read.go
index 02c8b2855c..278ebf3a05 100644
--- a/internal/sql/sqlpath/read.go
+++ b/internal/sql/sqlpath/read.go
@@ -46,7 +46,7 @@ func Glob(patterns []string) ([]string, error) {
files = append(files, filepath.Join(path, f.Name()))
}
} else {
- files = append(files, path)
+ files = append(files, filepath.Clean(path))
}
}
var sqlFiles []string
diff --git a/internal/sql/sqlpath/read_test.go b/internal/sql/sqlpath/read_test.go
index babb80cc80..e4d959085b 100644
--- a/internal/sql/sqlpath/read_test.go
+++ b/internal/sql/sqlpath/read_test.go
@@ -2,6 +2,8 @@ package sqlpath
import (
"fmt"
+ "path/filepath"
+ "strings"
"testing"
"github.com/google/go-cmp/cmp"
@@ -16,7 +18,7 @@ func TestReturnsListOfSQLFiles(t *testing.T) {
result, err := Glob(paths)
// Assert
- expected := []string{"testdata/file1.sql", "testdata/file2.sql"}
+ expected := []string{filepath.Join("testdata", "file1.sql"), filepath.Join("testdata", "file2.sql")}
if !cmp.Equal(result, expected) {
t.Errorf("Expected %v, but got %v, %v", expected, result, cmp.Diff(expected, result))
}
@@ -83,7 +85,7 @@ func TestExcludesSQLFilesEndingWithDownSQLWhenSearchingForSQLFiles(t *testing.T)
result, err := Glob(paths)
// Assert
- expected := []string{"testdata/file1.sql"}
+ expected := []string{filepath.Join("testdata", "file1.sql")}
if !cmp.Equal(result, expected) {
t.Errorf("Expected %v, but got %v", expected, result)
}
@@ -107,8 +109,8 @@ func TestReturnsErrorWhenPathDoesNotExist(t *testing.T) {
if err == nil {
t.Errorf("Expected an error, but got nil")
} else {
- expectedError := fmt.Errorf("path error: stat non_existent_path: no such file or directory")
- if !cmp.Equal(err.Error(), expectedError.Error()) {
+ expectedError := fmt.Errorf("path error:")
+ if !strings.HasPrefix(err.Error(), expectedError.Error()) {
t.Errorf("Expected error %v, but got %v", expectedError, err)
}
}
@@ -129,8 +131,8 @@ func TestReturnsErrorWhenDirectoryCannotBeRead(t *testing.T) {
if err == nil {
t.Errorf("Expected an error, but got nil")
} else {
- expectedError := fmt.Errorf("path error: stat testdata/unreadable: no such file or directory")
- if !cmp.Equal(err.Error(), expectedError.Error()) {
+ expectedError := fmt.Errorf("path error:")
+ if !strings.HasPrefix(err.Error(), expectedError.Error()) {
t.Errorf("Expected error %v, but got %v", expectedError, err)
}
}
@@ -164,22 +166,10 @@ func TestNotIncludesHiddenFilesAnyPath(t *testing.T) {
result, err := Glob(paths)
// Assert
- expectedAny := [][]string{
- {"./testdata/.hiddendir/file1.sql"},
- {"testdata/.hiddendir/file1.sql"},
- }
-
- match := false
- for _, expected := range expectedAny {
- if cmp.Equal(result, expected) {
- match = true
- break
- }
- }
- if !match {
- t.Errorf("Expected any of %v, but got %v", expectedAny, result)
+ expected := []string{filepath.Join("testdata", ".hiddendir", "file1.sql")}
+ if !cmp.Equal(result, expected) {
+ t.Errorf("Expected %v, but got %v", expected, result)
}
-
if err != nil {
t.Errorf("Expected no error, but got %v", err)
}
@@ -194,10 +184,10 @@ func TestFollowSymlinks(t *testing.T) {
// Assert
expected := []string{
- "testdata/symlink/file1.sql",
- "testdata/symlink/file1.symlink.sql",
- "testdata/symlink/file2.sql",
- "testdata/file1.symlink.sql",
+ filepath.Join("testdata", "symlink", "file1.sql"),
+ filepath.Join("testdata", "symlink", "file1.symlink.sql"),
+ filepath.Join("testdata", "symlink", "file2.sql"),
+ filepath.Join("testdata", "file1.symlink.sql"),
}
if !cmp.Equal(result, expected) {
t.Errorf("Expected %v, but got %v", expected, result)
@@ -216,24 +206,24 @@ func TestGlobPattern(t *testing.T) {
{
pattern: "testdata/glob/*/queries",
expected: []string{
- "testdata/glob/sub1/queries/file1.sql",
- "testdata/glob/sub2/queries/file2.sql",
- "testdata/glob/sub3/queries/file3.sql",
- "testdata/glob/sub3/queries/file4.sql",
+ filepath.Join("testdata", "glob", "sub1", "queries", "file1.sql"),
+ filepath.Join("testdata", "glob", "sub2", "queries", "file2.sql"),
+ filepath.Join("testdata", "glob", "sub3", "queries", "file3.sql"),
+ filepath.Join("testdata", "glob", "sub3", "queries", "file4.sql"),
},
},
{
pattern: "testdata/glob/sub3/queries/file?.sql",
expected: []string{
- "testdata/glob/sub3/queries/file3.sql",
- "testdata/glob/sub3/queries/file4.sql",
+ filepath.Join("testdata", "glob", "sub3", "queries", "file3.sql"),
+ filepath.Join("testdata", "glob", "sub3", "queries", "file4.sql"),
},
},
{
pattern: "testdata/glob/sub3/queries/file[1-5].sql",
expected: []string{
- "testdata/glob/sub3/queries/file3.sql",
- "testdata/glob/sub3/queries/file4.sql",
+ filepath.Join("testdata", "glob", "sub3", "queries", "file3.sql"),
+ filepath.Join("testdata", "glob", "sub3", "queries", "file4.sql"),
},
},
}
diff --git a/internal/sqltest/hosted/client.go b/internal/sqltest/hosted/client.go
deleted file mode 100644
index cceb2c086e..0000000000
--- a/internal/sqltest/hosted/client.go
+++ /dev/null
@@ -1,27 +0,0 @@
-package hosted
-
-import (
- "fmt"
- "os"
- "sync"
-
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
-)
-
-var client pb.QuickClient
-var once sync.Once
-
-func initClient() error {
- projectID := os.Getenv("CI_SQLC_PROJECT_ID")
- authToken := os.Getenv("CI_SQLC_AUTH_TOKEN")
- if projectID == "" || authToken == "" {
- return fmt.Errorf("missing project id or auth token")
- }
- c, err := quickdb.NewClient(projectID, authToken)
- if err != nil {
- return err
- }
- client = c
- return nil
-}
diff --git a/internal/sqltest/hosted/mysql.go b/internal/sqltest/hosted/mysql.go
deleted file mode 100644
index 7d559aa966..0000000000
--- a/internal/sqltest/hosted/mysql.go
+++ /dev/null
@@ -1,64 +0,0 @@
-package hosted
-
-import (
- "context"
- "os"
- "testing"
-
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
- "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
-)
-
-func MySQL(t *testing.T, migrations []string) string {
- ctx := context.Background()
- t.Helper()
-
- once.Do(func() {
- if err := initClient(); err != nil {
- t.Log(err)
- }
- })
-
- if client == nil {
- t.Skip("client init failed")
- }
-
- var seed []string
- files, err := sqlpath.Glob(migrations)
- if err != nil {
- t.Fatal(err)
- }
- for _, f := range files {
- blob, err := os.ReadFile(f)
- if err != nil {
- t.Fatal(err)
- }
- seed = append(seed, string(blob))
- }
-
- resp, err := client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
- Engine: "mysql",
- Region: quickdb.GetClosestRegion(),
- Migrations: seed,
- })
- if err != nil {
- t.Fatalf("region %s: %s", quickdb.GetClosestRegion(), err)
- }
-
- t.Cleanup(func() {
- _, err = client.DropEphemeralDatabase(ctx, &pb.DropEphemeralDatabaseRequest{
- DatabaseId: resp.DatabaseId,
- })
- if err != nil {
- t.Fatal(err)
- }
- })
-
- uri, err := quickdb.MySQLReformatURI(resp.Uri)
- if err != nil {
- t.Fatalf("uri error: %s", err)
- }
-
- return uri
-}
diff --git a/internal/sqltest/hosted/postgres.go b/internal/sqltest/hosted/postgres.go
deleted file mode 100644
index 664961b560..0000000000
--- a/internal/sqltest/hosted/postgres.go
+++ /dev/null
@@ -1,59 +0,0 @@
-package hosted
-
-import (
- "context"
- "os"
- "testing"
-
- "github.com/sqlc-dev/sqlc/internal/quickdb"
- pb "github.com/sqlc-dev/sqlc/internal/quickdb/v1"
- "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
-)
-
-func PostgreSQL(t *testing.T, migrations []string) string {
- ctx := context.Background()
- t.Helper()
-
- once.Do(func() {
- if err := initClient(); err != nil {
- t.Log(err)
- }
- })
-
- if client == nil {
- t.Skip("client init failed")
- }
-
- var seed []string
- files, err := sqlpath.Glob(migrations)
- if err != nil {
- t.Fatal(err)
- }
- for _, f := range files {
- blob, err := os.ReadFile(f)
- if err != nil {
- t.Fatal(err)
- }
- seed = append(seed, string(blob))
- }
-
- resp, err := client.CreateEphemeralDatabase(ctx, &pb.CreateEphemeralDatabaseRequest{
- Engine: "postgresql",
- Region: quickdb.GetClosestRegion(),
- Migrations: seed,
- })
- if err != nil {
- t.Fatalf("region %s: %s", quickdb.GetClosestRegion(), err)
- }
-
- t.Cleanup(func() {
- _, err = client.DropEphemeralDatabase(ctx, &pb.DropEphemeralDatabaseRequest{
- DatabaseId: resp.DatabaseId,
- })
- if err != nil {
- t.Fatal(err)
- }
- })
-
- return resp.Uri
-}
diff --git a/internal/sqltest/local/id.go b/internal/sqltest/local/id.go
new file mode 100644
index 0000000000..919e2dca1d
--- /dev/null
+++ b/internal/sqltest/local/id.go
@@ -0,0 +1,13 @@
+package local
+
+import "math/rand"
+
+var letterRunes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
+
+func id() string {
+ b := make([]rune, 10)
+ for i := range b {
+ b[i] = letterRunes[rand.Intn(len(letterRunes))]
+ }
+ return string(b)
+}
diff --git a/internal/sqltest/local/mysql.go b/internal/sqltest/local/mysql.go
new file mode 100644
index 0000000000..9c068a39ba
--- /dev/null
+++ b/internal/sqltest/local/mysql.go
@@ -0,0 +1,96 @@
+package local
+
+import (
+ "context"
+ "database/sql"
+ "fmt"
+ "os"
+ "strings"
+ "sync"
+ "testing"
+
+ "github.com/go-sql-driver/mysql"
+
+ migrate "github.com/sqlc-dev/sqlc/internal/migrations"
+ "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
+)
+
+var mysqlSync sync.Once
+var mysqlPool *sql.DB
+
+func MySQLServer() string {
+ return os.Getenv("MYSQL_SERVER_URI")
+}
+
+func MySQL(t *testing.T, migrations []string) string {
+ ctx := context.Background()
+ t.Helper()
+
+ dburi := os.Getenv("MYSQL_SERVER_URI")
+ if dburi == "" {
+ t.Skip("MYSQL_SERVER_URI is empty")
+ }
+
+ mysqlSync.Do(func() {
+ db, err := sql.Open("mysql", dburi)
+ if err != nil {
+ t.Fatal(err)
+ }
+ mysqlPool = db
+ })
+
+ if mysqlPool == nil {
+ t.Fatalf("MySQL pool creation failed")
+ }
+
+ var seed []string
+ files, err := sqlpath.Glob(migrations)
+ if err != nil {
+ t.Fatal(err)
+ }
+ for _, f := range files {
+ blob, err := os.ReadFile(f)
+ if err != nil {
+ t.Fatal(err)
+ }
+ seed = append(seed, migrate.RemoveRollbackStatements(string(blob)))
+ }
+
+ cfg, err := mysql.ParseDSN(dburi)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ name := fmt.Sprintf("sqlc_test_%s", id())
+
+ if _, err := mysqlPool.ExecContext(ctx, fmt.Sprintf("CREATE DATABASE `%s`", name)); err != nil {
+ t.Fatal(err)
+ }
+
+ cfg.DBName = name
+
+ dropQuery := fmt.Sprintf("DROP DATABASE `%s`", name)
+
+ t.Cleanup(func() {
+ if _, err := mysqlPool.ExecContext(ctx, dropQuery); err != nil {
+ t.Fatal(err)
+ }
+ })
+
+ db, err := sql.Open("mysql", cfg.FormatDSN())
+ if err != nil {
+ t.Fatalf("connect %s: %s", name, err)
+ }
+ defer db.Close()
+
+ for _, q := range seed {
+ if len(strings.TrimSpace(q)) == 0 {
+ continue
+ }
+ if _, err := db.ExecContext(ctx, q); err != nil {
+ t.Fatalf("%s: %s", q, err)
+ }
+ }
+
+ return cfg.FormatDSN()
+}
diff --git a/internal/sqltest/local/postgres.go b/internal/sqltest/local/postgres.go
new file mode 100644
index 0000000000..7b2c16c40a
--- /dev/null
+++ b/internal/sqltest/local/postgres.go
@@ -0,0 +1,123 @@
+package local
+
+import (
+ "context"
+ "fmt"
+ "hash/fnv"
+ "net/url"
+ "os"
+ "strings"
+ "testing"
+
+ "github.com/jackc/pgx/v5"
+ "golang.org/x/sync/singleflight"
+
+ migrate "github.com/sqlc-dev/sqlc/internal/migrations"
+ "github.com/sqlc-dev/sqlc/internal/pgx/poolcache"
+ "github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
+)
+
+var flight singleflight.Group
+var cache = poolcache.New()
+
+func PostgreSQL(t *testing.T, migrations []string) string {
+ return postgreSQL(t, migrations, true)
+}
+
+func ReadOnlyPostgreSQL(t *testing.T, migrations []string) string {
+ return postgreSQL(t, migrations, false)
+}
+
+func PostgreSQLServer() string {
+ return os.Getenv("POSTGRESQL_SERVER_URI")
+}
+
+func postgreSQL(t *testing.T, migrations []string, rw bool) string {
+ ctx := context.Background()
+ t.Helper()
+
+ dburi := os.Getenv("POSTGRESQL_SERVER_URI")
+ if dburi == "" {
+ t.Skip("POSTGRESQL_SERVER_URI is empty")
+ }
+
+ postgresPool, err := cache.Open(ctx, dburi)
+ if err != nil {
+ t.Fatalf("PostgreSQL pool creation failed: %s", err)
+ }
+
+ var seed []string
+ files, err := sqlpath.Glob(migrations)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ h := fnv.New64()
+ for _, f := range files {
+ blob, err := os.ReadFile(f)
+ if err != nil {
+ t.Fatal(err)
+ }
+ h.Write(blob)
+ seed = append(seed, migrate.RemoveRollbackStatements(string(blob)))
+ }
+
+ var name string
+ if rw {
+ name = fmt.Sprintf("sqlc_test_%s", id())
+ } else {
+ name = fmt.Sprintf("sqlc_test_%x", h.Sum(nil))
+ }
+
+ uri, err := url.Parse(dburi)
+ if err != nil {
+ t.Fatal(err)
+ }
+ uri.Path = name
+ dropQuery := fmt.Sprintf(`DROP DATABASE IF EXISTS "%s" WITH (FORCE)`, name)
+
+ key := uri.String()
+
+ _, err, _ = flight.Do(key, func() (interface{}, error) {
+ row := postgresPool.QueryRow(ctx,
+ fmt.Sprintf(`SELECT datname FROM pg_database WHERE datname = '%s'`, name))
+
+ var datname string
+ if err := row.Scan(&datname); err == nil {
+ t.Logf("database exists: %s", name)
+ return nil, nil
+ }
+
+ t.Logf("creating database: %s", name)
+ if _, err := postgresPool.Exec(ctx, fmt.Sprintf(`CREATE DATABASE "%s"`, name)); err != nil {
+ return nil, err
+ }
+
+ conn, err := pgx.Connect(ctx, uri.String())
+ if err != nil {
+ return nil, fmt.Errorf("connect %s: %s", name, err)
+ }
+ defer conn.Close(ctx)
+
+ for _, q := range seed {
+ if len(strings.TrimSpace(q)) == 0 {
+ continue
+ }
+ if _, err := conn.Exec(ctx, q); err != nil {
+ return nil, fmt.Errorf("%s: %s", q, err)
+ }
+ }
+ return nil, nil
+ })
+ if rw || err != nil {
+ t.Cleanup(func() {
+ if _, err := postgresPool.Exec(ctx, dropQuery); err != nil {
+ t.Fatalf("failed cleaning up: %s", err)
+ }
+ })
+ }
+ if err != nil {
+ t.Fatalf("create db: %s", err)
+ }
+ return key
+}
diff --git a/internal/sqltest/sqlite.go b/internal/sqltest/sqlite.go
index cd7eff3872..0e5161967d 100644
--- a/internal/sqltest/sqlite.go
+++ b/internal/sqltest/sqlite.go
@@ -7,8 +7,6 @@ import (
"testing"
"github.com/sqlc-dev/sqlc/internal/sql/sqlpath"
-
- _ "github.com/mattn/go-sqlite3"
)
func SQLite(t *testing.T, migrations []string) (*sql.DB, func()) {
@@ -18,6 +16,9 @@ func SQLite(t *testing.T, migrations []string) (*sql.DB, func()) {
if err != nil {
t.Fatal(err)
}
+ if err := source.Close(); err != nil {
+ t.Fatal(err)
+ }
return CreateSQLiteDatabase(t, source.Name(), migrations)
}
@@ -25,7 +26,7 @@ func CreateSQLiteDatabase(t *testing.T, path string, migrations []string) (*sql.
t.Helper()
t.Logf("open %s\n", path)
- sdb, err := sql.Open("sqlite3", path)
+ sdb, err := sql.Open("sqlite", path)
if err != nil {
t.Fatal(err)
}
diff --git a/internal/sqltest/sqlite_modernc.go b/internal/sqltest/sqlite_modernc.go
new file mode 100644
index 0000000000..708ea40e49
--- /dev/null
+++ b/internal/sqltest/sqlite_modernc.go
@@ -0,0 +1,7 @@
+//go:build !wasm
+
+package sqltest
+
+import (
+ _ "modernc.org/sqlite"
+)
diff --git a/scripts/cleanup-test-dbs/main.go b/scripts/cleanup-test-dbs/main.go
new file mode 100644
index 0000000000..51093db307
--- /dev/null
+++ b/scripts/cleanup-test-dbs/main.go
@@ -0,0 +1,55 @@
+package main
+
+import (
+ "context"
+ "fmt"
+ "log"
+ "os"
+
+ "github.com/jackc/pgx/v5"
+ "github.com/jackc/pgx/v5/pgxpool"
+)
+
+func main() {
+ if err := run(); err != nil {
+ log.Fatal(err)
+ }
+}
+
+const query = `
+SELECT datname
+FROM pg_database
+WHERE datname LIKE 'sqlc_test_%'
+`
+
+func run() error {
+ ctx := context.Background()
+ dburi := os.Getenv("POSTGRESQL_SERVER_URI")
+ if dburi == "" {
+ return fmt.Errorf("POSTGRESQL_SERVER_URI is empty")
+ }
+ pool, err := pgxpool.New(ctx, dburi)
+ if err != nil {
+ return err
+ }
+
+ rows, err := pool.Query(ctx, query)
+ if err != nil {
+ return err
+ }
+
+ names, err := pgx.CollectRows(rows, pgx.RowTo[string])
+ if err != nil {
+ return err
+ }
+
+ for _, name := range names {
+ drop := fmt.Sprintf(`DROP DATABASE IF EXISTS "%s" WITH (FORCE)`, name)
+ if _, err := pool.Exec(ctx, drop); err != nil {
+ return err
+ }
+ log.Println("dropping database", name)
+ }
+
+ return nil
+}
diff --git a/scripts/regenerate/main.go b/scripts/regenerate/main.go
deleted file mode 100644
index c1a578b62d..0000000000
--- a/scripts/regenerate/main.go
+++ /dev/null
@@ -1,85 +0,0 @@
-package main
-
-import (
- "encoding/json"
- "fmt"
- "log"
- "os"
- "os/exec"
- "path/filepath"
- "strings"
-)
-
-func parseExecCommand(path string) (string, error) {
- var exec = struct {
- Command string `json:"command"`
- }{
- Command: "generate",
- }
-
- execJsonPath := filepath.Join(path, "exec.json")
- if _, err := os.Stat(execJsonPath); !os.IsNotExist(err) {
- blob, err := os.ReadFile(execJsonPath)
- if err != nil {
- return "", err
- }
- if err := json.Unmarshal(blob, &exec); err != nil {
- return "", err
- }
- }
-
- return exec.Command, nil
-}
-
-func regenerate(dir string) error {
- return filepath.Walk(dir, func(path string, info os.FileInfo, err error) error {
- if err != nil {
- return err
- }
- if info.IsDir() {
- return nil
- }
- if strings.HasSuffix(path, "sqlc.json") || strings.HasSuffix(path, "sqlc.yaml") || strings.HasSuffix(path, "sqlc.yml") {
- cwd := filepath.Dir(path)
- command, err := parseExecCommand(cwd)
- if err != nil {
- return fmt.Errorf("failed to parse exec.json: %w", err)
- }
-
- if command != "generate" {
- return nil
- }
-
- var expectFailure bool
- if _, err := os.Stat(filepath.Join(cwd, "stderr.txt")); !os.IsNotExist(err) {
- expectFailure = true
- }
-
- cmd := exec.Command("sqlc-dev", "generate")
- cmd.Env = append(cmd.Env, "SQLC_DUMMY_VALUE=true")
- cmd.Dir = cwd
- out, failed := cmd.CombinedOutput()
- if failed != nil && !expectFailure {
- return fmt.Errorf("%s: sqlc-dev generate failed\n%s", cwd, out)
- }
- if expectFailure {
- if err := os.WriteFile(filepath.Join(cwd, "stderr.txt"), out, 0644); err != nil {
- return fmt.Errorf("failed to update stderr.txt: %v", err)
- }
- }
- }
- return nil
- })
-}
-
-func main() {
- dirs := []string{
- filepath.Join("internal", "endtoend", "testdata"),
- filepath.Join("examples"),
- }
- for _, d := range dirs {
- if err := regenerate(d); err != nil {
- log.Fatal(err)
- }
- }
-}
diff --git a/scripts/test-json-process-plugin/main.go b/scripts/test-json-process-plugin/main.go
new file mode 100644
index 0000000000..6bcc7a25d0
--- /dev/null
+++ b/scripts/test-json-process-plugin/main.go
@@ -0,0 +1,39 @@
+package main
+
+import (
+ "bytes"
+ "encoding/json"
+ "fmt"
+ "os"
+)
+
+type Out struct {
+ Files []File `json:"files"`
+}
+
+type File struct {
+ Name string `json:"name"`
+ Contents []byte `json:"contents"`
+}
+
+func main() {
+ in := make(map[string]interface{})
+ decoder := json.NewDecoder(os.Stdin)
+ err := decoder.Decode(&in)
+ if err != nil {
+ fmt.Fprintf(os.Stderr, "error generating JSON: %s", err)
+ os.Exit(2)
+ }
+
+ buf := bytes.NewBuffer(nil)
+ queries := in["queries"].([]interface{})
+ for _, q := range queries {
+ text := q.(map[string]interface{})["text"].(string)
+ buf.WriteString(text)
+ buf.WriteString("\n")
+ }
+
+ e := json.NewEncoder(os.Stdout)
+ e.SetIndent("", " ")
+ e.Encode(&Out{Files: []File{{Name: "hello.txt", Contents: buf.Bytes()}}})
+}