interface TableBase.Context<UR,UC,Tp>
undocumented
Extends: TableBase.Factory<Tp,UR,UC>
Implemented by: TableContext<UR,UC,N,Tp>
Type parameters
| Name | Constraints | Default | Description |
|---|---|---|---|
| UR | undocumented | ||
| UC | undocumented | ||
| Tp | TableBase.Types | TableBase.Types | undocumented |
Properties
columnContext
The context used for the internal column map instances.
columnContextrowContext
The context used for the internal row map instances.
rowContexttypeTag
A string tag defining the specific collection type
typeTagDefinition
readonly typeTag: string;
HashTableHashColumn.defaultContext().typeTag // => 'HashTableHashColumn'
Methods
builder
Returns an empty builder instance for this type of collection and context.
builderempty
Returns the (singleton) empty instance of this type and context with given key and value types.
emptyDefinition
empty<R extends UR, C extends UC, V>(): WithRow<Tp, R, C, V>['normal'];
Type parameters
| Name | Constraints | Description |
|---|---|---|
| R | UR | |
| C | UC | |
| V |
HashTableHashColumn.empty<number, string, boolean>() // => HashTableHashColumn<number, string, boolean>
HashTableHashColumn.empty<string, boolean, number>() // => HashTableHashColumn<string, boolean, number>
Overrides
from
Returns an immutable table of this type and context, containing the entries in the given sources StreamSource instances.
fromsources 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
| Name | Constraints | Description |
|---|---|---|
| R | UR | |
| C | UC | |
| V |
Parameters
| Name | Type | Description |
|---|---|---|
sources | ArrayNonEmpty<StreamSource.NonEmpty<readonly [R, C, V]>> | an array of StreamSource instances containing row-column-value entries |
HashTableHashColumn.from([[1, 2, 3], [1, 4, 5]]) // => HashTableHashColumn.NonEmpty<number, number, number>
Overrides
of
Returns an immutable multimap of this collection type and context, containing the given entries.
ofentries.Definition
of<R extends UR, C extends UC, V>(...entries: ArrayNonEmpty<readonly [R, C, V]>): WithRow<Tp, R, C, V>['nonEmpty'];
Type parameters
| Name | Constraints | Description |
|---|---|---|
| R | UR | |
| C | UC | |
| V |
Parameters
| Name | Type | Description |
|---|---|---|
entries | ArrayNonEmpty<readonly [R, C, V]> | a non-empty array of row-column-value entries |
HashTableHashColumn.of([1, 2, 3], [1, 4, 5]) // => HashTableHashColumn.NonEmpty<number, number, number>
Overrides
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.
reducerReducer 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
| Name | Constraints | Description |
|---|---|---|
| R | UR | |
| C | UC | |
| V |
Parameters
| Name | Type | Description |
|---|---|---|
source | StreamSource<readonly [R, C, V]> | (optional) an initial source of tuples to add to |
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']]
uses a builder under the hood. If the given source is a Table in the same context, it will directly call .toBuilder().