Class Arg<T>

Returns a wrapper object which always invokes the function with the wrapped object after a property is set (Arg.set(p, value)) on or deleted (Arg.delete(p)) from it. The function will also be called before a property is retrieved (Arg.get(p)) from the object.

This is useful for more complex transformations/computations that involve properties from multiple objects instead of a single one.

Example

import { arg } from 'apption'
const obj = { a: 1, b: 2 };
let storedValue;
const fn = val => storedValue = val.a + val.b;
const arg = new Arg(obj, fn);
arg.set('a', 24);
console.log(storedValue) // 24+2 = 26.
arg.set('b', 25);
console.log(storedValue) // 24+25 = 49.

Param: object

Param: fn

Type Parameters

  • T

Constructors

Properties

Methods

Constructors

  • Type Parameters

    • T

    Parameters

    • object: T
    • fn: ICallable

    Returns Arg<T>

Properties

#private: any
fn: ICallable
object: T

Methods

  • Parameters

    • p: IKey

    Returns any

  • Parameters

    • p: IKey

    Returns any

  • Returns T

  • Parameters

    • p: IKey
    • value: any

    Returns any