mirror of
https://github.com/ncruces/go-sqlite3.git
synced 2026-01-12 05:59:14 +00:00
69 lines
1.1 KiB
Go
69 lines
1.1 KiB
Go
package sqlite3
|
|
|
|
type Module interface {
|
|
Connect(db *Conn, arg ...string) (Vtab, error)
|
|
}
|
|
|
|
type ModuleCreator interface {
|
|
Module
|
|
Create(db *Conn, arg ...string) (Vtab, error)
|
|
}
|
|
|
|
type ModuleShadowNamer interface {
|
|
Module
|
|
ShadowName(suffix string) bool
|
|
}
|
|
|
|
type Vtab interface {
|
|
BestIndex(*IndexInfo) error
|
|
Disconnect() error
|
|
Destroy() error
|
|
Open() (VtabCursor, error)
|
|
}
|
|
|
|
type VtabUpdater interface {
|
|
Vtab
|
|
Update(arg ...Value) (rowid int64, err error)
|
|
}
|
|
|
|
type VtabRenamer interface {
|
|
Vtab
|
|
Rename(new string) error
|
|
}
|
|
|
|
type VtabOverloader interface {
|
|
Vtab
|
|
FindFunction(arg int, name string) (func(ctx Context, arg ...Value), error)
|
|
}
|
|
|
|
type VtabChecker interface {
|
|
Vtab
|
|
Integrity(schema, table string, flags int) error
|
|
}
|
|
|
|
type VtabTx interface {
|
|
Vtab
|
|
Begin() error
|
|
Sync() error
|
|
Commit() error
|
|
Rollback() error
|
|
}
|
|
|
|
type VtabSavepointer interface {
|
|
VtabTx
|
|
Savepoint(n int) error
|
|
Release(n int) error
|
|
RollbackTo(n int) error
|
|
}
|
|
|
|
type VtabCursor interface {
|
|
Close() error
|
|
Filter(idxNum int, idxStr string, arg ...Value)
|
|
Next() error
|
|
Eof() bool
|
|
Column(ctx *Context, n int) error
|
|
Rowid() (int64, error)
|
|
}
|
|
|
|
type IndexInfo struct{}
|