Documentation
¶
Index ¶
- Constants
- type AscendIndexLookup
- func (*AscendIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
- func (l *AscendIndexLookup) EvalExpression() sql.Expression
- func (l *AscendIndexLookup) ID() string
- func (l *AscendIndexLookup) Indexes() []string
- func (l *AscendIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
- func (l *AscendIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
- func (l *AscendIndexLookup) String() string
- func (l *AscendIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
- func (l *AscendIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
- type Database
- func (d *Database) AddTable(name string, t sql.Table)
- func (d *Database) CreateTable(ctx *sql.Context, name string, schema sql.Schema) error
- func (d *Database) DropTable(ctx *sql.Context, name string) error
- func (d *Database) GetTableInsensitive(ctx *sql.Context, tblName string) (sql.Table, bool, error)
- func (d *Database) GetTableNames(ctx *sql.Context) ([]string, error)
- func (d *Database) Name() string
- func (d *Database) RenameTable(ctx *sql.Context, oldName, newName string) error
- func (d *Database) Tables() map[string]sql.Table
- type DescendIndexLookup
- func (*DescendIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
- func (l *DescendIndexLookup) EvalExpression() sql.Expression
- func (l *DescendIndexLookup) ID() string
- func (l *DescendIndexLookup) Indexes() []string
- func (l *DescendIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
- func (l *DescendIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
- func (l *DescendIndexLookup) String() string
- func (l *DescendIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
- func (l *DescendIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
- type ExpressionsIndex
- type HistoryDatabase
- func (db *HistoryDatabase) AddTableAsOf(name string, t sql.Table, asOf interface{})
- func (db *HistoryDatabase) GetTableInsensitiveAsOf(ctx *sql.Context, tblName string, time interface{}) (sql.Table, bool, error)
- func (db *HistoryDatabase) GetTableNamesAsOf(ctx *sql.Context, time interface{}) ([]string, error)
- type MergeableIndex
- func (i *MergeableIndex) AscendGreaterOrEqual(keys ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) AscendLessThan(keys ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) AscendRange(greaterOrEqual, lessThan []interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) ColumnExpressions() []sql.Expression
- func (i *MergeableIndex) Database() string
- func (i *MergeableIndex) DescendGreater(keys ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) DescendLessOrEqual(keys ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) DescendRange(lessOrEqual, greaterThan []interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) Driver() string
- func (i *MergeableIndex) Expressions() []string
- func (i *MergeableIndex) Get(key ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) Has(sql.Partition, ...interface{}) (bool, error)
- func (i *MergeableIndex) ID() string
- func (i *MergeableIndex) MemTable() *Table
- func (i *MergeableIndex) Not(keys ...interface{}) (sql.IndexLookup, error)
- func (i *MergeableIndex) Table() string
- type MergeableIndexLookup
- func (i *MergeableIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
- func (i *MergeableIndexLookup) EvalExpression() sql.Expression
- func (i *MergeableIndexLookup) ID() string
- func (i *MergeableIndexLookup) Indexes() []string
- func (i *MergeableIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
- func (i *MergeableIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
- func (i *MergeableIndexLookup) String() string
- func (i *MergeableIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
- func (i *MergeableIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
- type MergeableLookup
- type MergedIndexLookup
- func (m *MergedIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
- func (m *MergedIndexLookup) EvalExpression() sql.Expression
- func (m *MergedIndexLookup) ID() string
- func (m *MergedIndexLookup) Indexes() []string
- func (m *MergedIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
- func (m *MergedIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
- func (m *MergedIndexLookup) String() string
- func (m *MergedIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
- func (m *MergedIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
- type NegateIndexLookup
- func (*NegateIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
- func (l *NegateIndexLookup) EvalExpression() sql.Expression
- func (l *NegateIndexLookup) ID() string
- func (l *NegateIndexLookup) Indexes() []string
- func (l *NegateIndexLookup) Intersection(indexes ...sql.IndexLookup) sql.IndexLookup
- func (*NegateIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
- func (l *NegateIndexLookup) String() string
- func (l *NegateIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
- func (l *NegateIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
- type Table
- func (t *Table) AddColumn(ctx *sql.Context, column *sql.Column, order *sql.ColumnOrder) error
- func (t *Table) CreateIndex(ctx *sql.Context, indexName string, using sql.IndexUsing, ...) error
- func (t *Table) Deleter(*sql.Context) sql.RowDeleter
- func (t *Table) DropColumn(ctx *sql.Context, columnName string) error
- func (t *Table) DropIndex(ctx *sql.Context, indexName string) error
- func (t *Table) EnablePrimaryKeyIndexes()
- func (t *Table) Filters() []sql.Expression
- func (t *Table) GetIndexes(ctx *sql.Context) ([]sql.Index, error)
- func (t *Table) HandledFilters(filters []sql.Expression) []sql.Expression
- func (t *Table) IndexKeyValues(ctx *sql.Context, colNames []string) (sql.PartitionIndexKeyValueIter, error)
- func (t *Table) Insert(ctx *sql.Context, row sql.Row) error
- func (t *Table) Inserter(*sql.Context) sql.RowInserter
- func (t *Table) ModifyColumn(ctx *sql.Context, columnName string, column *sql.Column, ...) error
- func (t *Table) Name() string
- func (t *Table) PartitionCount(ctx *sql.Context) (int64, error)
- func (t *Table) PartitionRows(ctx *sql.Context, partition sql.Partition) (sql.RowIter, error)
- func (t *Table) Partitions(ctx *sql.Context) (sql.PartitionIter, error)
- func (t *Table) Projection() []string
- func (t *Table) RenameIndex(ctx *sql.Context, fromIndexName string, toIndexName string) error
- func (t *Table) Replacer(*sql.Context) sql.RowReplacer
- func (t *Table) Schema() sql.Schema
- func (t *Table) String() string
- func (t *Table) Updater(*sql.Context) sql.RowUpdater
- func (t *Table) WithFilters(filters []sql.Expression) sql.Table
- func (t *Table) WithIndexLookup(lookup sql.IndexLookup) sql.Table
- func (t *Table) WithProjection(colNames []string) sql.Table
- type TestIndexDriver
- func (d *TestIndexDriver) Create(db, table, id string, expressions []sql.Expression, config map[string]string) (sql.DriverIndex, error)
- func (d *TestIndexDriver) Delete(sql.DriverIndex, sql.PartitionIter) error
- func (d *TestIndexDriver) ID() string
- func (d *TestIndexDriver) LoadAll(ctx *sql.Context, db, table string) ([]sql.DriverIndex, error)
- func (d *TestIndexDriver) Save(*sql.Context, sql.DriverIndex, sql.PartitionIndexKeyValueIter) error
- type UnmergeableIndex
- func (u *UnmergeableIndex) Database() string
- func (u *UnmergeableIndex) Driver() string
- func (u *UnmergeableIndex) Expressions() []string
- func (u *UnmergeableIndex) Get(key ...interface{}) (sql.IndexLookup, error)
- func (u *UnmergeableIndex) Has(partition sql.Partition, key ...interface{}) (bool, error)
- func (u *UnmergeableIndex) ID() string
- func (u *UnmergeableIndex) Table() string
- type UnmergeableIndexLookup
Constants ¶
const IndexDriverId = "MemoryIndexDriver"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AscendIndexLookup ¶
type AscendIndexLookup struct { Gte []interface{} Lt []interface{} Index ExpressionsIndex // contains filtered or unexported fields }
func (*AscendIndexLookup) Difference ¶
func (*AscendIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
func (*AscendIndexLookup) EvalExpression ¶
func (l *AscendIndexLookup) EvalExpression() sql.Expression
func (*AscendIndexLookup) ID ¶
func (l *AscendIndexLookup) ID() string
func (*AscendIndexLookup) Indexes ¶
func (l *AscendIndexLookup) Indexes() []string
func (*AscendIndexLookup) Intersection ¶
func (l *AscendIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
func (*AscendIndexLookup) IsMergeable ¶
func (l *AscendIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
func (*AscendIndexLookup) String ¶
func (l *AscendIndexLookup) String() string
func (*AscendIndexLookup) Union ¶
func (l *AscendIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
func (*AscendIndexLookup) Values ¶
func (l *AscendIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
type Database ¶
type Database struct {
// contains filtered or unexported fields
}
Database is an in-memory database.
func NewDatabase ¶
NewDatabase creates a new database with the given name.
func (*Database) CreateTable ¶
CreateTable creates a table with the given name and schema
func (*Database) GetTableInsensitive ¶
func (*Database) GetTableNames ¶
func (*Database) RenameTable ¶
type DescendIndexLookup ¶
type DescendIndexLookup struct { Gt []interface{} Lte []interface{} Index ExpressionsIndex // contains filtered or unexported fields }
func (*DescendIndexLookup) Difference ¶
func (*DescendIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
func (*DescendIndexLookup) EvalExpression ¶
func (l *DescendIndexLookup) EvalExpression() sql.Expression
func (*DescendIndexLookup) ID ¶
func (l *DescendIndexLookup) ID() string
func (*DescendIndexLookup) Indexes ¶
func (l *DescendIndexLookup) Indexes() []string
func (*DescendIndexLookup) Intersection ¶
func (l *DescendIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
func (*DescendIndexLookup) IsMergeable ¶
func (l *DescendIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
func (*DescendIndexLookup) String ¶
func (l *DescendIndexLookup) String() string
func (*DescendIndexLookup) Union ¶
func (l *DescendIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
func (*DescendIndexLookup) Values ¶
func (l *DescendIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
type ExpressionsIndex ¶
type ExpressionsIndex interface { MemTable() *Table ColumnExpressions() []sql.Expression }
ExpressionsIndex is an index made out of one or more expressions (usually field expressions), linked to a Table.
type HistoryDatabase ¶
type HistoryDatabase struct { Database Revisions map[string]map[interface{}]sql.Table // contains filtered or unexported fields }
HistoryDatabase is a test-only VersionedDatabase implementation. It only supports exact lookups, not AS OF queries between two revisions. It's constructed just like its non-versioned sibling, but it can receive updates to particular tables via the AddTableAsOf method. Consecutive calls to AddTableAsOf with the same table must install new versions of the named table each time, with ascending version identifiers, for this to work.
func NewHistoryDatabase ¶
func NewHistoryDatabase(name string) *HistoryDatabase
func (*HistoryDatabase) AddTableAsOf ¶
func (db *HistoryDatabase) AddTableAsOf(name string, t sql.Table, asOf interface{})
Adds a table with an asOf revision key. The table given becomes the current version for the name given.
func (*HistoryDatabase) GetTableInsensitiveAsOf ¶
func (*HistoryDatabase) GetTableNamesAsOf ¶
func (db *HistoryDatabase) GetTableNamesAsOf(ctx *sql.Context, time interface{}) ([]string, error)
type MergeableIndex ¶
type MergeableIndex struct { DB string // required for engine tests with driver DriverName string // required for engine tests with driver Tbl *Table // required for engine tests with driver TableName string Exprs []sql.Expression }
func (*MergeableIndex) AscendGreaterOrEqual ¶
func (i *MergeableIndex) AscendGreaterOrEqual(keys ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) AscendLessThan ¶
func (i *MergeableIndex) AscendLessThan(keys ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) AscendRange ¶
func (i *MergeableIndex) AscendRange(greaterOrEqual, lessThan []interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) ColumnExpressions ¶
func (i *MergeableIndex) ColumnExpressions() []sql.Expression
func (*MergeableIndex) Database ¶
func (i *MergeableIndex) Database() string
func (*MergeableIndex) DescendGreater ¶
func (i *MergeableIndex) DescendGreater(keys ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) DescendLessOrEqual ¶
func (i *MergeableIndex) DescendLessOrEqual(keys ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) DescendRange ¶
func (i *MergeableIndex) DescendRange(lessOrEqual, greaterThan []interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) Driver ¶
func (i *MergeableIndex) Driver() string
func (*MergeableIndex) Expressions ¶
func (i *MergeableIndex) Expressions() []string
func (*MergeableIndex) Get ¶
func (i *MergeableIndex) Get(key ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) Has ¶
func (i *MergeableIndex) Has(sql.Partition, ...interface{}) (bool, error)
func (*MergeableIndex) ID ¶
func (i *MergeableIndex) ID() string
func (*MergeableIndex) MemTable ¶
func (i *MergeableIndex) MemTable() *Table
func (*MergeableIndex) Not ¶
func (i *MergeableIndex) Not(keys ...interface{}) (sql.IndexLookup, error)
func (*MergeableIndex) Table ¶
func (i *MergeableIndex) Table() string
type MergeableIndexLookup ¶
type MergeableIndexLookup struct { Key []interface{} Index ExpressionsIndex }
MergeableIndexLookup is a lookup linked to an ExpressionsIndex. It can be merged with any other MergeableIndexLookup. All lookups in this package are Merge
func (*MergeableIndexLookup) Difference ¶
func (i *MergeableIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
func (*MergeableIndexLookup) EvalExpression ¶
func (i *MergeableIndexLookup) EvalExpression() sql.Expression
func (*MergeableIndexLookup) ID ¶
func (i *MergeableIndexLookup) ID() string
func (*MergeableIndexLookup) Indexes ¶
func (i *MergeableIndexLookup) Indexes() []string
func (*MergeableIndexLookup) Intersection ¶
func (i *MergeableIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
func (*MergeableIndexLookup) IsMergeable ¶
func (i *MergeableIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
func (*MergeableIndexLookup) String ¶
func (i *MergeableIndexLookup) String() string
func (*MergeableIndexLookup) Union ¶
func (i *MergeableIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
func (*MergeableIndexLookup) Values ¶
func (i *MergeableIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
type MergeableLookup ¶
type MergeableLookup interface {
ID() string
}
All lookups in this package, except for UnmergeableLookup, are MergeableLookups. The IDs are mostly for testing / verification purposes.
type MergedIndexLookup ¶
type MergedIndexLookup struct { Unions []sql.IndexLookup Intersections []sql.IndexLookup Index ExpressionsIndex }
MergedIndexLookup is an index lookup that has been merged with another. Exactly one of the Unions or Intersections fields should be set, and correspond to a logical AND or OR operation, respectively.
func (*MergedIndexLookup) Difference ¶
func (m *MergedIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
func (*MergedIndexLookup) EvalExpression ¶
func (m *MergedIndexLookup) EvalExpression() sql.Expression
func (*MergedIndexLookup) ID ¶
func (m *MergedIndexLookup) ID() string
func (*MergedIndexLookup) Indexes ¶
func (m *MergedIndexLookup) Indexes() []string
func (*MergedIndexLookup) Intersection ¶
func (m *MergedIndexLookup) Intersection(lookups ...sql.IndexLookup) sql.IndexLookup
func (*MergedIndexLookup) IsMergeable ¶
func (m *MergedIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
func (*MergedIndexLookup) String ¶
func (m *MergedIndexLookup) String() string
func (*MergedIndexLookup) Union ¶
func (m *MergedIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
func (*MergedIndexLookup) Values ¶
func (m *MergedIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
type NegateIndexLookup ¶
type NegateIndexLookup struct { Lookup MergeableLookup Index ExpressionsIndex }
func (*NegateIndexLookup) Difference ¶
func (*NegateIndexLookup) Difference(...sql.IndexLookup) sql.IndexLookup
func (*NegateIndexLookup) EvalExpression ¶
func (l *NegateIndexLookup) EvalExpression() sql.Expression
func (*NegateIndexLookup) ID ¶
func (l *NegateIndexLookup) ID() string
func (*NegateIndexLookup) Indexes ¶
func (l *NegateIndexLookup) Indexes() []string
func (*NegateIndexLookup) Intersection ¶
func (l *NegateIndexLookup) Intersection(indexes ...sql.IndexLookup) sql.IndexLookup
func (*NegateIndexLookup) IsMergeable ¶
func (*NegateIndexLookup) IsMergeable(lookup sql.IndexLookup) bool
func (*NegateIndexLookup) String ¶
func (l *NegateIndexLookup) String() string
func (*NegateIndexLookup) Union ¶
func (l *NegateIndexLookup) Union(lookups ...sql.IndexLookup) sql.IndexLookup
func (*NegateIndexLookup) Values ¶
func (l *NegateIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)
type Table ¶
type Table struct {
// contains filtered or unexported fields
}
Table represents an in-memory database table.
func NewPartitionedTable ¶
NewPartitionedTable creates a new Table with the given name, schema and number of partitions.
func (*Table) CreateIndex ¶
func (t *Table) CreateIndex(ctx *sql.Context, indexName string, using sql.IndexUsing, constraint sql.IndexConstraint, columns []sql.IndexColumn, comment string) error
CreateIndex implements sql.IndexAlterableTable
func (*Table) EnablePrimaryKeyIndexes ¶
func (t *Table) EnablePrimaryKeyIndexes()
EnablePrimaryKeyIndexes enables the use of primary key indexes on this table.
func (*Table) Filters ¶
func (t *Table) Filters() []sql.Expression
Filters implements the sql.FilteredTable interface.
func (*Table) GetIndexes ¶
GetIndexes implements sql.IndexedTable
func (*Table) HandledFilters ¶
func (t *Table) HandledFilters(filters []sql.Expression) []sql.Expression
HandledFilters implements the sql.FilteredTable interface.
func (*Table) IndexKeyValues ¶
func (t *Table) IndexKeyValues( ctx *sql.Context, colNames []string, ) (sql.PartitionIndexKeyValueIter, error)
IndexKeyValues implements the sql.IndexableTable interface.
func (*Table) ModifyColumn ¶
func (*Table) PartitionCount ¶
PartitionCount implements the sql.PartitionCounter interface.
func (*Table) PartitionRows ¶
PartitionRows implements the sql.PartitionRows interface.
func (*Table) Partitions ¶
Partitions implements the sql.Table interface.
func (*Table) Projection ¶
Projection implements the sql.ProjectedTable interface.
func (*Table) RenameIndex ¶
RenameIndex implements sql.IndexAlterableTable
func (*Table) WithFilters ¶
func (t *Table) WithFilters(filters []sql.Expression) sql.Table
WithFilters implements the sql.FilteredTable interface.
func (*Table) WithIndexLookup ¶
func (t *Table) WithIndexLookup(lookup sql.IndexLookup) sql.Table
WithIndexLookup implements the sql.IndexAddressableTable interface.
type TestIndexDriver ¶
type TestIndexDriver struct {
// contains filtered or unexported fields
}
TestIndexDriver is a non-performant index driver meant to aid in verification of engine correctness. It can not create or delete indexes, but will use the index types defined in this package to alter how queries are executed, retrieving values from the indexes rather than from the tables directly.
func NewIndexDriver ¶
func NewIndexDriver(db string, indexes map[string][]sql.DriverIndex) *TestIndexDriver
NewIndexDriver returns a new index driver for database and the indexes given, keyed by the table name.
func (*TestIndexDriver) Create ¶
func (d *TestIndexDriver) Create(db, table, id string, expressions []sql.Expression, config map[string]string) (sql.DriverIndex, error)
func (*TestIndexDriver) Delete ¶
func (d *TestIndexDriver) Delete(sql.DriverIndex, sql.PartitionIter) error
func (*TestIndexDriver) ID ¶
func (d *TestIndexDriver) ID() string
func (*TestIndexDriver) LoadAll ¶
func (d *TestIndexDriver) LoadAll(ctx *sql.Context, db, table string) ([]sql.DriverIndex, error)
func (*TestIndexDriver) Save ¶
func (d *TestIndexDriver) Save(*sql.Context, sql.DriverIndex, sql.PartitionIndexKeyValueIter) error
type UnmergeableIndex ¶
type UnmergeableIndex struct { DB string // required for engine tests with driver DriverName string // required for engine tests with driver Tbl *Table // required for engine tests with driver TableName string Exprs []sql.Expression }
A very dumb index that iterates over the rows of a table, evaluates its matching expressions against each row, and stores those values to be later retrieved. Only here to test the functionality of indexed queries. This kind of index cannot be merged with any other index.
func (*UnmergeableIndex) Database ¶
func (u *UnmergeableIndex) Database() string
func (*UnmergeableIndex) Driver ¶
func (u *UnmergeableIndex) Driver() string
func (*UnmergeableIndex) Expressions ¶
func (u *UnmergeableIndex) Expressions() []string
func (*UnmergeableIndex) Get ¶
func (u *UnmergeableIndex) Get(key ...interface{}) (sql.IndexLookup, error)
func (*UnmergeableIndex) Has ¶
func (u *UnmergeableIndex) Has(partition sql.Partition, key ...interface{}) (bool, error)
func (*UnmergeableIndex) ID ¶
func (u *UnmergeableIndex) ID() string
func (*UnmergeableIndex) Table ¶
func (u *UnmergeableIndex) Table() string
type UnmergeableIndexLookup ¶
type UnmergeableIndexLookup struct {
// contains filtered or unexported fields
}
UnmergeableIndexLookup is the only IndexLookup in this package that doesn't implement Mergeable, and therefore can't be merged with other lookups.
func (*UnmergeableIndexLookup) Indexes ¶
func (u *UnmergeableIndexLookup) Indexes() []string
func (*UnmergeableIndexLookup) String ¶
func (u *UnmergeableIndexLookup) String() string
func (*UnmergeableIndexLookup) Values ¶
func (u *UnmergeableIndexLookup) Values(p sql.Partition) (sql.IndexValueIter, error)