Interface AeMember<TValue, TClass, TUpdate>

An amended entity representing a class instance member (property) to amend.

Used by amendments to modify the member definition. I.e. its property descriptor.

Type Parameters

  • TValue extends TUpdate

    Amended member value type.

  • TClass extends AmendableClass = Class

    A type of amended class.

  • TUpdate = TValue

    Amended member update type accepted by its setter.

Hierarchy

Constructors

constructor

Properties

amendedClass: TClass

Amended class constructor.

configurable: boolean

Whether the member is configurable.

enumerable: boolean

Whether the member is enumerable.

key: string | symbol

A key of the instance member.

Updates to this property are always ignored. The member key can not be changed.

readable: boolean

Whether the member is writable.

Updates to this property are always ignored.

Set to true when get property assigned. Set to false when set property assigned, while the get one is not. Remains unchanged when neither get, nor set properties assigned.

writable: boolean

Whether the member is writable.

Updates to this property are always ignored.

Set to true when set property assigned. Set to false when get property assigned, while the set one is not. Remains unchanged when neither get, nor set properties assigned.

Methods

  • Reads the value of this member in the target instance.

    Throws if the member is not readable.

    Parameters

    • this: void
    • instance: InstanceType<TClass>

      Target instance.

    Returns TValue

    Member value.

  • Assigns the value of this member in the target instance.

    Throw is the member is not writable.

    Parameters

    • this: void
    • instance: InstanceType<TClass>

      Target instance.

    • update: TUpdate

      Updated member value.

    Returns void

Generated using TypeDoc