IAtomConstructor interface

Home > facade > IAtomConstructor

IAtomConstructor interface

Конструктор атома

Signature:

export interface IAtomConstructor<D> extends IAtomCoreConstructor

Remarks

Функция-константа, расширяет IAtomCoreConstructor

Example

import A from 'alak'
const atom = A() // сокращённая запись A.proxy()

Methods

MethodDescription
from(atoms)Создать атом из нескольких других атомов и стратегии вычисления. Смотрите описание стратегий: ComputeStrategy.
holistic()Создать атом, с аргументами передающимися в функции-добытчики в полном числе. IAtom.stateless().
id(id, startValue)Создать атом c предустановленным идентификатором IAtom.setId().
setGetter(getterFn)Создать атом c функцией добытчика IAtom.setGetter().
setOnceGet(getterFn)Создать атом c функцией добытчика IAtom.setGetter().
setWrapper(wrapperFun)Создать атом c функцией обёртки IAtom.setWrapper().
stateless()Создать атом, с контейнерем не запоминающием значение. IAtom.stateless().

from() method

Создать атом из нескольких других атомов и стратегии вычисления. Смотрите описание стратегий: ComputeStrategy.

Signature:

from<IN extends IAtom<any>[]>(...atoms: IN): ComputeStrategicAtom<IN>;

Parameters

ParameterTypeDescription
atomsINнабор входных атомов для вычисления значения

Returns:

ComputeStrategicAtom<IN>

ComputeStrategy

Example

const a1 = A(1)
const a2 = A(2)
const computedAtom = A
.from(a1, a2)
.some((v1, v2) => v1 + v2)
console.log(computedAtom()) //output:3

holistic() method

Создать атом, с аргументами передающимися в функции-добытчики в полном числе. IAtom.stateless().

Signature:

holistic(): IAtom<MaybeAny<D>>;

Returns:

IAtom<MaybeAny<D>>

Remarks

Сокращённая запись A().holistic()

id() method

Создать атом c предустановленным идентификатором IAtom.setId().

Signature:

id<T>(id: string | number, startValue?: T): IAtom<MaybeAny<T>>;

Parameters

ParameterTypeDescription
idstring ا numberидентификатор
startValueTстартовое значение

Returns:

IAtom<MaybeAny<T>>

Remarks

Сокращённая запись A().setId(id)

setGetter() method

Создать атом c функцией добытчика IAtom.setGetter().

Signature:

setGetter<T>(getterFn: () => T): IAtom<T>;

Parameters

ParameterTypeDescription
getterFn() => Tфункция-добытчик

Returns:

IAtom<T>

Remarks

Сокращённая запись A().setGetter(fun)

setOnceGet() method

Создать атом c функцией добытчика IAtom.setGetter().

Signature:

setOnceGet<D>(getterFn: () => D): IAtom<D>;

Parameters

ParameterTypeDescription
getterFn() => Dфункция-добытчик

Returns:

IAtom<D>

Remarks

Сокращённая запись A().setOnceGet(fun)

setWrapper() method

Создать атом c функцией обёртки IAtom.setWrapper().

Signature:

setWrapper<T>(wrapperFun: (v: D) => T): IAtom<MaybeAny<T>>;

Parameters

ParameterTypeDescription
wrapperFun(v: D) => Tфункция-обёртка

Returns:

IAtom<MaybeAny<T>>

Remarks

Сокращённая запись A().setWrapper(wrapperFun)

stateless() method

Создать атом, с контейнерем не запоминающием значение. IAtom.stateless().

Signature:

stateless(): IAtom<MaybeAny<D>>;

Returns:

IAtom<MaybeAny<D>>

Remarks

Сокращённая запись A().stateless()