本页还没有译文
本页 342 段还没译成Español,下面显示的是英文原文。BasicIndex
还没翻译译自英文(tanstack.com)本页 342 段都还没译
Defined in: packages/db/src/indexes/basic-index.ts:44
Basic index using Map + sorted Array.
- Map for O(1) equality lookups
- Sorted Array for O(log n) range queries via binary search
- O(n) updates to maintain sort order
Simpler and smaller than BTreeIndex, good for read-heavy workloads. Use BTreeIndex for write-heavy workloads with large collections.
Extends
BaseIndex<TKey>
Type Parameters
TKey
TKey extends string | number = string | number
Constructors
Constructor
new BasicIndex<TKey>(
id,
expression,
name?,
options?): BasicIndex<TKey>;Defined in: packages/db/src/indexes/base-index.ts:140
Parameters
id
number
expression
name?
string
options?
any
Returns
BasicIndex<TKey>
Inherited from
Properties
compareFn()
protected readonly compareFn: (a, b) => number;Defined in: packages/db/src/indexes/base-index.ts:131
Orders indexed values. Every result is checked, because a custom comparator or custom collation may be supplied by the user.
Parameters
a
any
b
any
Returns
number
Inherited from
compareOptions
protected readonly compareOptions: CompareOptions;Defined in: packages/db/src/indexes/base-index.ts:126
Inherited from
expression
readonly expression: BasicExpression;Defined in: packages/db/src/indexes/base-index.ts:124
Inherited from
hasCustomComparator
protected readonly hasCustomComparator: boolean;Defined in: packages/db/src/indexes/base-index.ts:137
A user-supplied comparator's ordering may not match the WHERE evaluator's relational operators.
Inherited from
id
readonly id: number;Defined in: packages/db/src/indexes/base-index.ts:122
Inherited from
name?
readonly optional name: string;Defined in: packages/db/src/indexes/base-index.ts:123
Inherited from
supportedOperations
readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;Defined in: packages/db/src/indexes/basic-index.ts:47
Overrides
Accessors
keyCount
Get Signature
get keyCount(): number;Defined in: packages/db/src/indexes/basic-index.ts:260
Gets the number of indexed keys
Returns
number
Overrides
supportsRangeOptimization
Get Signature
get supportsRangeOptimization(): boolean;Defined in: packages/db/src/indexes/base-index.ts:206
Whether range lookups (gt/gte/lt/lte) on this index can be trusted to
return every matching key. Range traversal relies on the index ordering, so
it is unsafe when the index uses a custom comparator, whose order may not
match the WHERE evaluator's relational operators. Callers must fall back to
a full scan when this is false.
Returns
boolean
Inherited from
BaseIndex.supportsRangeOptimization
Methods
add()
add(key, item): void;Defined in: packages/db/src/indexes/basic-index.ts:68
Adds a value to the index
Parameters
key
TKey
item
any
Returns
void
Overrides
addRangeValue()
protected addRangeValue(value): void;Defined in: packages/db/src/indexes/base-index.ts:210
Parameters
value
unknown
Returns
void
Inherited from
build()
build(entries): void;Defined in: packages/db/src/indexes/basic-index.ts:187
Builds the index from a collection of entries
Parameters
entries
Iterable<[TKey, any]>
Returns
void
Overrides
canOptimizeRangeFor()
canOptimizeRangeFor(value): boolean;Defined in: packages/db/src/indexes/base-index.ts:232
Whether the live values in this index share the predicate operand's relational domain. Mixed domains can sort differently in the index and WHERE evaluator, which can make a range lookup omit matching rows.
Parameters
value
unknown
Returns
boolean
Inherited from
clear()
clear(): void;Defined in: packages/db/src/indexes/basic-index.ts:215
Clears all data from the index
Returns
void
Overrides
clearRangeValues()
protected clearRangeValues(): void;Defined in: packages/db/src/indexes/base-index.ts:228
Returns
void
Inherited from
equalityLookup()
equalityLookup(value): Set<TKey>;Defined in: packages/db/src/indexes/basic-index.ts:267
Performs an equality lookup - O(1)
Parameters
value
any
Returns
Set<TKey>
Overrides
evaluateAddedValue()
protected evaluateAddedValue(key, item): any;Defined in: packages/db/src/indexes/base-index.ts:307
The indexed value of a row being added. A throwing expression fails the write.
Parameters
key
TKey
item
any
Returns
any
Inherited from
evaluateIndexExpression()
protected evaluateIndexExpression(item): any;Defined in: packages/db/src/indexes/base-index.ts:300
Parameters
item
any
Returns
any
Inherited from
BaseIndex.evaluateIndexExpression
inArrayLookup()
inArrayLookup(values): Set<TKey>;Defined in: packages/db/src/indexes/basic-index.ts:437
Performs an IN array lookup - O(k) where k is values.length
Parameters
values
any[]
Returns
Set<TKey>
Overrides
initialize()
protected initialize(_options?): void;Defined in: packages/db/src/indexes/basic-index.ts:63
Parameters
_options?
Returns
void
Overrides
lookup()
lookup(operation, value): Set<TKey>;Defined in: packages/db/src/indexes/basic-index.ts:225
Performs a lookup operation
Parameters
operation
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
value
any
Returns
Set<TKey>
Overrides
matchesCompareOptions()
matchesCompareOptions(compareOptions): boolean;Defined in: packages/db/src/indexes/base-index.ts:254
Checks if the compare options match the index's compare options. The direction is ignored because the index can be reversed if the direction is different.
Parameters
compareOptions
CompareOptions
Returns
boolean
Inherited from
BaseIndex.matchesCompareOptions
matchesDirection()
matchesDirection(direction): boolean;Defined in: packages/db/src/indexes/base-index.ts:294
Checks if the index matches the provided direction.
Parameters
direction
Returns
boolean
Inherited from
matchesField()
matchesField(fieldPath): boolean;Defined in: packages/db/src/indexes/base-index.ts:242
Parameters
fieldPath
string[]
Returns
boolean
Inherited from
rangeQuery()
rangeQuery(options): Set<TKey>;Defined in: packages/db/src/indexes/basic-index.ts:275
Performs a range query using binary search - O(log n + m)
Parameters
options
RangeQueryOptions = {}
Returns
Set<TKey>
Overrides
rangeQueryReversed()
rangeQueryReversed(options): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:188
Parameters
options
Returns
Set<TKey>
Inherited from
remove()
remove(key, item): void;Defined in: packages/db/src/indexes/basic-index.ts:99
Removes a value from the index
Parameters
key
TKey
item
any
Returns
void
Overrides
removeRangeValue()
protected removeRangeValue(value): void;Defined in: packages/db/src/indexes/base-index.ts:219
Parameters
value
unknown
Returns
void
Inherited from
supports()
supports(operation): boolean;Defined in: packages/db/src/indexes/base-index.ts:202
Parameters
operation
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
Returns
boolean
Inherited from
take()
take(
n,
from,
filterFn?): TKey[];Defined in: packages/db/src/indexes/basic-index.ts:339
Returns the next n items in sorted order
Parameters
n
number
from
any
filterFn?
(key) => boolean
Returns
TKey[]
Overrides
takeFromStart()
takeFromStart(n, filterFn?): TKey[];Defined in: packages/db/src/indexes/basic-index.ts:386
Returns the first n items in sorted order (from the start)
Parameters
n
number
filterFn?
(key) => boolean
Returns
TKey[]
Overrides
takeReversed()
takeReversed(
n,
from,
filterFn?): TKey[];Defined in: packages/db/src/indexes/basic-index.ts:360
Returns the next n items in reverse sorted order
Parameters
n
number
from
any
filterFn?
(key) => boolean
Returns
TKey[]
Overrides
takeReversedFromEnd()
takeReversedFromEnd(n, filterFn?): TKey[];Defined in: packages/db/src/indexes/basic-index.ts:393
Returns the first n items in reverse sorted order (from the end)
Parameters
n
number
filterFn?
(key) => boolean
Returns
TKey[]
Overrides
update()
update(
key,
oldItem,
newItem): void;Defined in: packages/db/src/indexes/basic-index.ts:153
Updates a value in the index
Parameters
key
TKey
oldItem
any
newItem
any
Returns
void