Class: FrozenEnum

baja. FrozenEnum


new FrozenEnum()

Represents a baja:FrozenEnum in BajaScript.

In Niagara, a BFrozenEnum is a hard coded set of enumerations and is immutable.

FrozenEnum objects are treated in a special way in BajaScript. A
FrozenEnum's range (also known as a Contract in BajaScript) is lazily
requested and stored within the BajaScript registry. Therefore, this
object shouldn't be used directly.

See:
Example
// Here's the preferred way to access a `FrozenEnum`:
var en = baja.$("baja:Weekday").get("monday");

Extends

Methods


asDynamic()

Return the Frozen Enum as a Dynamic Enum.

See:
Returns:
Type
baja.DynamicEnum

decodeAsync(str [, batch])

The string encoding of certain Simples may include Type information, or
other data that may be require asynchronous operations to decode. BOX is
designed to handle these situations when decoding data from the station,
but when user code needs to decode string-encoded Simples directly, prefer
this method as it gives the individual Simple a chance to import Types,
etc. to ensure that the decoded Simple is fully correct.

The default implementation just returns decodeFromString directly.

Parameters:
Name Type Argument Description
str string
batch baja.comm.Batch <optional>

optional batch to use

Inherited From:
Returns:

may return the Simple instance
directly, or a Promise resolving to same - so wrap in Promise.resolve()
if unsure.

Type
baja.Simple | Promise.<baja.Simple>

decodeFromString(str)

Decode a FrozenEnum from a String.

Parameters:
Name Type Description
str String
Overrides:
Returns:
Type
baja.FrozenEnum

encodeToString()

Encode the FrozenEnum to a String.

Overrides:
Returns:
Type
String

equals(obj)

Equality test.

Parameters:
Name Type Description
obj
Inherited From:
Returns:
Type
Boolean

equivalent(obj)

Equivalence test.

equivalent() is used to compare if two Objects have equivalent
state, but might not want to return true for equals since it
it has implied semantics for many operations. The default
implementation returns the result of baja.Object#equals.

Parameters:
Name Type Description
obj
Inherited From:
Returns:
Type
Boolean

get(arg)

Get a FrozenEnum.

This is the primary way to access an enum.

Parameters:
Name Type Description
arg String | Number

the tag of ordinal of the enum to get.

Throws:

if the tag or ordinal is invalid.

Type
Error
Returns:

the frozen enum.

Type
baja.FrozenEnum
Example
var en = baja.$("baja:Weekday").get("monday");

getAgents( [is], batch)

Returns a promise that resolves to the agent list for this Object.

Parameters:
Name Type Argument Description
is Array.<String> <optional>

An optional array of filters to add to the
agent query.

batch baja.comm.Batch

An optional object used to batch network
calls together.

Inherited From:
See:
Returns:

A promise that will resolve with the Agent Info.

Type
Promise

getDisplayTag()

Return the display tag for the FrozenEnum.

A display tag is a translated human friendly readable version of a tag.

Returns:

display tag.

Type
String

getEnum()

Return the Enum (itself).

Inherited From:
Returns:
Type
baja.Enum

getIcon()

Return the Object's Icon.

Inherited From:
Returns:
Type
baja.Icon

getOrdinal()

Return the ordinal for the frozen enum.

Returns:

ordinal.

Type
Number

getRange()

Return the range for the frozen enum.

Returns:

range.

Type
baja.EnumRange

getTag()

Return the tag for the FrozenEnum.

Returns:

tag

Type
String

getType()

Get the type of this instance.

Inherited From:
Returns:
Type
Type

is(arg)

Equals comparison via tag or ordinal.

This is a convenient way to compare enums.

Parameters:
Name Type Description
arg String | Number | baja.FrozenEnum

the enum, tag or ordinal used for comparison.

Returns:

true if equal.

Type
Boolean
Example
var monday = baja.$("baja:Weekday").get("monday");
  baja.outln("Is the day Tuesday?: " + monday.is("tuesday"));

isActive()

Return true if the enum is active.

Returns:

true if active.

Type
Boolean

newCopy( [exact])

Every value may be cloned using the newCopy method.

Please note that Simples are immutable so they don't
allocate a new instance.

Parameters:
Name Type Argument Description
exact Boolean <optional>

true if an exact copy of the value should be
made (only valid in the Component architecture).

Inherited From:
See:
Returns:

a copy of the value (or the same instance if the value is a
Simple).


toString()

Return the String representation of a FrozenEnum.

Overrides:
Returns:

string

Type
String

valueOf()

Return the ordinal of the Enum (itself).

Inherited From:
Returns:
Type
Number