Skip to main content

Class: ObjectMap<V>

A map that is backed by an object-like map. Use objectMap to create it.

Extends​

  • objectMapBase

Type Parameters​

Type Parameter
V

Implements​

  • Map<string, V>

Constructors​

Constructor​

abstract new ObjectMap<V>(data): ObjectMap<V>;

Parameters​

ParameterType
dataany

Returns​

ObjectMap<V>

Inherited from​

objectMapBase.constructor

Properties​

[fromSnapshotOverrideTypeSymbol]​

[fromSnapshotOverrideTypeSymbol]: any;

Inherited from​

objectMapBase.[fromSnapshotOverrideTypeSymbol]

[modelIdPropertyNameSymbol]​

[modelIdPropertyNameSymbol]: any;

Inherited from​

objectMapBase.[modelIdPropertyNameSymbol]

[propsTypeSymbol]​

[propsTypeSymbol]: any;

Inherited from​

objectMapBase.[propsTypeSymbol]

[toSnapshotOverrideTypeSymbol]​

[toSnapshotOverrideTypeSymbol]: any;

Inherited from​

objectMapBase.[toSnapshotOverrideTypeSymbol]

[toStringTag]​

readonly [toStringTag]: "ObjectMap" = "ObjectMap";

Implementation of​

Map.[toStringTag]

$​

readonly $: object;

items​

items: Record<string, V>;

Inherited from​

objectMapBase.$

$modelType​

readonly $modelType: string;

Model type name.

Inherited from​

objectMapBase.$modelType

items​

readonly items: Record<string, V>;

Inherited from​

objectMapBase.items

Accessors​

$modelId​

Get Signature​

get $modelId(): ModelIdPropertyType<TProps, ModelIdPropertyName>;

Model internal id. Can be modified inside a model action. It will return undefined if there's no id prop set.

Returns​

ModelIdPropertyType<TProps, ModelIdPropertyName>

Set Signature​

set $modelId(newId): void;
Parameters​
ParameterType
newIdModelIdPropertyType<TProps, ModelIdPropertyName>
Returns​

void

Inherited from​

objectMapBase.$modelId

size​

Get Signature​

get size(): number;
Returns​

number

the number of elements in the Map.

Implementation of​

Map.size

Methods​

[iterator]()​

iterator: MapIterator<[string, V]>;

Returns​

MapIterator<[string, V]>

Implementation of​

Map.[iterator]

clear()​

clear(): void;

Removes all elements from the Map.

Returns​

void

Implementation of​

Map.clear

delete()​

delete(key): boolean;

Parameters​

ParameterType
keystring

Returns​

boolean

true if an element in the Map existed and has been removed, or false if the element does not exist.

Implementation of​

Map.delete

entries()​

entries(): MapIterator<[string, V]>;

Returns an iterable of key, value pairs for every entry in the map.

Returns​

MapIterator<[string, V]>

Implementation of​

Map.entries

forEach()​

forEach(callbackfn, thisArg?): void;

Executes a provided function once per each key/value pair in the Map, in insertion order.

Parameters​

ParameterType
callbackfn(value, key, map) => void
thisArg?any

Returns​

void

Implementation of​

Map.forEach

get()​

get(key): V | undefined;

Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.

Parameters​

ParameterType
keystring

Returns​

V | undefined

Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.

Implementation of​

Map.get

getOrInsert()​

getOrInsert(key, defaultValue): V;

Returns a specified element from the Map object. If no element is associated with the specified key, a new element with the value defaultValue will be inserted into the Map and returned.

Parameters​

ParameterType
keystring
defaultValueV

Returns​

V

The element associated with the specified key, which will be defaultValue if no element previously existed.

Implementation of​

Map.getOrInsert

getOrInsertComputed()​

getOrInsertComputed(key, callback): V;

Returns a specified element from the Map object. If no element is associated with the specified key, the result of passing the specified key to the callback function will be inserted into the Map and returned.

Parameters​

ParameterType
keystring
callback(key) => V

Returns​

V

The element associated with the specific key, which will be the newly computed value if no element previously existed.

Implementation of​

Map.getOrInsertComputed

getRefId()​

getRefId(): string | undefined;

Can be overridden to offer a reference id to be used in reference resolution. By default it will use the idProp if available or return undefined otherwise.

Returns​

string | undefined

Inherited from​

objectMapBase.getRefId

has()​

has(key): boolean;

Parameters​

ParameterType
keystring

Returns​

boolean

boolean indicating whether an element with the specified key exists or not.

Implementation of​

Map.has

keys()​

keys(): MapIterator<string>;

Returns an iterable of keys in the map

Returns​

MapIterator<string>

Implementation of​

Map.keys

set()​

set(key, value): this;

Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.

Parameters​

ParameterType
keystring
valueV

Returns​

this

Implementation of​

Map.set

toString()​

toString(options?): string;

Parameters​

ParameterType
options?{ withData?: boolean; }
options.withData?boolean

Returns​

string

Inherited from​

objectMapBase.toString

typeCheck()​

typeCheck(): TypeCheckError | null;

Performs a type check over the model instance. For this to work a data type has to be declared as part of the model properties.

Returns​

TypeCheckError | null

A TypeCheckError or null if there is no error.

Inherited from​

objectMapBase.typeCheck

values()​

values(): MapIterator<V>;

Returns an iterable of values in the map

Returns​

MapIterator<V>

Implementation of​

Map.values