Enum
pentaho.type.mixins.Enum
A mixin type that limits the domain, of the simple type it is applied to, to a discrete set of instances.
Enum types become final (cannot be further subtyped).
The alias of this type is enum
.
The discrete set of valid instances must be specified at type initialization.
The order of instances is relevant and is accounted for in compare
.
AMD Module
require(["pentaho/type/mixins/enum"], function(Enum) { /* code goes here */ });
See also: pentaho.type.mixins.spec.IEnumTypeProto
Extends
Constructor
Name | Description |
---|---|
new Enum() Abstract |
Classes
Name | Summary |
---|---|
Type | The type class of the |
Members
Name | Description |
---|---|
$isValid : | Determines if this value is a valid instance of its type. |
$key : | Gets the key of the simple value. |
$type : | Gets the type of this instance. |
configure | Configures this value with a given configuration. |
formatted : | Gets or sets the formatted value of the property. |
value : | Gets the underlying JavaScript value represented by the simple value. |
Methods
Name | Description |
---|---|
_configure(config) Protected | Configures this value with a given non-nully configuration. |
_toJSONValue(keyArgs) : UJsonValue Protected | Converts the |
assertValid() | Ensures that the value is valid, and throws the first validation error if it is not. |
clone() : pentaho.type.Simple | Creates a clone of the simple value. |
equals(other) : boolean | Determines if a given value, of the same type, represents the same entity. |
equalsContent(other) : boolean | Determines if a given value, of the same type, represents the same entity with the same content. |
toJSON() : UJsonValue | Creates a top-level JSON specification that describes this instance. |
toSpec(keyArgs) : pentaho.type.spec.UInstance | Creates a specification that describes this value. |
toSpecInContext(keyArgs) : any | Creates a specification that describes this instance. |
toString() : String | Returns a string that represents the current simple value. |
validate() : Array.< | Determines if this value is a valid instance of its type. |
valueOf() : * | Gets the underlying primitive value of the simple value. |
Constructor Details
new Enum() Abstract |
---|
Source: javascript/web/pentaho/type/mixins/enum.js, line 37 See also: pentaho.type.mixins.spec.IEnumTypeProto Example Defining an enumeration type ```js define(function() { return ["string", function(PenString) { return PenString.extend({ $type: { mixins: ["enum"], domain: [ {v: "bad", f: "Bad"}, {v: "neutral", f: "Neutral"}, {v: "good", f: "Good"} ] } }); }]; }); ``` |
Members Details
$isValid: |
---|
Determines if this value is a valid instance of its type. This attribute calls Source: javascript/web/pentaho/type/value.js, line 123 Inherited From: pentaho.type.Value#$isValid |
$key: |
---|
Gets the key of the simple value. The key of a value identifies it among values of the same concrete type. If two values have the same concrete type and their keys are equal, then it must also be the case that The default simple value implementation, returns the result of calling Source: javascript/web/pentaho/type/simple.js, line 198 Inherited From: pentaho.type.Simple#$key |
$type: |
---|
Gets the type of this instance. Source: javascript/web/pentaho/type/value.js, line 246 Overrides: pentaho.type.Simple#$type |
configure: |
---|
Configures this value with a given configuration. If If If An error is thrown if Source: javascript/web/pentaho/type/simple.js, line 224 Inherited From: pentaho.type.Simple#configure |
formatted: |
---|
Gets or sets the formatted value of the property. Source: javascript/web/pentaho/type/simple.js, line 141 Inherited From: pentaho.type.Simple#formatted |
value: |
---|
Gets the underlying JavaScript value represented by the simple value. Source: javascript/web/pentaho/type/simple.js, line 104 Inherited From: pentaho.type.Simple#value |
Methods Details
_configure(config) Protected | ||||||
---|---|---|---|---|---|---|
Configures this value with a given non-nully configuration. The default implementation does nothing. Source: javascript/web/pentaho/type/value.js, line 178 Inherited From: pentaho.type.Value#_configure
|
_toJSONValue(keyArgs) : UJsonValue Protected | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Converts the The default implementation returns Source: javascript/web/pentaho/type/simple.js, line 361 Inherited From: pentaho.type.Simple#_toJSONValue
|
assertValid() | ||||
---|---|---|---|---|
Ensures that the value is valid, and throws the first validation error if it is not. This method calls the Source: javascript/web/pentaho/type/value.js, line 152 Inherited From: pentaho.type.Value#assertValid
|
clone() : pentaho.type.Simple | ||||
---|---|---|---|---|
Creates a clone of the simple value. Source: javascript/web/pentaho/type/simple.js, line 89 Inherited From: pentaho.type.Simple#clone
|
equals(other) : boolean | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Determines if a given value, of the same type, represents the same entity. The default implementation delegates the operation to the Source: javascript/web/pentaho/type/value.js, line 107 Inherited From: pentaho.type.Value#equals
See also: pentaho.type.Value#$key , pentaho.type.Value.Type#areEqual |
equalsContent(other) : boolean | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Determines if a given value, of the same type, represents the same entity with the same content. The given value must be of the same concrete type (or the result is undefined). If two values are equal, they must have an equal Source: javascript/web/pentaho/type/simple.js, line 213 Inherited From: pentaho.type.Simple#equalsContent
|
toJSON() : UJsonValue | ||||
---|---|---|---|---|
Creates a top-level JSON specification that describes this instance. Attributes which do not have a JSON-compatible specification are omitted. Specifically, for inline types, attributes with a function value are not supported. This method simply calls Source: javascript/web/pentaho/type/instance.js, line 210 Inherited From: pentaho.type.Instance#toJSON
See also: pentaho.type.Instance#toSpec |
toSpec(keyArgs) : pentaho.type.spec.UInstance | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Creates a specification that describes this value. If an Source: javascript/web/pentaho/type/value.js, line 184 Inherited From: pentaho.type.Value#toSpec |
Name | Default Value | Summary | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
keyArgs : Object Optional | The keyword arguments object. Passed to every value and type serialized within this scope. Please see the documentation of value subclasses for information on additional, supported keyword arguments.
|
Name | Description |
---|---|
pentaho.type.spec.UInstance | A specification of this value. |
toSpecInContext(keyArgs) : any | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Creates a specification that describes this instance. Source: javascript/web/pentaho/type/instance.js, line 190 Inherited From: pentaho.type.Instance#toSpecInContext
See also: pentaho.type.Instance#toSpec |
toString() : String | ||||
---|---|---|---|---|
Returns a string that represents the current simple value. Source: javascript/web/pentaho/type/simple.js, line 174 Inherited From: pentaho.type.Simple#toString
|
validate() : Array.< | ||||
---|---|---|---|---|
Determines if this value is a valid instance of its type. The default implementation delegates to Source: javascript/web/pentaho/type/value.js, line 137 Inherited From: pentaho.type.Value#validate
See also: pentaho.type.Value#$isValid |
valueOf() : * | ||||
---|---|---|---|---|
Gets the underlying primitive value of the simple value. Source: javascript/web/pentaho/type/simple.js, line 165 Inherited From: pentaho.type.Simple#valueOf
|