solarnetwork-api-core
    Preparing search index...

    Class EnumAbstract

    An enumerated object base class.

    the enum type

    Hierarchy (View Summary)

    Index

    Constructors

    Accessors

    Methods

    • Test if a string is equal to this enum's name.

      As long as enum values are consistently obtained from the Util.Enum.enumValues array then enum instances can be compared with ===. If unsure, this method can be used to compare string values instead.

      If value is passed as an actual Enum instance, then if that enum is the same class as this enum it's name is compared to this instance's name.

      Parameters

      • value: string | Enum

        the value to test

      Returns boolean

      true if value is the same as this instance's name value

    • This method takes an array of enums and turns them into a mapped object, using the enum name as object property names.

      Type Parameters

      Parameters

      • enums: readonly T[]

        the enum list to turn into a value object

      Returns { readonly [key: string]: object }

      an object with enum name properties with associated enum values

    • Get all enum values.

      This method must be overridden by subclasses to return something meaningful. This implementation returns an empty array.

      Returns undefined | readonly Enum[]

      all enum values

    • Get the names of a set of Enum instances.

      Type Parameters

      Parameters

      • set: Iterable<T>

        the set of Enum instances to get the names of

      Returns string[]

      array of Enum name values

    • Get an enum instance from its name.

      This method searches the Util.Enum.enumValues array for a matching value.

      Type Parameters

      Parameters

      • name: string

        the enum name to get an instnace for

      Returns undefined | T

      the instance, or undefined if no instance exists for the given name