BaseIndex

Abstract Class: BaseIndex<TKey>

Defined in: packages/db/src/indexes/base-index.ts:81

Base abstract class that all index types extend

Extended by

Type Parameters

TKey

TKey extends string | number | undefined = string | number | undefined

Implements

Constructors

Constructor

ts
new BaseIndex<TKey>(
   id, 
   expression, 
   name?, 
options?): BaseIndex<TKey>;
new BaseIndex<TKey>(
   id, 
   expression, 
   name?, 
options?): BaseIndex<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:94

Parameters

id

number

expression

BasicExpression

name?

string

options?

any

Returns

BaseIndex<TKey>

Properties

compareOptions

ts
protected compareOptions: CompareOptions;
protected compareOptions: CompareOptions;

Defined in: packages/db/src/indexes/base-index.ts:92


expression

ts
readonly expression: BasicExpression;
readonly expression: BasicExpression;

Defined in: packages/db/src/indexes/base-index.ts:86


id

ts
readonly id: number;
readonly id: number;

Defined in: packages/db/src/indexes/base-index.ts:84


lastUpdated

ts
protected lastUpdated: Date;
protected lastUpdated: Date;

Defined in: packages/db/src/indexes/base-index.ts:91


lookupCount

ts
protected lookupCount: number = 0;
protected lookupCount: number = 0;

Defined in: packages/db/src/indexes/base-index.ts:89


name?

ts
readonly optional name: string;
readonly optional name: string;

Defined in: packages/db/src/indexes/base-index.ts:85


supportedOperations

ts
abstract readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;
abstract readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;

Defined in: packages/db/src/indexes/base-index.ts:87


totalLookupTime

ts
protected totalLookupTime: number = 0;
protected totalLookupTime: number = 0;

Defined in: packages/db/src/indexes/base-index.ts:90

Accessors

indexedKeysSet

Get Signature

ts
get abstract indexedKeysSet(): Set<TKey>;
get abstract indexedKeysSet(): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:139

Returns

Set<TKey>

Implementation of

IndexInterface.indexedKeysSet


keyCount

Get Signature

ts
get abstract keyCount(): number;
get abstract keyCount(): number;

Defined in: packages/db/src/indexes/base-index.ts:132

Returns

number

Implementation of

IndexInterface.keyCount


orderedEntriesArray

Get Signature

ts
get abstract orderedEntriesArray(): [any, Set<TKey>][];
get abstract orderedEntriesArray(): [any, Set<TKey>][];

Defined in: packages/db/src/indexes/base-index.ts:137

Returns

[any, Set<TKey>][]

Implementation of

IndexInterface.orderedEntriesArray


orderedEntriesArrayReversed

Get Signature

ts
get abstract orderedEntriesArrayReversed(): [any, Set<TKey>][];
get abstract orderedEntriesArrayReversed(): [any, Set<TKey>][];

Defined in: packages/db/src/indexes/base-index.ts:138

Returns

[any, Set<TKey>][]

Implementation of

IndexInterface.orderedEntriesArrayReversed


valueMapData

Get Signature

ts
get abstract valueMapData(): Map<any, Set<TKey>>;
get abstract valueMapData(): Map<any, Set<TKey>>;

Defined in: packages/db/src/indexes/base-index.ts:140

Returns

Map<any, Set<TKey>>

Implementation of

IndexInterface.valueMapData

Methods

add()

ts
abstract add(key, item): void;
abstract add(key, item): void;

Defined in: packages/db/src/indexes/base-index.ts:108

Parameters

key

TKey

item

any

Returns

void

Implementation of

IndexInterface.add


build()

ts
abstract build(entries): void;
abstract build(entries): void;

Defined in: packages/db/src/indexes/base-index.ts:111

Parameters

entries

Iterable<[TKey, any]>

Returns

void

Implementation of

IndexInterface.build


clear()

ts
abstract clear(): void;
abstract clear(): void;

Defined in: packages/db/src/indexes/base-index.ts:112

Returns

void

Implementation of

IndexInterface.clear


equalityLookup()

ts
abstract equalityLookup(value): Set<TKey>;
abstract equalityLookup(value): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:133

Parameters

value

any

Returns

Set<TKey>

Implementation of

IndexInterface.equalityLookup


evaluateIndexExpression()

ts
protected evaluateIndexExpression(item): any;
protected evaluateIndexExpression(item): any;

Defined in: packages/db/src/indexes/base-index.ts:195

Parameters

item

any

Returns

any


getStats()

ts
getStats(): IndexStats;
getStats(): IndexStats;

Defined in: packages/db/src/indexes/base-index.ts:182

Returns

IndexStats

Implementation of

IndexInterface.getStats


inArrayLookup()

