[chore] bump db dependencies (#1366)

This commit is contained in:
tobi 2023-01-22 12:26:47 +01:00 committed by GitHub
parent b375d3b5d6
commit 0ceacd7b1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
78 changed files with 141878 additions and 126068 deletions

12
go.mod
View file

@ -45,9 +45,9 @@ require (
github.com/superseriousbusiness/oauth2/v4 v4.3.2-SSB
github.com/tdewolff/minify/v2 v2.12.4
github.com/ulule/limiter/v3 v3.10.0
github.com/uptrace/bun v1.1.9
github.com/uptrace/bun/dialect/pgdialect v1.1.9
github.com/uptrace/bun/dialect/sqlitedialect v1.1.9
github.com/uptrace/bun v1.1.10
github.com/uptrace/bun/dialect/pgdialect v1.1.10
github.com/uptrace/bun/dialect/sqlitedialect v1.1.10
github.com/wagslane/go-password-validator v0.3.0
github.com/yuin/goldmark v1.5.3
go.uber.org/automaxprocs v1.5.1
@ -59,7 +59,7 @@ require (
golang.org/x/text v0.6.0
gopkg.in/mcuadros/go-syslog.v2 v2.3.0
gopkg.in/yaml.v3 v3.0.1
modernc.org/sqlite v1.19.5
modernc.org/sqlite v1.20.3
mvdan.cc/xurls/v2 v2.4.0
)
@ -121,7 +121,7 @@ require (
github.com/klauspost/cpuid/v2 v2.1.1 // indirect
github.com/leodido/go-urn v1.2.1 // indirect
github.com/magiconair/properties v1.8.6 // indirect
github.com/mattn/go-isatty v0.0.16 // indirect
github.com/mattn/go-isatty v0.0.17 // indirect
github.com/minio/md5-simd v1.1.2 // indirect
github.com/minio/sha256-simd v1.0.0 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
@ -156,7 +156,7 @@ require (
lukechampine.com/uint128 v1.2.0 // indirect
modernc.org/cc/v3 v3.40.0 // indirect
modernc.org/ccgo/v3 v3.16.13 // indirect
modernc.org/libc v1.21.5 // indirect
modernc.org/libc v1.22.2 // indirect
modernc.org/mathutil v1.5.0 // indirect
modernc.org/memory v1.4.0 // indirect
modernc.org/opt v0.1.3 // indirect

24
go.sum
View file

@ -425,8 +425,8 @@ github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hd
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-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng=
github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U=
github.com/microcosm-cc/bluemonday v1.0.21 h1:dNH3e4PSyE4vNX+KlRGHT5KrSvjeUkoNPwEORjffHJg=
github.com/microcosm-cc/bluemonday v1.0.21/go.mod h1:ytNkv4RrDrLJ2pqlsSI46O6IVXmZOBBD4SaJyDwwTkM=
@ -575,12 +575,12 @@ github.com/ugorji/go/codec v1.2.7 h1:YPXUKf7fYbp/y8xloBqZOw2qaVggbfwMlI8WM3wZUJ0
github.com/ugorji/go/codec v1.2.7/go.mod h1:WGN1fab3R1fzQlVQTkfxVtIBhWDRqOviHU95kRgeqEY=
github.com/ulule/limiter/v3 v3.10.0 h1:C9mx3tgxYnt4pUYKWktZf7aEOVPbRYxR+onNFjQTEp0=
github.com/ulule/limiter/v3 v3.10.0/go.mod h1:NqPA/r8QfP7O11iC+95X6gcWJPtRWjKrtOUw07BTvoo=
github.com/uptrace/bun v1.1.9 h1:6zs+YJcgw8oj67c+YmI8edQokDFeyR4BE/ykNWjGYYs=
github.com/uptrace/bun v1.1.9/go.mod h1:fpYRCGyruLCyP7dNjMfqulYn4VBP/fH0enc0j0yW/Cs=
github.com/uptrace/bun/dialect/pgdialect v1.1.9 h1:V23SU89WfjqtePLFPRXVXCwmSyYb0XKeg8Z6BMXgyHg=
github.com/uptrace/bun/dialect/pgdialect v1.1.9/go.mod h1:+ux7PjC4NYsNMdGE9b2ERxCi2jJai8Z8zniXFExq0Ns=
github.com/uptrace/bun/dialect/sqlitedialect v1.1.9 h1:Zr+bjuhA/XQ6U8FnRS7LZi62YZFArpAa8ESziHl1Lto=
github.com/uptrace/bun/dialect/sqlitedialect v1.1.9/go.mod h1:m0YwprKcQfDdT86rj2YoqL9p5eXqyT0vx6QL3FvAVmg=
github.com/uptrace/bun v1.1.10 h1:wx80lg32mWlOV1gNvmPTbR9znt6A2fYvvURzU5dzSPE=
github.com/uptrace/bun v1.1.10/go.mod h1:pOWJSVU+W0jp3+cbn/TtHdcG/h+QxagECw4EYdKiaSw=
github.com/uptrace/bun/dialect/pgdialect v1.1.10 h1:H25ieb5OJV5ywvKvswF++wMTnePRaGRiSNkYCRXrQxc=
github.com/uptrace/bun/dialect/pgdialect v1.1.10/go.mod h1:leDSw/IC70/GYPIU3zC8fkOZpJaJ28f51OMT1VnZiY8=
github.com/uptrace/bun/dialect/sqlitedialect v1.1.10 h1:K/vpRFJc4HqVE03HeyU7TE7E/lj96s6jfj0S3KdZutU=
github.com/uptrace/bun/dialect/sqlitedialect v1.1.10/go.mod h1:KlD+UbC5Xzd+HKGxScSgG0vPqXQttkNI3P9bN+4xDcM=
github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
github.com/valyala/fasthttp v1.14.0/go.mod h1:ol1PCaL0dX20wC0htZ7sYCsvCYmrouYra0zHzaclZhE=
@ -1050,16 +1050,16 @@ modernc.org/ccgo/v3 v3.16.13 h1:Mkgdzl46i5F/CNR/Kj80Ri59hC8TKAhZrYSaqvkwzUw=
modernc.org/ccgo/v3 v3.16.13/go.mod h1:2Quk+5YgpImhPjv2Qsob1DnZ/4som1lJTodubIcoUkY=
modernc.org/ccorpus v1.11.6 h1:J16RXiiqiCgua6+ZvQot4yUuUy8zxgqbqEEUuGPlISk=
modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM=
modernc.org/libc v1.21.5 h1:xBkU9fnHV+hvZuPSRszN0AXDG4M7nwPLwTWwkYcvLCI=
modernc.org/libc v1.21.5/go.mod h1:przBsL5RDOZajTVslkugzLBj1evTue36jEomFQOoYuI=
modernc.org/libc v1.22.2 h1:4U7v51GyhlWqQmwCHj28Rdq2Yzwk55ovjFrdPjs8Hb0=
modernc.org/libc v1.22.2/go.mod h1:uvQavJ1pZ0hIoC/jfqNoMLURIMhKzINIWypNM17puug=
modernc.org/mathutil v1.5.0 h1:rV0Ko/6SfM+8G+yKiyI830l3Wuz1zRutdslNoQ0kfiQ=
modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/memory v1.4.0 h1:crykUfNSnMAXaOJnnxcSzbUGMqkLWjklJKkBK2nwZwk=
modernc.org/memory v1.4.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
modernc.org/opt v0.1.3 h1:3XOZf2yznlhC+ibLltsDGzABUGVx8J6pnFMS3E4dcq4=
modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0=
modernc.org/sqlite v1.19.5 h1:E3iHL55c1Vw1knqIeU9N7B0fSjuiOjHZo7iVMsO6U5U=
modernc.org/sqlite v1.19.5/go.mod h1:EsYz8rfOvLCiYTy5ZFsOYzoCcRMu98YYkwAcCw5YIYw=
modernc.org/sqlite v1.20.3 h1:SqGJMMxjj1PHusLxdYxeQSodg7Jxn9WWkaAQjKrntZs=
modernc.org/sqlite v1.20.3/go.mod h1:zKcGyrICaxNTMEHSr1HQ2GUraP0j+845GYw37+EyT6A=
modernc.org/strutil v1.1.3 h1:fNMm+oJklMGYfU9Ylcywl0CO5O6nTfaowNsh2wpPjzY=
modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw=
modernc.org/tcl v1.15.0 h1:oY+JeD11qVVSgVvodMJsu7Edf8tr5E/7tuhF5cNYz34=

View file

@ -1,5 +1,5 @@
//go:build (darwin || freebsd || openbsd || netbsd || dragonfly) && !appengine
// +build darwin freebsd openbsd netbsd dragonfly
//go:build (darwin || freebsd || openbsd || netbsd || dragonfly || hurd) && !appengine
// +build darwin freebsd openbsd netbsd dragonfly hurd
// +build !appengine
package isatty

View file

@ -1,3 +1,29 @@
## [1.1.10](https://github.com/uptrace/bun/compare/v1.1.9...v1.1.10) (2023-01-16)
### Bug Fixes
* allow QueryEvent to better detect operations in raw queries ([8e44735](https://github.com/uptrace/bun/commit/8e4473538364bae6562055d35e94c3e9c0b77691))
* append default VARCHAR length instead of hardcoding it in the type definition ([e5079c7](https://github.com/uptrace/bun/commit/e5079c70343ba8c8b410aed23ac1d1ae5a2c9ff6))
* prevent panic when use pg array with custom database type ([67e4412](https://github.com/uptrace/bun/commit/67e4412a972a9ed5f3a1d07c66957beedbc8a8a3))
* properly return sql.ErrNoRows when scanning []byte ([996fead](https://github.com/uptrace/bun/commit/996fead2595fbcaff4878b77befe6709a54b3a4d))
### Features
* mssql output support for update or delete query ([#718](https://github.com/uptrace/bun/issues/718)) ([08876b4](https://github.com/uptrace/bun/commit/08876b4d420e761cbfa658aa6bb89b3f7c62c240))
* add Err method to query builder ([c722c90](https://github.com/uptrace/bun/commit/c722c90f3dce2642ca4f4c2ab3f9a35cd496b557))
* add support for time.Time array in Postgres ([3dd6f3b](https://github.com/uptrace/bun/commit/3dd6f3b2ac1bfbcda08240dc1676647b61715a9c))
* mssql and pg merge query ([#723](https://github.com/uptrace/bun/issues/723)) ([deea764](https://github.com/uptrace/bun/commit/deea764d9380b16aad34228aa32717d10f2a4bab))
* setError on attempt to set non-positive .Varchar() ([3335e0b](https://github.com/uptrace/bun/commit/3335e0b9d6d3f424145e1f715223a0fffe773d9a))
### Reverts
* go 1.18 ([67a4488](https://github.com/uptrace/bun/commit/67a448897eaaf1ebc54d629dfd3b2509b35da352))
## [1.1.9](https://github.com/uptrace/bun/compare/v1.1.8...v1.1.9) (2022-11-23)

View file

@ -28,7 +28,7 @@
- [Migrations](https://bun.uptrace.dev/guide/migrations.html).
- [Soft deletes](https://bun.uptrace.dev/guide/soft-deletes.html).
Resources:
### Resources
- [**Get started**](https://bun.uptrace.dev/guide/golang-orm.html)
- [Examples](https://github.com/uptrace/bun/tree/master/example)
@ -37,7 +37,11 @@ Resources:
- [Reference](https://pkg.go.dev/github.com/uptrace/bun)
- [Starter kit](https://github.com/go-bun/bun-starter-kit)
Featured projects using Bun:
### Tutorials
Wrote a tutorial for Bun? Create a PR to add here and on [Bun](https://bun.uptrace.dev/) site.
### Featured projects using Bun
- [uptrace](https://github.com/uptrace/uptrace) - Distributed tracing and metrics.
- [paralus](https://github.com/paralus/paralus) - All-in-one Kubernetes access manager.
@ -129,9 +133,11 @@ See [**Getting started**](https://bun.uptrace.dev/guide/golang-orm.html) guide a
- [Golang ClickHouse ORM](https://github.com/uptrace/go-clickhouse)
- [Golang msgpack](https://github.com/vmihailenco/msgpack)
## Contributors
## Contributing
Thanks to all the people who already contributed!
See [CONTRIBUTING.md](CONTRIBUTING.md) for some hints.
And thanks to all the people who already contributed!
<a href="https://github.com/uptrace/bun/graphs/contributors">
<img src="https://contributors-img.web.app/image?repo=uptrace/bun" />

12
vendor/github.com/uptrace/bun/db.go generated vendored
View file

@ -82,6 +82,10 @@ func (db *DB) NewValues(model interface{}) *ValuesQuery {
return NewValuesQuery(db, model)
}
func (db *DB) NewMerge() *MergeQuery {
return NewMergeQuery(db)
}
func (db *DB) NewSelect() *SelectQuery {
return NewSelectQuery(db)
}
@ -330,6 +334,10 @@ func (c Conn) NewValues(model interface{}) *ValuesQuery {
return NewValuesQuery(c.db, model).Conn(c)
}
func (c Conn) NewMerge() *MergeQuery {
return NewMergeQuery(c.db).Conn(c)
}
func (c Conn) NewSelect() *SelectQuery {
return NewSelectQuery(c.db).Conn(c)
}
@ -640,6 +648,10 @@ func (tx Tx) NewValues(model interface{}) *ValuesQuery {
return NewValuesQuery(tx.db, model).Conn(tx)
}
func (tx Tx) NewMerge() *MergeQuery {
return NewMergeQuery(tx.db).Conn(tx)
}
func (tx Tx) NewSelect() *SelectQuery {
return NewSelectQuery(tx.db).Conn(tx)
}

View file

@ -27,6 +27,9 @@ var (
float64Type = reflect.TypeOf((*float64)(nil)).Elem()
sliceFloat64Type = reflect.TypeOf([]float64(nil))
timeType = reflect.TypeOf((*time.Time)(nil)).Elem()
sliceTimeType = reflect.TypeOf([]time.Time(nil))
)
func arrayAppend(fmter schema.Formatter, b []byte, v interface{}) []byte {
@ -93,6 +96,8 @@ func (d *Dialect) arrayAppender(typ reflect.Type) schema.AppenderFunc {
return appendInt64SliceValue
case float64Type:
return appendFloat64SliceValue
case timeType:
return appendTimeSliceValue
}
}
@ -308,6 +313,32 @@ func arrayAppendString(b []byte, s string) []byte {
return b
}
func appendTimeSliceValue(fmter schema.Formatter, b []byte, v reflect.Value) []byte {
ts := v.Convert(sliceTimeType).Interface().([]time.Time)
return appendTimeSlice(fmter, b, ts)
}
func appendTimeSlice(fmter schema.Formatter, b []byte, ts []time.Time) []byte {
if ts == nil {
return dialect.AppendNull(b)
}
b = append(b, '\'')
b = append(b, '{')
for _, t := range ts {
b = append(b, '"')
b = t.UTC().AppendFormat(b, "2006-01-02 15:04:05.999999-07:00")
b = append(b, '"')
b = append(b, ',')
}
if len(ts) > 0 {
b[len(b)-1] = '}' // Replace trailing comma.
} else {
b = append(b, '}')
}
b = append(b, '\'')
return b
}
//------------------------------------------------------------------------------
var mapStringStringType = reflect.TypeOf(map[string]string(nil))

View file

@ -45,6 +45,10 @@ var (
jsonRawMessageType = reflect.TypeOf((*json.RawMessage)(nil)).Elem()
)
func (d *Dialect) DefaultVarcharLen() int {
return 0
}
func fieldSQLType(field *schema.Field) string {
if field.UserSQLType != "" {
return field.UserSQLType

View file

@ -2,5 +2,5 @@ package pgdialect
// Version is the current release version.
func Version() string {
return "1.1.9"
return "1.1.10"
}

View file

@ -87,6 +87,10 @@ func (d *Dialect) AppendBytes(b []byte, bs []byte) []byte {
return b
}
func (d *Dialect) DefaultVarcharLen() int {
return 0
}
func fieldSQLType(field *schema.Field) string {
switch field.DiscoveredSQLType {
case sqltype.SmallInt, sqltype.BigInt:

View file

@ -2,5 +2,5 @@ package sqlitedialect
// Version is the current release version.
func Version() string {
return "1.1.9"
return "1.1.10"
}

View file

@ -6,6 +6,7 @@ import (
"strings"
"sync/atomic"
"time"
"unicode"
"github.com/uptrace/bun/schema"
)
@ -35,13 +36,15 @@ func (e *QueryEvent) Operation() string {
}
func queryOperation(query string) string {
if idx := strings.IndexByte(query, ' '); idx > 0 {
query = query[:idx]
queryOp := strings.TrimLeftFunc(query, unicode.IsSpace)
if idx := strings.IndexByte(queryOp, ' '); idx > 0 {
queryOp = queryOp[:idx]
}
if len(query) > 16 {
query = query[:16]
if len(queryOp) > 16 {
queryOp = queryOp[:16]
}
return query
return queryOp
}
type QueryHook interface {

View file

@ -25,12 +25,12 @@ func MakeSliceNextElemFunc(v reflect.Value) func() reflect.Value {
if elem.IsNil() {
elem.Set(reflect.New(elemType))
}
return elem.Elem()
return elem
}
elem := reflect.New(elemType)
v.Set(reflect.Append(v, elem))
return elem.Elem()
return elem
}
}

View file

@ -13,7 +13,10 @@ import (
var errNilModel = errors.New("bun: Model(nil)")
var timeType = reflect.TypeOf((*time.Time)(nil)).Elem()
var (
timeType = reflect.TypeOf((*time.Time)(nil)).Elem()
bytesType = reflect.TypeOf((*[]byte)(nil)).Elem()
)
type Model = schema.Model
@ -102,19 +105,22 @@ func _newModel(db *DB, dest interface{}, scan bool) (Model, error) {
}
v = v.Elem()
typ := v.Type()
switch typ {
case timeType, bytesType:
return newScanModel(db, []interface{}{dest}), nil
}
switch v.Kind() {
case reflect.Map:
typ := v.Type()
if err := validMap(typ); err != nil {
return nil, err
}
mapPtr := v.Addr().Interface().(*map[string]interface{})
return newMapModel(db, mapPtr), nil
case reflect.Struct:
if v.Type() != timeType {
return newStructTableModelValue(db, dest, v), nil
}
return newStructTableModelValue(db, dest, v), nil
case reflect.Slice:
switch elemType := sliceElemType(v); elemType.Kind() {
case reflect.Struct:

View file

@ -6,6 +6,7 @@ import (
"reflect"
"time"
"github.com/uptrace/bun/internal"
"github.com/uptrace/bun/schema"
)
@ -33,7 +34,7 @@ func newSliceTableModel(
slice: slice,
sliceLen: slice.Len(),
nextElem: makeSliceNextElemFunc(slice),
nextElem: internal.MakeSliceNextElemFunc(slice),
}
m.init(slice.Type())
return m

View file

@ -1,6 +1,6 @@
{
"name": "gobun",
"version": "1.1.9",
"version": "1.1.10",
"main": "index.js",
"repository": "git@github.com:uptrace/bun.git",
"author": "Vladimir Mihailenco <vladimir.webdev@gmail.com>",

View file

@ -37,6 +37,18 @@ func (q *AddColumnQuery) Model(model interface{}) *AddColumnQuery {
return q
}
func (q *AddColumnQuery) Err(err error) *AddColumnQuery {
q.setErr(err)
return q
}
func (q *AddColumnQuery) Apply(fn func(*AddColumnQuery) *AddColumnQuery) *AddColumnQuery {
if fn != nil {
return fn(q)
}
return q
}
//------------------------------------------------------------------------------
func (q *AddColumnQuery) Table(tables ...string) *AddColumnQuery {

View file

@ -35,6 +35,18 @@ func (q *DropColumnQuery) Model(model interface{}) *DropColumnQuery {
return q
}
func (q *DropColumnQuery) Err(err error) *DropColumnQuery {
q.setErr(err)
return q
}
func (q *DropColumnQuery) Apply(fn func(*DropColumnQuery) *DropColumnQuery) *DropColumnQuery {
if fn != nil {
return fn(q)
}
return q
}
//------------------------------------------------------------------------------
func (q *DropColumnQuery) Table(tables ...string) *DropColumnQuery {

View file

@ -39,9 +39,17 @@ func (q *DeleteQuery) Model(model interface{}) *DeleteQuery {
return q
}
func (q *DeleteQuery) Err(err error) *DeleteQuery {
q.setErr(err)
return q
}
// Apply calls the fn passing the DeleteQuery as an argument.
func (q *DeleteQuery) Apply(fn func(*DeleteQuery) *DeleteQuery) *DeleteQuery {
return fn(q)
if fn != nil {
return fn(q)
}
return q
}
func (q *DeleteQuery) With(name string, query schema.QueryAppender) *DeleteQuery {
@ -127,13 +135,6 @@ func (q *DeleteQuery) Returning(query string, args ...interface{}) *DeleteQuery
return q
}
func (q *DeleteQuery) hasReturning() bool {
if !q.db.features.Has(feature.Returning) {
return false
}
return q.returningQuery.hasReturning()
}
//------------------------------------------------------------------------------
func (q *DeleteQuery) Operation() string {
@ -189,6 +190,14 @@ func (q *DeleteQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, e
}
}
if q.hasFeature(feature.Output) && q.hasReturning() {
b = append(b, " OUTPUT "...)
b, err = q.appendOutput(fmter, b)
if err != nil {
return nil, err
}
}
b, err = q.mustAppendWhere(fmter, b, withAlias)
if err != nil {
return nil, err
@ -223,7 +232,18 @@ func (q *DeleteQuery) softDeleteSet(fmter schema.Formatter, tm time.Time) string
//------------------------------------------------------------------------------
func (q *DeleteQuery) Scan(ctx context.Context, dest ...interface{}) error {
_, err := q.scanOrExec(ctx, dest, true)
return err
}
func (q *DeleteQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result, error) {
return q.scanOrExec(ctx, dest, len(dest) > 0)
}
func (q *DeleteQuery) scanOrExec(
ctx context.Context, dest []interface{}, hasDest bool,
) (sql.Result, error) {
if q.err != nil {
return nil, q.err
}
@ -234,25 +254,33 @@ func (q *DeleteQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result
}
}
// Run append model hooks before generating the query.
if err := q.beforeAppendModel(ctx, q); err != nil {
return nil, err
}
// Generate the query before checking hasReturning.
queryBytes, err := q.AppendQuery(q.db.fmter, q.db.makeQueryBytes())
if err != nil {
return nil, err
}
useScan := hasDest || (q.hasReturning() && q.hasFeature(feature.Returning|feature.Output))
var model Model
if useScan {
var err error
model, err = q.getModel(dest)
if err != nil {
return nil, err
}
}
query := internal.String(queryBytes)
var res sql.Result
if hasDest := len(dest) > 0; hasDest || q.hasReturning() {
model, err := q.getModel(dest)
if err != nil {
return nil, err
}
if useScan {
res, err = q.scan(ctx, q, query, model, hasDest)
if err != nil {
return nil, err

View file

@ -46,6 +46,11 @@ func (q *CreateIndexQuery) Model(model interface{}) *CreateIndexQuery {
return q
}
func (q *CreateIndexQuery) Err(err error) *CreateIndexQuery {
q.setErr(err)
return q
}
func (q *CreateIndexQuery) Unique() *CreateIndexQuery {
q.unique = true
return q

View file

@ -40,6 +40,11 @@ func (q *DropIndexQuery) Model(model interface{}) *DropIndexQuery {
return q
}
func (q *DropIndexQuery) Err(err error) *DropIndexQuery {
q.setErr(err)
return q
}
//------------------------------------------------------------------------------
func (q *DropIndexQuery) Concurrently() *DropIndexQuery {

View file

@ -48,9 +48,17 @@ func (q *InsertQuery) Model(model interface{}) *InsertQuery {
return q
}
func (q *InsertQuery) Err(err error) *InsertQuery {
q.setErr(err)
return q
}
// Apply calls the fn passing the SelectQuery as an argument.
func (q *InsertQuery) Apply(fn func(*InsertQuery) *InsertQuery) *InsertQuery {
return fn(q)
if fn != nil {
return fn(q)
}
return q
}
func (q *InsertQuery) With(name string, query schema.QueryAppender) *InsertQuery {
@ -189,7 +197,7 @@ func (q *InsertQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, e
return nil, err
}
b, err = q.appendColumnsValues(fmter, b)
b, err = q.appendColumnsValues(fmter, b, false)
if err != nil {
return nil, err
}
@ -211,7 +219,7 @@ func (q *InsertQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, e
}
func (q *InsertQuery) appendColumnsValues(
fmter schema.Formatter, b []byte,
fmter schema.Formatter, b []byte, skipOutput bool,
) (_ []byte, err error) {
if q.hasMultiTables() {
if q.columns != nil {
@ -272,7 +280,7 @@ func (q *InsertQuery) appendColumnsValues(
b = q.appendFields(fmter, b, fields)
b = append(b, ")"...)
if q.hasFeature(feature.Output) && q.hasReturning() {
if q.hasFeature(feature.Output) && q.hasReturning() && !skipOutput {
b = append(b, " OUTPUT "...)
b, err = q.appendOutput(fmter, b)
if err != nil {
@ -534,35 +542,54 @@ func (q *InsertQuery) appendSetValues(b []byte, fields []*schema.Field) []byte {
//------------------------------------------------------------------------------
func (q *InsertQuery) Scan(ctx context.Context, dest ...interface{}) error {
_, err := q.scanOrExec(ctx, dest, true)
return err
}
func (q *InsertQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result, error) {
return q.scanOrExec(ctx, dest, len(dest) > 0)
}
func (q *InsertQuery) scanOrExec(
ctx context.Context, dest []interface{}, hasDest bool,
) (sql.Result, error) {
if q.err != nil {
return nil, q.err
}
if q.table != nil {
if err := q.beforeInsertHook(ctx); err != nil {
return nil, err
}
}
if q.err != nil {
return nil, q.err
}
// Run append model hooks before generating the query.
if err := q.beforeAppendModel(ctx, q); err != nil {
return nil, err
}
// Generate the query before checking hasReturning.
queryBytes, err := q.AppendQuery(q.db.fmter, q.db.makeQueryBytes())
if err != nil {
return nil, err
}
query := internal.String(queryBytes)
var res sql.Result
useScan := hasDest || (q.hasReturning() && q.hasFeature(feature.InsertReturning|feature.Output))
var model Model
if hasDest := len(dest) > 0; hasDest ||
(q.hasReturning() && q.hasFeature(feature.InsertReturning|feature.Output)) {
model, err := q.getModel(dest)
if useScan {
var err error
model, err = q.getModel(dest)
if err != nil {
return nil, err
}
}
query := internal.String(queryBytes)
var res sql.Result
if useScan {
res, err = q.scan(ctx, q, query, model, hasDest)
if err != nil {
return nil, err

322
vendor/github.com/uptrace/bun/query_merge.go generated vendored Normal file
View file

@ -0,0 +1,322 @@
package bun
import (
"context"
"database/sql"
"errors"
"github.com/uptrace/bun/dialect"
"github.com/uptrace/bun/dialect/feature"
"github.com/uptrace/bun/internal"
"github.com/uptrace/bun/schema"
)
type MergeQuery struct {
baseQuery
returningQuery
using schema.QueryWithArgs
on schema.QueryWithArgs
when []schema.QueryAppender
}
var _ Query = (*MergeQuery)(nil)
func NewMergeQuery(db *DB) *MergeQuery {
q := &MergeQuery{
baseQuery: baseQuery{
db: db,
conn: db.DB,
},
}
if !(q.db.dialect.Name() == dialect.MSSQL || q.db.dialect.Name() == dialect.PG) {
q.err = errors.New("bun: merge not supported for current dialect")
}
return q
}
func (q *MergeQuery) Conn(db IConn) *MergeQuery {
q.setConn(db)
return q
}
func (q *MergeQuery) Model(model interface{}) *MergeQuery {
q.setModel(model)
return q
}
func (q *MergeQuery) Err(err error) *MergeQuery {
q.setErr(err)
return q
}
// Apply calls the fn passing the MergeQuery as an argument.
func (q *MergeQuery) Apply(fn func(*MergeQuery) *MergeQuery) *MergeQuery {
if fn != nil {
return fn(q)
}
return q
}
func (q *MergeQuery) With(name string, query schema.QueryAppender) *MergeQuery {
q.addWith(name, query, false)
return q
}
func (q *MergeQuery) WithRecursive(name string, query schema.QueryAppender) *MergeQuery {
q.addWith(name, query, true)
return q
}
//------------------------------------------------------------------------------
func (q *MergeQuery) Table(tables ...string) *MergeQuery {
for _, table := range tables {
q.addTable(schema.UnsafeIdent(table))
}
return q
}
func (q *MergeQuery) TableExpr(query string, args ...interface{}) *MergeQuery {
q.addTable(schema.SafeQuery(query, args))
return q
}
func (q *MergeQuery) ModelTableExpr(query string, args ...interface{}) *MergeQuery {
q.modelTableName = schema.SafeQuery(query, args)
return q
}
//------------------------------------------------------------------------------
// Returning adds a RETURNING clause to the query.
//
// To suppress the auto-generated RETURNING clause, use `Returning("NULL")`.
// Only for mssql output, postgres not supported returning in merge query
func (q *MergeQuery) Returning(query string, args ...interface{}) *MergeQuery {
q.addReturning(schema.SafeQuery(query, args))
return q
}
//------------------------------------------------------------------------------
func (q *MergeQuery) Using(s string, args ...interface{}) *MergeQuery {
q.using = schema.SafeQuery(s, args)
return q
}
func (q *MergeQuery) On(s string, args ...interface{}) *MergeQuery {
q.on = schema.SafeQuery(s, args)
return q
}
// WhenInsert for when insert clause.
func (q *MergeQuery) WhenInsert(expr string, fn func(q *InsertQuery) *InsertQuery) *MergeQuery {
sq := NewInsertQuery(q.db)
// apply the model as default into sub query, since appendColumnsValues required
if q.model != nil {
sq = sq.Model(q.model)
}
sq = sq.Apply(fn)
q.when = append(q.when, &whenInsert{expr: expr, query: sq})
return q
}
// WhenUpdate for when update clause.
func (q *MergeQuery) WhenUpdate(expr string, fn func(q *UpdateQuery) *UpdateQuery) *MergeQuery {
sq := NewUpdateQuery(q.db)
// apply the model as default into sub query
if q.model != nil {
sq = sq.Model(q.model)
}
sq = sq.Apply(fn)
q.when = append(q.when, &whenUpdate{expr: expr, query: sq})
return q
}
// WhenDelete for when delete clause.
func (q *MergeQuery) WhenDelete(expr string) *MergeQuery {
q.when = append(q.when, &whenDelete{expr: expr})
return q
}
// When for raw expression clause.
func (q *MergeQuery) When(expr string, args ...interface{}) *MergeQuery {
q.when = append(q.when, schema.SafeQuery(expr, args))
return q
}
//------------------------------------------------------------------------------
func (q *MergeQuery) Operation() string {
return "MERGE"
}
func (q *MergeQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, err error) {
if q.err != nil {
return nil, q.err
}
fmter = formatterWithModel(fmter, q)
b, err = q.appendWith(fmter, b)
if err != nil {
return nil, err
}
b = append(b, "MERGE "...)
if q.db.dialect.Name() == dialect.PG {
b = append(b, "INTO "...)
}
b, err = q.appendFirstTableWithAlias(fmter, b)
if err != nil {
return nil, err
}
b = append(b, " USING "...)
b, err = q.using.AppendQuery(fmter, b)
if err != nil {
return nil, err
}
b = append(b, " ON "...)
b, err = q.on.AppendQuery(fmter, b)
if err != nil {
return nil, err
}
for _, w := range q.when {
b = append(b, " WHEN "...)
b, err = w.AppendQuery(fmter, b)
if err != nil {
return nil, err
}
}
if q.hasFeature(feature.Output) && q.hasReturning() {
b = append(b, " OUTPUT "...)
b, err = q.appendOutput(fmter, b)
if err != nil {
return nil, err
}
}
// A MERGE statement must be terminated by a semi-colon (;).
b = append(b, ";"...)
return b, nil
}
//------------------------------------------------------------------------------
func (q *MergeQuery) Scan(ctx context.Context, dest ...interface{}) error {
_, err := q.scanOrExec(ctx, dest, true)
return err
}
func (q *MergeQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result, error) {
return q.scanOrExec(ctx, dest, len(dest) > 0)
}
func (q *MergeQuery) scanOrExec(
ctx context.Context, dest []interface{}, hasDest bool,
) (sql.Result, error) {
if q.err != nil {
return nil, q.err
}
// Run append model hooks before generating the query.
if err := q.beforeAppendModel(ctx, q); err != nil {
return nil, err
}
// Generate the query before checking hasReturning.
queryBytes, err := q.AppendQuery(q.db.fmter, q.db.makeQueryBytes())
if err != nil {
return nil, err
}
useScan := hasDest || (q.hasReturning() && q.hasFeature(feature.InsertReturning|feature.Output))
var model Model
if useScan {
var err error
model, err = q.getModel(dest)
if err != nil {
return nil, err
}
}
query := internal.String(queryBytes)
var res sql.Result
if useScan {
res, err = q.scan(ctx, q, query, model, true)
if err != nil {
return nil, err
}
} else {
res, err = q.exec(ctx, q, query)
if err != nil {
return nil, err
}
}
return res, nil
}
func (q *MergeQuery) String() string {
buf, err := q.AppendQuery(q.db.Formatter(), nil)
if err != nil {
panic(err)
}
return string(buf)
}
//------------------------------------------------------------------------------
type whenInsert struct {
expr string
query *InsertQuery
}
func (w *whenInsert) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, err error) {
b = append(b, w.expr...)
if w.query != nil {
b = append(b, " THEN INSERT"...)
b, err = w.query.appendColumnsValues(fmter, b, true)
if err != nil {
return nil, err
}
}
return b, nil
}
type whenUpdate struct {
expr string
query *UpdateQuery
}
func (w *whenUpdate) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, err error) {
b = append(b, w.expr...)
if w.query != nil {
b = append(b, " THEN UPDATE SET "...)
b, err = w.query.appendSet(fmter, b)
if err != nil {
return nil, err
}
}
return b, nil
}
type whenDelete struct {
expr string
}
func (w *whenDelete) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, err error) {
b = append(b, w.expr...)
b = append(b, " THEN DELETE"...)
return b, nil
}

View file

@ -41,6 +41,11 @@ func (q *RawQuery) Conn(db IConn) *RawQuery {
return q
}
func (q *RawQuery) Err(err error) *RawQuery {
q.setErr(err)
return q
}
func (q *RawQuery) Scan(ctx context.Context, dest ...interface{}) error {
if q.err != nil {
return q.err

View file

@ -61,9 +61,17 @@ func (q *SelectQuery) Model(model interface{}) *SelectQuery {
return q
}
func (q *SelectQuery) Err(err error) *SelectQuery {
q.setErr(err)
return q
}
// Apply calls the fn passing the SelectQuery as an argument.
func (q *SelectQuery) Apply(fn func(*SelectQuery) *SelectQuery) *SelectQuery {
return fn(q)
if fn != nil {
return fn(q)
}
return q
}
func (q *SelectQuery) With(name string, query schema.QueryAppender) *SelectQuery {

View file

@ -3,8 +3,10 @@ package bun
import (
"context"
"database/sql"
"fmt"
"sort"
"strconv"
"strings"
"github.com/uptrace/bun/dialect/feature"
"github.com/uptrace/bun/dialect/sqltype"
@ -17,7 +19,12 @@ type CreateTableQuery struct {
temp bool
ifNotExists bool
varchar int
// varchar changes the default length for VARCHAR columns.
// Because some dialects require that length is always specified for VARCHAR type,
// we will use the exact user-defined type if length is set explicitly, as in `bun:",type:varchar(5)"`,
// but assume the new default length when it's omitted, e.g. `bun:",type:varchar"`.
varchar int
fks []schema.QueryWithArgs
partitionBy schema.QueryWithArgs
@ -32,6 +39,7 @@ func NewCreateTableQuery(db *DB) *CreateTableQuery {
db: db,
conn: db.DB,
},
varchar: db.Dialect().DefaultVarcharLen(),
}
return q
}
@ -46,6 +54,11 @@ func (q *CreateTableQuery) Model(model interface{}) *CreateTableQuery {
return q
}
func (q *CreateTableQuery) Err(err error) *CreateTableQuery {
q.setErr(err)
return q
}
// ------------------------------------------------------------------------------
func (q *CreateTableQuery) Table(tables ...string) *CreateTableQuery {
@ -82,7 +95,12 @@ func (q *CreateTableQuery) IfNotExists() *CreateTableQuery {
return q
}
// Varchar sets default length for VARCHAR columns.
func (q *CreateTableQuery) Varchar(n int) *CreateTableQuery {
if n <= 0 {
q.setErr(fmt.Errorf("bun: illegal VARCHAR length: %d", n))
return q
}
q.varchar = n
return q
}
@ -120,7 +138,7 @@ func (q *CreateTableQuery) WithForeignKeys() *CreateTableQuery {
return q
}
//------------------------------------------------------------------------------
// ------------------------------------------------------------------------------
func (q *CreateTableQuery) Operation() string {
return "CREATE TABLE"
@ -221,19 +239,23 @@ func (q *CreateTableQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []by
}
func (q *CreateTableQuery) appendSQLType(b []byte, field *schema.Field) []byte {
if field.CreateTableSQLType != field.DiscoveredSQLType {
// Most of the time these two will match, but for the cases where DiscoveredSQLType is dialect-specific,
// e.g. pgdialect would change sqltype.SmallInt to pgTypeSmallSerial for columns that have `bun:",autoincrement"`
if !strings.EqualFold(field.CreateTableSQLType, field.DiscoveredSQLType) {
return append(b, field.CreateTableSQLType...)
}
if q.varchar > 0 &&
field.CreateTableSQLType == sqltype.VarChar {
b = append(b, "varchar("...)
b = strconv.AppendInt(b, int64(q.varchar), 10)
b = append(b, ")"...)
return b
// For all common SQL types except VARCHAR, both UserDefinedSQLType and DiscoveredSQLType specify the correct type,
// and we needn't modify it. For VARCHAR columns, we will stop to check if a valid length has been set in .Varchar(int).
if !strings.EqualFold(field.CreateTableSQLType, sqltype.VarChar) || q.varchar <= 0 {
return append(b, field.CreateTableSQLType...)
}
return append(b, field.CreateTableSQLType...)
b = append(b, sqltype.VarChar...)
b = append(b, "("...)
b = strconv.AppendInt(b, int64(q.varchar), 10)
b = append(b, ")"...)
return b
}
func (q *CreateTableQuery) appendUniqueConstraints(fmter schema.Formatter, b []byte) []byte {

View file

@ -37,6 +37,11 @@ func (q *DropTableQuery) Model(model interface{}) *DropTableQuery {
return q
}
func (q *DropTableQuery) Err(err error) *DropTableQuery {
q.setErr(err)
return q
}
//------------------------------------------------------------------------------
func (q *DropTableQuery) Table(tables ...string) *DropTableQuery {

View file

@ -38,6 +38,11 @@ func (q *TruncateTableQuery) Model(model interface{}) *TruncateTableQuery {
return q
}
func (q *TruncateTableQuery) Err(err error) *TruncateTableQuery {
q.setErr(err)
return q
}
//------------------------------------------------------------------------------
func (q *TruncateTableQuery) Table(tables ...string) *TruncateTableQuery {

View file

@ -47,9 +47,17 @@ func (q *UpdateQuery) Model(model interface{}) *UpdateQuery {
return q
}
func (q *UpdateQuery) Err(err error) *UpdateQuery {
q.setErr(err)
return q
}
// Apply calls the fn passing the SelectQuery as an argument.
func (q *UpdateQuery) Apply(fn func(*UpdateQuery) *UpdateQuery) *UpdateQuery {
return fn(q)
if fn != nil {
return fn(q)
}
return q
}
func (q *UpdateQuery) With(name string, query schema.QueryAppender) *UpdateQuery {
@ -174,13 +182,6 @@ func (q *UpdateQuery) Returning(query string, args ...interface{}) *UpdateQuery
return q
}
func (q *UpdateQuery) hasReturning() bool {
if !q.db.features.Has(feature.Returning) {
return false
}
return q.returningQuery.hasReturning()
}
//------------------------------------------------------------------------------
func (q *UpdateQuery) Operation() string {
@ -229,6 +230,14 @@ func (q *UpdateQuery) AppendQuery(fmter schema.Formatter, b []byte) (_ []byte, e
}
}
if q.hasFeature(feature.Output) && q.hasReturning() {
b = append(b, " OUTPUT "...)
b, err = q.appendOutput(fmter, b)
if err != nil {
return nil, err
}
}
b, err = q.mustAppendWhere(fmter, b, q.hasTableAlias(fmter))
if err != nil {
return nil, err
@ -426,7 +435,18 @@ func (q *UpdateQuery) updateSliceWhere(fmter schema.Formatter, model *sliceTable
//------------------------------------------------------------------------------
func (q *UpdateQuery) Scan(ctx context.Context, dest ...interface{}) error {
_, err := q.scanOrExec(ctx, dest, true)
return err
}
func (q *UpdateQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result, error) {
return q.scanOrExec(ctx, dest, len(dest) > 0)
}
func (q *UpdateQuery) scanOrExec(
ctx context.Context, dest []interface{}, hasDest bool,
) (sql.Result, error) {
if q.err != nil {
return nil, q.err
}
@ -437,25 +457,33 @@ func (q *UpdateQuery) Exec(ctx context.Context, dest ...interface{}) (sql.Result
}
}
// Run append model hooks before generating the query.
if err := q.beforeAppendModel(ctx, q); err != nil {
return nil, err
}
// Generate the query before checking hasReturning.
queryBytes, err := q.AppendQuery(q.db.fmter, q.db.makeQueryBytes())
if err != nil {
return nil, err
}
useScan := hasDest || (q.hasReturning() && q.hasFeature(feature.Returning|feature.Output))
var model Model
if useScan {
var err error
model, err = q.getModel(dest)
if err != nil {
return nil, err
}
}
query := internal.String(queryBytes)
var res sql.Result
if hasDest := len(dest) > 0; hasDest || q.hasReturning() {
model, err := q.getModel(dest)
if err != nil {
return nil, err
}
if useScan {
res, err = q.scan(ctx, q, query, model, hasDest)
if err != nil {
return nil, err
@ -498,7 +526,7 @@ func (q *UpdateQuery) afterUpdateHook(ctx context.Context) error {
// table_alias.column_alias.
func (q *UpdateQuery) FQN(column string) Ident {
if q.table == nil {
panic("UpdateQuery.SetName requires a model")
panic("UpdateQuery.FQN requires a model")
}
if q.hasTableAlias(q.db.fmter) {
return Ident(q.table.Alias + "." + column)

View file

@ -37,6 +37,11 @@ func (q *ValuesQuery) Conn(db IConn) *ValuesQuery {
return q
}
func (q *ValuesQuery) Err(err error) *ValuesQuery {
q.setErr(err)
return q
}
func (q *ValuesQuery) Column(columns ...string) *ValuesQuery {
for _, column := range columns {
q.addColumn(schema.UnsafeIdent(column))

View file

@ -30,9 +30,14 @@ type Dialect interface {
AppendBytes(b []byte, bs []byte) []byte
AppendJSON(b, jsonb []byte) []byte
AppendBool(b []byte, v bool) []byte
// DefaultVarcharLen should be returned for dialects in which specifying VARCHAR length
// is mandatory in queries that modify the schema (CREATE TABLE / ADD COLUMN, etc).
// Dialects that do not have such requirement may return 0, which should be interpreted so by the caller.
DefaultVarcharLen() int
}
//------------------------------------------------------------------------------
// ------------------------------------------------------------------------------
type BaseDialect struct{}
@ -131,7 +136,7 @@ func (BaseDialect) AppendBool(b []byte, v bool) []byte {
return dialect.AppendBool(b, v)
}
//------------------------------------------------------------------------------
// ------------------------------------------------------------------------------
type nopDialect struct {
BaseDialect
@ -168,3 +173,7 @@ func (d *nopDialect) OnTable(table *Table) {}
func (d *nopDialect) IdentQuote() byte {
return '"'
}
func (d *nopDialect) DefaultVarcharLen() int {
return 0
}

View file

@ -66,49 +66,3 @@ func sliceElemType(v reflect.Value) reflect.Type {
}
return indirectType(elemType)
}
func makeSliceNextElemFunc(v reflect.Value) func() reflect.Value {
if v.Kind() == reflect.Array {
var pos int
return func() reflect.Value {
v := v.Index(pos)
pos++
return v
}
}
sliceType := v.Type()
elemType := sliceType.Elem()
if elemType.Kind() == reflect.Ptr {
elemType = elemType.Elem()
return func() reflect.Value {
if v.Len() < v.Cap() {
v.Set(v.Slice(0, v.Len()+1))
elem := v.Index(v.Len() - 1)
if elem.IsNil() {
elem.Set(reflect.New(elemType))
}
return elem.Elem()
}
elem := reflect.New(elemType)
v.Set(reflect.Append(v, elem))
return elem.Elem()
}
}
zero := reflect.Zero(elemType)
return func() reflect.Value {
l := v.Len()
c := v.Cap()
if l < c {
v.Set(v.Slice(0, l+1))
return v.Index(l)
}
v.Set(reflect.Append(v, zero))
return v.Index(l)
}
}

View file

@ -2,5 +2,5 @@ package bun
// Version is the current release version.
func Version() string {
return "1.1.9"
return "1.1.10"
}

169
vendor/modernc.org/libc/probes.go generated vendored Normal file
View file

@ -0,0 +1,169 @@
// Copyright 2022 The Libc Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package libc // import "modernc.org/libc"
import (
"bytes"
"fmt"
"math"
"runtime/debug"
"sort"
"strings"
"sync"
"sync/atomic"
"github.com/dustin/go-humanize"
)
type PerfCounter struct {
a []int32
labels []string
enabled bool
}
func NewPerfCounter(labels []string) *PerfCounter {
return &PerfCounter{
a: make([]int32, len(labels)),
labels: labels,
enabled: true,
}
}
func (c *PerfCounter) Disable() { c.enabled = false }
func (c *PerfCounter) Enable() { c.enabled = true }
func (c *PerfCounter) Clear() {
for i := range c.a {
c.a[i] = 0
}
}
func (c *PerfCounter) Inc(n int) {
if c.enabled {
atomic.AddInt32(&c.a[n], 1)
}
}
func (c *PerfCounter) IncN(n, m int) {
if c.enabled {
atomic.AddInt32(&c.a[n], int32(m))
}
}
func (c *PerfCounter) String() string {
sv := c.enabled
defer func() { c.enabled = sv }()
c.enabled = false
var a []string
for i, v := range c.a {
if v != 0 {
a = append(a, fmt.Sprintf("%q: %s", c.labels[i], h(v)))
}
}
return fmt.Sprint(a)
}
func h(v interface{}) string {
switch x := v.(type) {
case int:
return humanize.Comma(int64(x))
case int32:
return humanize.Comma(int64(x))
case int64:
return humanize.Comma(x)
case uint32:
return humanize.Comma(int64(x))
case uint64:
if x <= math.MaxInt64 {
return humanize.Comma(int64(x))
}
return "-" + humanize.Comma(-int64(x))
}
return fmt.Sprint(v)
}
type StackCapture struct {
sync.Mutex
m map[string]int
depth int
enabled bool
}
func NewStackCapture(depth int) *StackCapture {
return &StackCapture{
m: map[string]int{},
depth: depth,
enabled: true,
}
}
func (c *StackCapture) Disable() { c.enabled = false }
func (c *StackCapture) Enable() { c.enabled = true }
func (c *StackCapture) Clear() {
c.Lock()
defer c.Unlock()
c.m = map[string]int{}
}
var (
stackCapturePrefix = []byte("\n\t")
)
func (c *StackCapture) Record() {
if !c.enabled {
return
}
b := debug.Stack()
var s strings.Builder
out:
for i := 0; len(b) > 0 && i < c.depth+2; i++ {
l := bytes.Index(b, stackCapturePrefix)
if l < 0 {
break out
}
b = b[l+len(stackCapturePrefix):]
h := bytes.IndexByte(b, '\n')
if h < 0 {
h = len(b)
}
if i > 1 {
fmt.Fprintf(&s, "\n\t%s", b[:h])
}
b = b[h:]
}
c.Lock()
defer c.Unlock()
c.m[s.String()]++
}
func (c *StackCapture) String() string {
c.Lock()
defer c.Unlock()
var b strings.Builder
var a []string
for k := range c.m {
a = append(a, k)
}
sort.Slice(a, func(i, j int) bool { return c.m[a[i]] < c.m[a[j]] })
for _, k := range a {
fmt.Fprintf(&b, "%d%s\n", c.m[k], k)
}
return b.String()
}

1
vendor/modernc.org/sqlite/AUTHORS generated vendored
View file

@ -14,6 +14,7 @@ David Walton <david@davidwalton.com>
Davsk Ltd Co <skinner.david@gmail.com>
Jaap Aarts <jaap.aarts1@gmail.com>
Jan Mercl <0xjnml@gmail.com>
Josh Bleecher Snyder <josharian@gmail.com>
Logan Snow <logansnow@protonmail.com>
Michael Hoffmann <mhoffm@posteo.de>
Ross Light <ross@zombiezen.com>

View file

@ -11,10 +11,12 @@ Artyom Pervukhin <github@artyom.dev>
Dan Peterson <danp@danp.net>
David Skinner <skinner.david@gmail.com>
David Walton <david@davidwalton.com>
Elle Mouton <elle.mouton@gmail.com>
FlyingOnion <731677080@qq.com>
Gleb Sakhnov <gleb.sakhnov@gmail.com>
Jaap Aarts <jaap.aarts1@gmail.com>
Jan Mercl <0xjnml@gmail.com>
Josh Bleecher Snyder <josharian@gmail.com>
Logan Snow <logansnow@protonmail.com>
Matthew Gabeler-Lee <fastcat@gmail.com>
Michael Hoffmann <mhoffm@posteo.de>

1
vendor/modernc.org/sqlite/Makefile generated vendored
View file

@ -206,6 +206,7 @@ edit:
editor:
gofmt -l -s -w *.go
go install -v ./...
go test -c -o /dev/null -tags=cgo,cgotest
internalError:
egrep -ho '"internal error.*"' *.go | sort | cat -n

29
vendor/modernc.org/sqlite/doc.go generated vendored
View file

@ -19,26 +19,31 @@
//
// OS Arch SQLite version
// ------------------------------
// darwin amd64 3.39.4
// darwin arm64 3.39.4
// freebsd amd64 3.39.4
// freebsd arm64 3.39.4
// linux 386 3.39.4
// linux amd64 3.39.4
// linux arm 3.39.4
// linux arm64 3.39.4
// linux riscv64 3.39.4
// windows amd64 3.39.4
// windows arm64 3.39.4
// darwin amd64 3.40.1
// darwin arm64 3.40.1
// freebsd amd64 3.40.1
// freebsd arm64 3.40.1
// linux 386 3.40.1
// linux amd64 3.40.1
// linux arm 3.40.1
// linux arm64 3.40.1
// linux ppc64le 3.40.1
// linux riscv64 3.40.1
// windows amd64 3.40.1
// windows arm64 3.40.1
//
// Builders
//
// Builder results available at
//
// https://modern-c.appspot.com/-/builder/?importpath=modernc.org%2fsqlite
// https://modern-c.appspot.com/-/builder/?importpath=modernc.org%2fsqlite
//
// Changelog
//
// 2022-11-28 v1.20.0
//
// Support linux/ppc64le.
//
// 2022-09-16 v1.19.0:
//
// Support frebsd/arm64.

View file

@ -150,11 +150,21 @@ const (
volatiles = "-volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid"
)
// 2022-11-27 Removing -DSQLITE_ENABLE_SNAPSHOT from configTest. This #define
// makes a single test fail on linux/ppc64le. That test is run only when the
// -DSQLITE_ENABLE_SNAPSHOT is present when compiling the testfixture. When
// investigating the failure it turns out this #define is actually NOT present
// when doing '$ ./configure && make tcltest' in sqlite-src-3400000, ie. in the
// original C code.
//
// libtool: link: gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/jnml/sqlite-src-3400000/src -I/home/jnml/sqlite-src-3400000/ext/rtree -I/home/jnml/sqlite-src-3400000/ext/icu -I/home/jnml/sqlite-src-3400000/ext/fts3 -I/home/jnml/sqlite-src-3400000/ext/async -I/home/jnml/sqlite-src-3400000/ext/session -I/home/jnml/sqlite-src-3400000/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DSQLITE_NO_SYNC=1 -DSQLITE_TEMP_STORE=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 -DTCLSH_INIT_PROC=sqlite3TestInit -DSQLITE_SERVER=1 -DSQLITE_PRIVATE= -DSQLITE_CORE -DBUILD_sqlite -DSQLITE_SERIES_CONSTRAINT_VERIFY=1 -DSQLITE_DEFAULT_PAGE_SIZE=1024 -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_BYTECODE_VTAB -DSQLITE_CKSUMVFS_STATIC -o testfixture ...
var (
configProduction = []string{
"-DHAVE_USLEEP",
"-DLONGDOUBLE_TYPE=double",
"-DSQLITE_CORE",
"-DSQLITE_DEFAULT_MEMSTATUS=0",
"-DSQLITE_ENABLE_COLUMN_METADATA",
"-DSQLITE_ENABLE_FTS5",
"-DSQLITE_ENABLE_GEOPOLY",
@ -199,8 +209,8 @@ var (
"-DHAVE_USLEEP",
"-DLONGDOUBLE_TYPE=double",
"-DSQLITE_CKSUMVFS_STATIC",
"-DSQLITE_CORE", // testfixture
"-DSQLITE_DEFAULT_MEMSTATUS=0", // bug reported https://sqlite.org/forum/info/d8dfd4771689be35, fixed in https://sqlite.org/src/info/3c5e63c22ffbfeb6
"-DSQLITE_CORE", // testfixture
"-DSQLITE_DEFAULT_MEMSTATUS=1",
"-DSQLITE_DEFAULT_PAGE_SIZE=1024", // testfixture, hardcoded. See file_pages in autovacuum.test.
"-DSQLITE_ENABLE_BYTECODE_VTAB", // testfixture
"-DSQLITE_ENABLE_COLUMN_METADATA",
@ -217,7 +227,6 @@ var (
"-DSQLITE_ENABLE_RBU",
"-DSQLITE_ENABLE_RTREE",
"-DSQLITE_ENABLE_SESSION",
"-DSQLITE_ENABLE_SNAPSHOT",
"-DSQLITE_ENABLE_STAT4",
"-DSQLITE_ENABLE_STMTVTAB", // testfixture
"-DSQLITE_ENABLE_UNLOCK_NOTIFY", // Adds sqlite3_unlock_notify().
@ -230,6 +239,7 @@ var (
"-DSQLITE_THREADSAFE=1",
//DONT "-DNDEBUG", // To enable GO_GENERATE=-DSQLITE_DEBUG
//DONT "-DSQLITE_DQS=0", // testfixture
//DONT "-DSQLITE_ENABLE_SNAPSHOT",
//DONT "-DSQLITE_NO_SYNC=1",
//DONT "-DSQLITE_OMIT_DECLTYPE", // testfixture
//DONT "-DSQLITE_OMIT_DEPRECATED", // mptest
@ -255,12 +265,12 @@ var (
sz int
dev bool
}{
{sqliteDir, "https://www.sqlite.org/2022/sqlite-amalgamation-3390400.zip", 2457, false},
{sqliteSrcDir, "https://www.sqlite.org/2022/sqlite-src-3390400.zip", 12814, false},
{sqliteDir, "https://www.sqlite.org/2022/sqlite-amalgamation-3400100.zip", 2457, false},
{sqliteSrcDir, "https://www.sqlite.org/2022/sqlite-src-3400100.zip", 12814, false},
}
sqliteDir = filepath.FromSlash("testdata/sqlite-amalgamation-3390400")
sqliteSrcDir = filepath.FromSlash("testdata/sqlite-src-3390400")
sqliteDir = filepath.FromSlash("testdata/sqlite-amalgamation-3400100")
sqliteSrcDir = filepath.FromSlash("testdata/sqlite-src-3400100")
)
func download() {
@ -543,6 +553,9 @@ func makeTestfixture(goos, goarch string, more []string) {
"ext/misc/unionvtab.c",
"ext/misc/wholenumber.c",
"ext/rbu/test_rbu.c",
"ext/recover/dbdata.c",
"ext/recover/sqlite3recover.c",
"ext/recover/test_recover.c",
"ext/rtree/test_rtreedoc.c",
"ext/session/test_session.c",
"ext/userauth/userauth.c",
@ -630,9 +643,24 @@ func makeTestfixture(goos, goarch string, more []string) {
args := join(
[]string{
"ccgo",
"-DBUILD_sqlite",
"-DNDEBUG",
"-DSQLITE_CKSUMVFS_STATIC",
"-DSQLITE_CORE",
"-DSQLITE_CRASH_TEST=1",
"-DSQLITE_DEFAULT_PAGE_SIZE=1024",
"-DSQLITE_ENABLE_BYTECODE_VTAB",
"-DSQLITE_ENABLE_DBPAGE_VTAB",
"-DSQLITE_ENABLE_MATH_FUNCTIONS",
"-DSQLITE_ENABLE_STMTVTAB",
"-DSQLITE_NO_SYNC=1",
"-DSQLITE_OMIT_LOAD_EXTENSION",
"-DSQLITE_PRIVATE=\"\"",
"-DSQLITE_SERIES_CONSTRAINT_VERIFY=1",
"-DSQLITE_SERVER=1",
"-DSQLITE_TEMP_STORE=1",
"-DSQLITE_TEST=1",
"-DSQLITE_THREADSAFE=1",
"-DTCLSH_INIT_PROC=sqlite3TestInit",
"-D_HAVE_SQLITE_CONFIG_H",
},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_darwin_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_darwin_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT.
package sqlite3
@ -82,6 +82,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -217,6 +218,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -404,6 +406,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -619,6 +622,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -709,7 +713,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -724,6 +727,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -823,6 +827,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -906,6 +911,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1273,6 +1279,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1341,6 +1348,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_darwin_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -DSQLITE_WITHOUT_ZONEMALLOC', DO NOT EDIT.
package sqlite3
@ -82,6 +82,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -217,6 +218,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -404,6 +406,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -619,6 +622,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -709,7 +713,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -724,6 +727,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -823,6 +827,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -906,6 +911,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1273,6 +1279,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1341,6 +1348,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_386.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_386.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_arm.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_arm.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_freebsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_386.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_386.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_arm.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_arm.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1317,6 +1324,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_ppc64le.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_ppc64le.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1318,6 +1325,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_riscv64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_riscv64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1318,6 +1325,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_s390x.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_linux_s390x.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -193,6 +194,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -380,6 +382,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -595,6 +598,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -685,7 +689,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -700,6 +703,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -799,6 +803,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -882,6 +887,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1249,6 +1255,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1318,6 +1325,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_netbsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -D__libc_cond_broadcast=pthread_cond_broadcast -D__libc_cond_destroy=pthread_cond_destroy -D__libc_cond_init=pthread_cond_init -D__libc_cond_signal=pthread_cond_signal -D__libc_cond_wait=pthread_cond_wait -D__libc_mutex_destroy=pthread_mutex_destroy -D__libc_mutex_init=pthread_mutex_init -D__libc_mutex_lock=pthread_mutex_lock -D__libc_mutex_trylock=pthread_mutex_trylock -D__libc_mutex_unlock=pthread_mutex_unlock -D__libc_mutexattr_destroy=pthread_mutexattr_destroy -D__libc_mutexattr_init=pthread_mutexattr_init -D__libc_mutexattr_settype=pthread_mutexattr_settype -D__libc_thr_yield=sched_yield', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_netbsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400000/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1 -D__libc_cond_broadcast=pthread_cond_broadcast -D__libc_cond_destroy=pthread_cond_destroy -D__libc_cond_init=pthread_cond_init -D__libc_cond_signal=pthread_cond_signal -D__libc_cond_wait=pthread_cond_wait -D__libc_mutex_destroy=pthread_mutex_destroy -D__libc_mutex_init=pthread_mutex_init -D__libc_mutex_lock=pthread_mutex_lock -D__libc_mutex_trylock=pthread_mutex_trylock -D__libc_mutex_unlock=pthread_mutex_unlock -D__libc_mutexattr_destroy=pthread_mutexattr_destroy -D__libc_mutexattr_init=pthread_mutexattr_init -D__libc_mutexattr_settype=pthread_mutexattr_settype -D__libc_thr_yield=sched_yield', DO NOT EDIT.
package sqlite3
@ -192,6 +192,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -594,6 +595,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -684,7 +686,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -699,6 +700,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -798,6 +800,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -881,6 +884,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1248,6 +1252,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1316,6 +1321,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_openbsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_openbsd_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -192,6 +193,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -379,6 +381,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -594,6 +597,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -684,7 +688,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -699,6 +702,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -798,6 +802,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -881,6 +886,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1248,6 +1254,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1316,6 +1323,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_openbsd_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_openbsd_arm64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
package sqlite3
@ -58,6 +58,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -192,6 +193,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -379,6 +381,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -594,6 +597,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -684,7 +688,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -699,6 +702,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -798,6 +802,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -881,6 +886,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1248,6 +1254,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1316,6 +1323,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_windows_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_WIN=1 -D_MSC_VER=1900', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_windows_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_WIN=1 -D_MSC_VER=1900', DO NOT EDIT.
package sqlite3
@ -62,6 +62,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -197,6 +198,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -384,6 +386,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -599,6 +602,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -689,7 +693,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -704,6 +707,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -803,6 +807,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -886,6 +891,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1254,6 +1260,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1334,6 +1341,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -1,4 +1,4 @@
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_windows_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3390400/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_WIN=1 -D_MSC_VER=1900', DO NOT EDIT.
// Code generated by 'ccgo -DSQLITE_PRIVATE= -export-defines -export-enums -export-externs X -export-fields F -export-typedefs -ignore-unsupported-alignment -pkgname sqlite3 -volatile=sqlite3_io_error_pending,sqlite3_open_file_count,sqlite3_pager_readdb_count,sqlite3_pager_writedb_count,sqlite3_pager_writej_count,sqlite3_search_count,sqlite3_sort_count,saved_cnt,randomnessPid -o lib/sqlite_windows_amd64.go -trace-translation-units testdata/sqlite-amalgamation-3400100/sqlite3.c -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_WIN=1 -D_MSC_VER=1900', DO NOT EDIT.
package sqlite3
@ -62,6 +62,7 @@ var CAPI = map[string]struct{}{
"sqlite3BtreeBeginStmt": {},
"sqlite3BtreeBeginTrans": {},
"sqlite3BtreeCheckpoint": {},
"sqlite3BtreeClearCache": {},
"sqlite3BtreeClearCursor": {},
"sqlite3BtreeClearTable": {},
"sqlite3BtreeClearTableOfCursor": {},
@ -197,6 +198,7 @@ var CAPI = map[string]struct{}{
"sqlite3DbMallocRawNN": {},
"sqlite3DbMallocSize": {},
"sqlite3DbMallocZero": {},
"sqlite3DbNNFreeNN": {},
"sqlite3DbNameToBtree": {},
"sqlite3DbRealloc": {},
"sqlite3DbReallocOrFree": {},
@ -384,6 +386,7 @@ var CAPI = map[string]struct{}{
"sqlite3IsBinary": {},
"sqlite3IsIdChar": {},
"sqlite3IsLikeFunction": {},
"sqlite3IsMemdb": {},
"sqlite3IsNaN": {},
"sqlite3IsReadOnly": {},
"sqlite3IsRowid": {},
@ -599,6 +602,7 @@ var CAPI = map[string]struct{}{
"sqlite3ReadOnlyShadowTables": {},
"sqlite3ReadSchema": {},
"sqlite3RealSameAsInt": {},
"sqlite3RealToI64": {},
"sqlite3Realloc": {},
"sqlite3RecordErrorByteOffset": {},
"sqlite3RecordErrorOffsetOfExpr": {},
@ -689,7 +693,6 @@ var CAPI = map[string]struct{}{
"sqlite3StdType": {},
"sqlite3StdTypeAffinity": {},
"sqlite3StdTypeLen": {},
"sqlite3StdTypeMap": {},
"sqlite3StmtCurrentTime": {},
"sqlite3StorageColumnToTable": {},
"sqlite3StrAccumEnlarge": {},
@ -704,6 +707,7 @@ var CAPI = map[string]struct{}{
"sqlite3SubselectError": {},
"sqlite3SystemError": {},
"sqlite3TableAffinity": {},
"sqlite3TableAffinityStr": {},
"sqlite3TableColumnAffinity": {},
"sqlite3TableColumnToIndex": {},
"sqlite3TableColumnToStorage": {},
@ -803,6 +807,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeFreeCursor": {},
"sqlite3VdbeFreeCursorNN": {},
"sqlite3VdbeGetBoundValue": {},
"sqlite3VdbeGetLastOp": {},
"sqlite3VdbeGetOp": {},
"sqlite3VdbeGoto": {},
"sqlite3VdbeHalt": {},
@ -886,6 +891,7 @@ var CAPI = map[string]struct{}{
"sqlite3VdbeSwap": {},
"sqlite3VdbeTakeOpArray": {},
"sqlite3VdbeTransferError": {},
"sqlite3VdbeTypeofColumn": {},
"sqlite3VdbeUsesBtree": {},
"sqlite3VectorErrorMsg": {},
"sqlite3VectorFieldSubexpr": {},
@ -1254,6 +1260,7 @@ var CAPI = map[string]struct{}{
"sqlite3_value_bytes16": {},
"sqlite3_value_double": {},
"sqlite3_value_dup": {},
"sqlite3_value_encoding": {},
"sqlite3_value_free": {},
"sqlite3_value_frombind": {},
"sqlite3_value_int": {},
@ -1334,6 +1341,7 @@ var CAPI = map[string]struct{}{
"sqlite3rbu_destroy_vfs": {},
"sqlite3rbu_open": {},
"sqlite3rbu_progress": {},
"sqlite3rbu_rename_handler": {},
"sqlite3rbu_savestate": {},
"sqlite3rbu_state": {},
"sqlite3rbu_step": {},

View file

@ -57,35 +57,102 @@ var (
}{mutexNotheld})),
}
mutexApp1 mutex
mutexApp2 mutex
mutexApp3 mutex
mutexLRU mutex
mutexMaster mutex
mutexMem mutex
mutexOpen mutex
mutexPMem mutex
mutexPRNG mutex
mutexVFS1 mutex
mutexVFS2 mutex
mutexVFS3 mutex
MutexCounters = libc.NewPerfCounter([]string{
"enter-fast",
"enter-recursive",
"enter-recursive-loop",
"try-fast",
"try-recursive",
})
MutexEnterCallers = libc.NewStackCapture(4)
mutexes mutexPool
mutexApp1 = mutexes.alloc(false)
mutexApp2 = mutexes.alloc(false)
mutexApp3 = mutexes.alloc(false)
mutexLRU = mutexes.alloc(false)
mutexMaster = mutexes.alloc(false)
mutexMem = mutexes.alloc(false)
mutexOpen = mutexes.alloc(false)
mutexPMem = mutexes.alloc(false)
mutexPRNG = mutexes.alloc(false)
mutexVFS1 = mutexes.alloc(false)
mutexVFS2 = mutexes.alloc(false)
mutexVFS3 = mutexes.alloc(false)
)
type mutexPool struct {
sync.Mutex
a []*[256]mutex
freeList []int
}
func mutexFromPtr(p uintptr) *mutex {
if p == 0 {
return nil
}
ix := p - 1
return &mutexes.a[ix>>8][ix&255]
}
func (m *mutexPool) alloc(recursive bool) uintptr {
m.Lock()
defer m.Unlock()
n := len(m.freeList)
if n == 0 {
outer := len(m.a) << 8
m.a = append(m.a, &[256]mutex{})
for i := 0; i < 256; i++ {
m.freeList = append(m.freeList, outer+i)
}
n = len(m.freeList)
}
ix := m.freeList[n-1]
outer := ix >> 8
inner := ix & 255
m.freeList = m.freeList[:n-1]
p := &m.a[outer][inner]
p.poolIndex = ix
p.recursive = recursive
return uintptr(ix) + 1
}
func (m *mutexPool) free(p uintptr) {
ptr := mutexFromPtr(p)
ix := ptr.poolIndex
*ptr = mutex{}
m.Lock()
defer m.Unlock()
m.freeList = append(m.freeList, ix)
}
type mutex struct {
sync.Mutex
wait sync.Mutex
poolIndex int
cnt int32
id int32
sync.Mutex
wait sync.Mutex
recursive bool
}
func (m *mutex) enter(id int32) {
// MutexEnterCallers.Record()
if !m.recursive {
// MutexCounters.Inc(0)
m.Lock()
m.id = id
return
}
// MutexCounters.Inc(1)
for {
m.Lock()
switch m.id {
@ -101,6 +168,7 @@ func (m *mutex) enter(id int32) {
return
}
// MutexCounters.Inc(2)
m.Unlock()
m.wait.Lock()
//lint:ignore SA2001 TODO report staticcheck issue
@ -110,9 +178,11 @@ func (m *mutex) enter(id int32) {
func (m *mutex) try(id int32) int32 {
if !m.recursive {
// MutexCounters.Inc(3)
return SQLITE_BUSY
}
// MutexCounters.Inc(4)
m.Lock()
switch m.id {
case 0:
@ -216,42 +286,40 @@ func mutexAlloc(tls *libc.TLS, typ int32) uintptr {
}()
switch typ {
case SQLITE_MUTEX_FAST:
return libc.Xcalloc(tls, 1, types.Size_t(unsafe.Sizeof(mutex{})))
return mutexes.alloc(false)
case SQLITE_MUTEX_RECURSIVE:
p := libc.Xcalloc(tls, 1, types.Size_t(unsafe.Sizeof(mutex{})))
(*mutex)(unsafe.Pointer(p)).recursive = true
return p
return mutexes.alloc(true)
case SQLITE_MUTEX_STATIC_MASTER:
return uintptr(unsafe.Pointer(&mutexMaster))
return mutexMaster
case SQLITE_MUTEX_STATIC_MEM:
return uintptr(unsafe.Pointer(&mutexMem))
return mutexMem
case SQLITE_MUTEX_STATIC_OPEN:
return uintptr(unsafe.Pointer(&mutexOpen))
return mutexOpen
case SQLITE_MUTEX_STATIC_PRNG:
return uintptr(unsafe.Pointer(&mutexPRNG))
return mutexPRNG
case SQLITE_MUTEX_STATIC_LRU:
return uintptr(unsafe.Pointer(&mutexLRU))
return mutexLRU
case SQLITE_MUTEX_STATIC_PMEM:
return uintptr(unsafe.Pointer(&mutexPMem))
return mutexPMem
case SQLITE_MUTEX_STATIC_APP1:
return uintptr(unsafe.Pointer(&mutexApp1))
return mutexApp1
case SQLITE_MUTEX_STATIC_APP2:
return uintptr(unsafe.Pointer(&mutexApp2))
return mutexApp2
case SQLITE_MUTEX_STATIC_APP3:
return uintptr(unsafe.Pointer(&mutexApp3))
return mutexApp3
case SQLITE_MUTEX_STATIC_VFS1:
return uintptr(unsafe.Pointer(&mutexVFS1))
return mutexVFS1
case SQLITE_MUTEX_STATIC_VFS2:
return uintptr(unsafe.Pointer(&mutexVFS2))
return mutexVFS2
case SQLITE_MUTEX_STATIC_VFS3:
return uintptr(unsafe.Pointer(&mutexVFS3))
return mutexVFS3
default:
return 0
}
}
// void (*xMutexFree)(sqlite3_mutex *);
func mutexFree(tls *libc.TLS, m uintptr) { libc.Xfree(tls, m) }
func mutexFree(tls *libc.TLS, m uintptr) { mutexes.free(m) }
// The sqlite3_mutex_enter() and sqlite3_mutex_try() routines attempt to enter
// a mutex. If another thread is already within the mutex,
@ -272,8 +340,7 @@ func mutexEnter(tls *libc.TLS, m uintptr) {
if m == 0 {
return
}
(*mutex)(unsafe.Pointer(m)).enter(tls.ID)
mutexFromPtr(m).enter(tls.ID)
}
// int (*xMutexTry)(sqlite3_mutex *);
@ -282,7 +349,7 @@ func mutexTry(tls *libc.TLS, m uintptr) int32 {
return SQLITE_OK
}
return (*mutex)(unsafe.Pointer(m)).try(tls.ID)
return mutexFromPtr(m).try(tls.ID)
}
// void (*xMutexLeave)(sqlite3_mutex *);
@ -291,7 +358,7 @@ func mutexLeave(tls *libc.TLS, m uintptr) {
return
}
(*mutex)(unsafe.Pointer(m)).leave(tls.ID)
mutexFromPtr(m).leave(tls.ID)
}
// The sqlite3_mutex_held() and sqlite3_mutex_notheld() routines are intended
@ -324,7 +391,7 @@ func mutexHeld(tls *libc.TLS, m uintptr) int32 {
return 1
}
return libc.Bool32(atomic.LoadInt32(&(*mutex)(unsafe.Pointer(m)).id) == tls.ID)
return libc.Bool32(atomic.LoadInt32(&mutexFromPtr(m).id) == tls.ID)
}
// int (*xMutexNotheld)(sqlite3_mutex *);
@ -333,5 +400,5 @@ func mutexNotheld(tls *libc.TLS, m uintptr) int32 {
return 1
}
return libc.Bool32(atomic.LoadInt32(&(*mutex)(unsafe.Pointer(m)).id) != tls.ID)
return libc.Bool32(atomic.LoadInt32(&mutexFromPtr(m).id) != tls.ID)
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

53
vendor/modernc.org/sqlite/sqlite.go generated vendored
View file

@ -657,14 +657,14 @@ type tx struct {
c *conn
}
func newTx(c *conn) (*tx, error) {
func newTx(c *conn, opts driver.TxOptions) (*tx, error) {
r := &tx{c: c}
var sql string
if c.beginMode != "" {
sql := "begin"
if !opts.ReadOnly && c.beginMode != "" {
sql = "begin " + c.beginMode
} else {
sql = "begin"
}
if err := r.exec(context.Background(), sql); err != nil {
return nil, err
}
@ -752,7 +752,7 @@ type conn struct {
}
func newConn(dsn string) (*conn, error) {
var query string
var query, vfsName string
// Parse the query parameters from the dsn and them from the dsn if not prefixed by file:
// https://github.com/mattn/go-sqlite3/blob/3392062c729d77820afc1f5cae3427f0de39e954/sqlite3.go#L1046
@ -760,6 +760,12 @@ func newConn(dsn string) (*conn, error) {
pos := strings.IndexRune(dsn, '?')
if pos >= 1 {
query = dsn[pos+1:]
var err error
vfsName, err = getVFSName(query)
if err != nil {
return nil, err
}
if !strings.HasPrefix(dsn, "file:") {
dsn = dsn[:pos]
}
@ -768,6 +774,7 @@ func newConn(dsn string) (*conn, error) {
c := &conn{tls: libc.NewTLS()}
db, err := c.openV2(
dsn,
vfsName,
sqlite3.SQLITE_OPEN_READWRITE|sqlite3.SQLITE_OPEN_CREATE|
sqlite3.SQLITE_OPEN_FULLMUTEX|
sqlite3.SQLITE_OPEN_URI,
@ -790,6 +797,23 @@ func newConn(dsn string) (*conn, error) {
return c, nil
}
func getVFSName(query string) (r string, err error) {
q, err := url.ParseQuery(query)
if err != nil {
return "", err
}
for _, v := range q["vfs"] {
if r != "" && r != v {
return "", fmt.Errorf("conflicting vfs query parameters: %v", q["vfs"])
}
r = v
}
return r, nil
}
func applyQueryParams(c *conn, query string) error {
q, err := url.ParseQuery(query)
if err != nil {
@ -1225,8 +1249,8 @@ func (c *conn) extendedResultCodes(on bool) error {
// int flags, /* Flags */
// const char *zVfs /* Name of VFS module to use */
// );
func (c *conn) openV2(name string, flags int32) (uintptr, error) {
var p, s uintptr
func (c *conn) openV2(name, vfsName string, flags int32) (uintptr, error) {
var p, s, vfs uintptr
defer func() {
if p != 0 {
@ -1235,6 +1259,9 @@ func (c *conn) openV2(name string, flags int32) (uintptr, error) {
if s != 0 {
c.free(s)
}
if vfs != 0 {
c.free(vfs)
}
}()
p, err := c.malloc(int(ptrSize))
@ -1246,7 +1273,13 @@ func (c *conn) openV2(name string, flags int32) (uintptr, error) {
return 0, err
}
if rc := sqlite3.Xsqlite3_open_v2(c.tls, s, p, flags, 0); rc != sqlite3.SQLITE_OK {
if vfsName != "" {
if vfs, err = libc.CString(vfsName); err != nil {
return 0, err
}
}
if rc := sqlite3.Xsqlite3_open_v2(c.tls, s, p, flags, vfs); rc != sqlite3.SQLITE_OK {
return 0, c.errstr(rc)
}
@ -1292,7 +1325,7 @@ func (c *conn) Begin() (driver.Tx, error) {
}
func (c *conn) begin(ctx context.Context, opts driver.TxOptions) (t driver.Tx, err error) {
return newTx(c)
return newTx(c, opts)
}
// Close invalidates and potentially stops any current prepared statements and

12
vendor/modules.txt vendored
View file

@ -316,7 +316,7 @@ github.com/leodido/go-urn
# github.com/magiconair/properties v1.8.6
## explicit; go 1.13
github.com/magiconair/properties
# github.com/mattn/go-isatty v0.0.16
# github.com/mattn/go-isatty v0.0.17
## explicit; go 1.15
github.com/mattn/go-isatty
# github.com/microcosm-cc/bluemonday v1.0.21
@ -649,7 +649,7 @@ github.com/ulule/limiter/v3/drivers/middleware/gin
github.com/ulule/limiter/v3/drivers/store/common
github.com/ulule/limiter/v3/drivers/store/memory
github.com/ulule/limiter/v3/internal/bytebuffer
# github.com/uptrace/bun v1.1.9
# github.com/uptrace/bun v1.1.10
## explicit; go 1.18
github.com/uptrace/bun
github.com/uptrace/bun/dialect
@ -661,10 +661,10 @@ github.com/uptrace/bun/internal/parser
github.com/uptrace/bun/internal/tagparser
github.com/uptrace/bun/migrate
github.com/uptrace/bun/schema
# github.com/uptrace/bun/dialect/pgdialect v1.1.9
# github.com/uptrace/bun/dialect/pgdialect v1.1.10
## explicit; go 1.18
github.com/uptrace/bun/dialect/pgdialect
# github.com/uptrace/bun/dialect/sqlitedialect v1.1.9
# github.com/uptrace/bun/dialect/sqlitedialect v1.1.10
## explicit; go 1.18
github.com/uptrace/bun/dialect/sqlitedialect
# github.com/vmihailenco/msgpack/v5 v5.3.5
@ -853,7 +853,7 @@ modernc.org/cc/v3
# modernc.org/ccgo/v3 v3.16.13
## explicit; go 1.17
modernc.org/ccgo/v3/lib
# modernc.org/libc v1.21.5
# modernc.org/libc v1.22.2
## explicit; go 1.17
modernc.org/libc
modernc.org/libc/errno
@ -890,7 +890,7 @@ modernc.org/memory
# modernc.org/opt v0.1.3
## explicit; go 1.13
modernc.org/opt
# modernc.org/sqlite v1.19.5
# modernc.org/sqlite v1.20.3
## explicit; go 1.17
modernc.org/sqlite
modernc.org/sqlite/lib