Skip to main content

interface HashTableHashColumnCreators

undocumented

Extends: TableBase.Factory<Tp,UR,UC>

Methods

builder

Returns an empty builder instance for this type of collection and context.

Definition

builder<R extends UR, C extends UC, V>(): WithRow<Tp, R, C, V>['builder'];

Type parameters

NameConstraintsDescription
RUR
CUC
V
example
HashTableHashColumn.builder<number, string, boolean>()    // => HashTableHashColumn.Builder<number, string, boolean>

Overrides

Factory.builder

createContext

Returns a new HashTableHashColumn context instance based on the given options.

Definition

createContext<UR, UC>(options?: {
    rowContext?: HashMap.Context<UR>;
    columnContext?: HashMap.Context<UC>;
  }): HashTableHashColumn.Context<UR, UC>;

Type parameters

NameDescription
URthe upper row key type for which the context can create instances
UCthe upper column key type for which the context can create instances

Parameters

NameTypeDescription
options{
    rowContext?: HashMap.Context<UR>;
    columnContext?: HashMap.Context<UC>;
  }
(optional) an object containing the following properties:
- rowContext: (optional) the map context to use to map row keys to columns
- columnContext: (optional) the map context to use to map column keys to values

defaultContext

Returns the default context for HashTableHashColumns.

Definition

defaultContext<UR, UC>(): HashTableHashColumn.Context<UR, UC>;

Type parameters

NameDescription
URthe upper row key type for which the context can create instances
UCthe upper column key type for which the context can create instances

empty

Returns the (singleton) empty instance of this type and context with given key and value types.

Definition

empty<R extends UR, C extends UC, V>(): WithRow<Tp, R, C, V>['normal'];

Type parameters

NameConstraintsDescription
RUR
CUC
V
example
HashTableHashColumn.empty<number, string, boolean>()    // => HashTableHashColumn<number, string, boolean>
HashTableHashColumn.empty<string, boolean, number>() // => HashTableHashColumn<string, boolean, number>

Overrides

Factory.empty

from

Returns an immutable table of this type and context, containing the entries in the given sources StreamSource instances.

Definitions

from<R extends UR, C extends UC, V>(...sources: ArrayNonEmpty<StreamSource.NonEmpty<readonly [R, C, V]>>): WithRow<Tp, R, C, V>['nonEmpty'];

from<R extends UR, C extends UC, V>(...sources: ArrayNonEmpty<StreamSource<readonly [R, C, V]>>): WithRow<Tp, R, C, V>['normal'];

Type parameters

NameConstraintsDescription
RUR
CUC
V

Parameters

NameTypeDescription
sourcesArrayNonEmpty<StreamSource.NonEmpty<readonly [R, C, V]>>an array of StreamSource instances containing row-column-value entries
example
HashTableHashColumn.from([[1, 2, 3], [1, 4, 5]])    // => HashTableHashColumn.NonEmpty<number, number, number>

Overrides

Factory.from

of

Returns an immutable multimap of this collection type and context, containing the given entries.

Definition

of<R extends UR, C extends UC, V>(...entries: ArrayNonEmpty<readonly [R, C, V]>): WithRow<Tp, R, C, V>['nonEmpty'];

Type parameters

NameConstraintsDescription
RUR
CUC
V

Parameters

NameTypeDescription
entriesArrayNonEmpty<readonly [R, C, V]>a non-empty array of row-column-value entries
example
HashTableHashColumn.of([1, 2, 3], [1, 4, 5])    // => HashTableHashColumn.NonEmpty<number, number, number>

Overrides

Factory.of

reducer

Returns a Reducer that adds received tuples to a Table and returns the Table as a result. When a source is given, the reducer will first create a Table from the source, and then add tuples to it.

Definition

reducer<R extends UR, C extends UC, V>(source?: StreamSource<readonly [R, C, V]>): Reducer<readonly [R, C, V], WithRow<Tp, R, C, V>['normal']>;

Type parameters

NameConstraintsDescription
RUR
CUC
V

Parameters

NameTypeDescription
sourceStreamSource<readonly [R, C, V]>(optional) an initial source of tuples to add to
example
const someSource = Table.of([1, 'a', true], [2, 'b', false]);
const result = Stream.of([1, 'c', true], [3, 'a', false]).reduce(Table.reducer(someSource))
result.toArray() // => [[1, 'c'], [2, 'b'], [3, 'a']]
note

uses a builder under the hood. If the given source is a Table in the same context, it will directly call .toBuilder().

Overrides

Factory.reducer