ts
abstract inArrayLookup(values): Set<TKey>;
abstract inArrayLookup(values): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:134

Parameters

values

any[]

Returns

Set<TKey>

Implementation of

IndexInterface.inArrayLookup


initialize()

ts
abstract protected initialize(options?): void;
abstract protected initialize(options?): void;

Defined in: packages/db/src/indexes/base-index.ts:193

Parameters

options?

any

Returns

void


lookup()

ts
abstract lookup(operation, value): Set<TKey>;
abstract lookup(operation, value): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:113

Parameters

operation

"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"

value

any

Returns

Set<TKey>

Implementation of

IndexInterface.lookup


matchesCompareOptions()

ts
matchesCompareOptions(compareOptions): boolean;
matchesCompareOptions(compareOptions): boolean;

Defined in: packages/db/src/indexes/base-index.ts:159

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

Implementation of

IndexInterface.matchesCompareOptions


matchesDirection()

ts
matchesDirection(direction): boolean;
matchesDirection(direction): boolean;

Defined in: packages/db/src/indexes/base-index.ts:178

Checks if the index matches the provided direction.

Parameters

direction

OrderByDirection

Returns

boolean

Implementation of

IndexInterface.matchesDirection


matchesField()

ts
matchesField(fieldPath): boolean;
matchesField(fieldPath): boolean;

Defined in: packages/db/src/indexes/base-index.ts:147

Parameters

fieldPath

string[]

Returns

boolean

Implementation of

IndexInterface.matchesField


rangeQuery()

ts
abstract rangeQuery(options): Set<TKey>;
abstract rangeQuery(options): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:135

Parameters

options

RangeQueryOptions

Returns

Set<TKey>

Implementation of

IndexInterface.rangeQuery


rangeQueryReversed()

ts
abstract rangeQueryReversed(options): Set<TKey>;
abstract rangeQueryReversed(options): Set<TKey>;

Defined in: packages/db/src/indexes/base-index.ts:136

Parameters

options

RangeQueryOptions

Returns

Set<TKey>

Implementation of

IndexInterface.rangeQueryReversed


remove()

ts
abstract remove(key, item): void;
abstract remove(key, item): void;

Defined in: packages/db/src/indexes/base-index.ts:109

Parameters

key

TKey

item

any

Returns

void

Implementation of

IndexInterface.remove


supports()

ts
supports(operation): boolean;
supports(operation): boolean;

Defined in: packages/db/src/indexes/base-index.ts:143

Parameters

operation

"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"

Returns

boolean

Implementation of

IndexInterface.supports


take()

ts
abstract take(
   n, 
   from, 
   filterFn?): TKey[];
abstract take(
   n, 
   from, 
   filterFn?): TKey[];

Defined in: packages/db/src/indexes/base-index.ts:114

Parameters

n

number

from

TKey

filterFn?

(key) => boolean

Returns

TKey[]

Implementation of

IndexInterface.take


takeFromStart()

ts
abstract takeFromStart(n, filterFn?): TKey[];
abstract takeFromStart(n, filterFn?): TKey[];

Defined in: packages/db/src/indexes/base-index.ts:119

Parameters

n

number

filterFn?

(key) => boolean

Returns

TKey[]

Implementation of

IndexInterface.takeFromStart


takeReversed()

ts
abstract takeReversed(
   n, 
   from, 
   filterFn?): TKey[];
abstract takeReversed(
   n, 
   from, 
   filterFn?): TKey[];

Defined in: packages/db/src/indexes/base-index.ts:123

Parameters

n

number

from

TKey

filterFn?

(key) => boolean

Returns

TKey[]

Implementation of

IndexInterface.takeReversed


takeReversedFromEnd()

ts
abstract takeReversedFromEnd(n, filterFn?): TKey[];
abstract takeReversedFromEnd(n, filterFn?): TKey[];

Defined in: packages/db/src/indexes/base-index.ts:128

Parameters

n

number

filterFn?

(key) => boolean

Returns

TKey[]

Implementation of

IndexInterface.takeReversedFromEnd


trackLookup()

ts
protected trackLookup(startTime): void;
protected trackLookup(startTime): void;

Defined in: packages/db/src/indexes/base-index.ts:200

Parameters

startTime

number

Returns

void


update()

ts
abstract update(
   key, 
   oldItem, 
   newItem): void;
abstract update(
   key, 
   oldItem, 
   newItem): void;

Defined in: packages/db/src/indexes/base-index.ts:110

Parameters

key

TKey

oldItem

any

newItem

any

Returns

void

Implementation of

IndexInterface.update


updateTimestamp()

ts
protected updateTimestamp(): void;
protected updateTimestamp(): void;

Defined in: packages/db/src/indexes/base-index.ts:206

Returns

void