@temporary-escape/mod-sdk / IndexKey
Class: IndexKey
Defined in: database/index-key.ts:49
Builders for the individual components of a document index key.
The database reduces every indexed field to a u64 before it becomes part of the key (the engine's DocumentIndexAdapter):
- unsigned integers and
boolhash tobswap64(value)(big endian); - signed integers hash to
bswap64(sign_extend(value)); - strings hash to FNV-1a 64 over their UTF-8 bytes;
- byte arrays (
Uint8Array) hash to FNV-1a 64 over their raw bytes; - an absent optional hashes to
0.
The builder you pick must match the schema's field type: picking a different one produces a different key than the database wrote and silently misses.
Constructors
Constructor
ts
new IndexKey(): IndexKey;Returns
IndexKey
Methods
bool()
ts
static bool(value: bool): number;Defined in: database/index-key.ts:91
A boolean index field.
Parameters
| Parameter | Type |
|---|---|
value | bool |
Returns
number
bytes()
ts
static bytes(value: Uint8Array): number;Defined in: database/index-key.ts:101
A byte-array (Uint8Array) index field (FNV-1a 64 of its raw bytes).
Parameters
| Parameter | Type |
|---|---|
value | Uint8Array |
Returns
number
i16()
ts
static i16(value: number): number;Defined in: database/index-key.ts:76
A signed 16-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
i32()
ts
static i32(value: number): number;Defined in: database/index-key.ts:81
A signed 32-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
i64()
ts
static i64(value: number): number;Defined in: database/index-key.ts:86
A signed 64-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
i8()
ts
static i8(value: number): number;Defined in: database/index-key.ts:71
A signed 8-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
none()
ts
static none(): number;Defined in: database/index-key.ts:106
An absent optional index field.
Returns
number
str()
ts
static str(value: string): number;Defined in: database/index-key.ts:96
A string index field (FNV-1a 64 of its UTF-8 bytes).
Parameters
| Parameter | Type |
|---|---|
value | string |
Returns
number
u16()
ts
static u16(value: number): number;Defined in: database/index-key.ts:56
An unsigned 16-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
u32()
ts
static u32(value: number): number;Defined in: database/index-key.ts:61
An unsigned 32-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
u64()
ts
static u64(value: number): number;Defined in: database/index-key.ts:66
An unsigned 64-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
u8()
ts
static u8(value: number): number;Defined in: database/index-key.ts:51
An unsigned 8-bit index field.
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
number
