Variant
Variant
is a container for the build in OPC-UA datatypes. It is used to hold the values for the input and output values of a MethodNode
's method.
Functions
Variant.new(type)
Creates a new Variant
instance
Params
- type
DataType
- The variant's datatype
Returns: Variant
new instance
Methods
Variant:isEmpty()
Checks if the Variant
has no value defined
Returns: boolean
true if there is no value defined
Variant:isScalar()
Checks if the Variant
contains a scalar value
Returns: boolean
true if the variant contains a scalar value
Variant:hasScalarType(type)
Checks if a Variant
contains a scalar value of the given type
Params
- type
DataType
- The type to check
Returns: boolean
true if the variant contains a scalar value of the given type
Variant:hasArrayType()
Checks if a Variant
contains an array of the given type
Params
- type
DataType
- The type to check
Returns: boolean
true if the variant contains an array of the given type
Variant:setScalar(value)
Set the variant to a scalar value
Params
- value
string|number|boolean
- The scalar value
Variant:setArray(value, shape)
Set the variant to an array
Params
- value
string[]|number[]|boolean[]
-
array of values
-
shape
number[]
- The arrays dimensions
- Optional
- If not provided, the variant will default to a flat array shape.
Variant:getScalar()
Get the value of a scalar variant
Returns: string|number|boolean
the variants scalar value
Variant:getArray()
Get the value of an array variant
Returns: string[]|number[]|boolean[]
the variant's array
Variant:getArrayShape()
Get the array dimensions (shape) of the variant
Returns: number[]
the variant's shape or nil
if the shape is scalar.