pub struct VariableTypeBuilder { /* private fields */ }Expand description
A builder for constructing a node of same name. This can be used as an easy way to create a node and the references it has to another node in a simple fashion.
Implementations§
Source§impl VariableTypeBuilder
impl VariableTypeBuilder
Sourcepub fn new<T, S>(node_id: &NodeId, browse_name: T, display_name: S) -> Self
pub fn new<T, S>(node_id: &NodeId, browse_name: T, display_name: S) -> Self
Creates a builder for a node. All nodes are required to su
Sourcepub fn get_node_id(&self) -> &NodeId
pub fn get_node_id(&self) -> &NodeId
Get the node ID of the node being built.
Sourcepub fn is_valid(&self) -> bool
pub fn is_valid(&self) -> bool
Tests that the builder is in a valid state to build or insert the node.
Sourcepub fn description<V>(self, description: V) -> Selfwhere
V: Into<LocalizedText>,
pub fn description<V>(self, description: V) -> Selfwhere
V: Into<LocalizedText>,
Sets the description of the node
Sourcepub fn reference<T>(
self,
node_id: T,
reference_type_id: ReferenceTypeId,
reference_direction: ReferenceDirection,
) -> Self
pub fn reference<T>( self, node_id: T, reference_type_id: ReferenceTypeId, reference_direction: ReferenceDirection, ) -> Self
Adds a reference to the node
Sourcepub fn organizes<T>(self, organizes_id: T) -> Self
pub fn organizes<T>(self, organizes_id: T) -> Self
Indicates this node organizes another node by its id.
Sourcepub fn organized_by<T>(self, organized_by_id: T) -> Self
pub fn organized_by<T>(self, organized_by_id: T) -> Self
Indicates this node is organised by another node by its id
Sourcepub fn build(self) -> VariableType
pub fn build(self) -> VariableType
Yields a built node. This function will panic if the node is invalid. Note that calling this function discards any references for the node, so there is no purpose in adding references if you intend to call this method.
Sourcepub fn insert(self, address_space: &mut impl NodeInsertTarget) -> bool
pub fn insert(self, address_space: &mut impl NodeInsertTarget) -> bool
Inserts the node into the address space, including references. This function will panic if the node is in an invalid state.
Source§impl VariableTypeBuilder
impl VariableTypeBuilder
Sourcepub fn generates_event<T>(self, event_type: T) -> Self
pub fn generates_event<T>(self, event_type: T) -> Self
Add a GeneratesEvent reference to the given event type.
Source§impl VariableTypeBuilder
impl VariableTypeBuilder
Sourcepub fn subtype_of<T>(self, type_id: T) -> Self
pub fn subtype_of<T>(self, type_id: T) -> Self
Add an inverse HasSubtype reference to the given
type.
Sourcepub fn has_subtype<T>(self, subtype_id: T) -> Self
pub fn has_subtype<T>(self, subtype_id: T) -> Self
Add a HasSubtype reference to the given type.
Source§impl VariableTypeBuilder
impl VariableTypeBuilder
Sourcepub fn is_abstract(self, is_abstract: bool) -> Self
pub fn is_abstract(self, is_abstract: bool) -> Self
Set whether the variable type is abstract, meaning it cannot be used by nodes in the instance hierarchy.
Sourcepub fn write_mask(self, write_mask: WriteMask) -> Self
pub fn write_mask(self, write_mask: WriteMask) -> Self
Set the variable type write mask.
Sourcepub fn data_type(self, data_type: impl Into<NodeId>) -> Self
pub fn data_type(self, data_type: impl Into<NodeId>) -> Self
Set the base data type for instances of this type.
Sourcepub fn value(self, value: impl Into<Variant>) -> Self
pub fn value(self, value: impl Into<Variant>) -> Self
Set the default value for instances of this type.
Sourcepub fn array_dimensions(self, array_dimensions: &[u32]) -> Self
pub fn array_dimensions(self, array_dimensions: &[u32]) -> Self
Set the array dimensions of this type.
Sourcepub fn value_rank(self, value_rank: i32) -> Self
pub fn value_rank(self, value_rank: i32) -> Self
Set the value rank of this type.