Struct opcua_core::prelude::service_types::RelativePathElement
source · [−]pub struct RelativePathElement {
pub reference_type_id: NodeId,
pub is_inverse: bool,
pub include_subtypes: bool,
pub target_name: QualifiedName,
}
Fields
reference_type_id: NodeId
is_inverse: bool
include_subtypes: bool
target_name: QualifiedName
Implementations
sourceimpl RelativePathElement
impl RelativePathElement
sourcepub fn default_node_resolver(
namespace: u16,
browse_name: &str
) -> Option<NodeId>
pub fn default_node_resolver(
namespace: u16,
browse_name: &str
) -> Option<NodeId>
This is the default node resolver that attempts to resolve a browse name onto a reference type id. The default implementation resides in the types module so it doesn’t have access to the address space.
Therefore it makes a best guess by testing the browse name against the standard reference types and if fails to match it will produce a node id from the namespace and browse name.
pub fn default_browse_name_resolver(node_id: &NodeId) -> Option<String>
sourcepub fn from_str<CB>(
path: &str,
node_resolver: &CB
) -> Result<RelativePathElement, ()> where
CB: Fn(u16, &str) -> Option<NodeId>,
pub fn from_str<CB>(
path: &str,
node_resolver: &CB
) -> Result<RelativePathElement, ()> where
CB: Fn(u16, &str) -> Option<NodeId>,
Parse a relative path element according to the OPC UA Part 4 Appendix A BNF
<relative-path> ::= <reference-type> <browse-name> [relative-path]
<reference-type> ::= '/' | '.' | '<' ['#'] ['!'] <browse-name> '>'
<browse-name> ::= [<namespace-index> ':'] <name>
<namespace-index> ::= <digit> [<digit>]
<digit> ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
<name> ::= (<name-char> | '&' <reserved-char>) [<name>]
<reserved-char> ::= '/' | '.' | '<' | '>' | ':' | '#' | '!' | '&'
<name-char> ::= All valid characters for a String (see Part 3) excluding reserved-chars.
Examples
/foo
/0:foo
.bar
<0:HasEncoding>bar
<!NonHierarchicalReferences>foo
<#!2:MyReftype>2:blah
Trait Implementations
sourceimpl BinaryEncoder<RelativePathElement> for RelativePathElement
impl BinaryEncoder<RelativePathElement> for RelativePathElement
sourcefn byte_len(&self) -> usize
fn byte_len(&self) -> usize
Returns the exact byte length of the structure as it would be if encode
were called.
This may be called prior to writing to ensure the correct amount of space is available. Read more
sourcefn encode<S>(&self, stream: &mut S) -> Result<usize, StatusCode> where
S: Write,
fn encode<S>(&self, stream: &mut S) -> Result<usize, StatusCode> where
S: Write,
Encodes the instance to the write stream.
sourcefn decode<S>(
stream: &mut S,
decoding_options: &DecodingOptions
) -> Result<RelativePathElement, StatusCode> where
S: Read,
fn decode<S>(
stream: &mut S,
decoding_options: &DecodingOptions
) -> Result<RelativePathElement, StatusCode> where
S: Read,
Decodes an instance from the read stream. The decoding options contains restrictions set by
the server / client on the length of strings, arrays etc. If these limits are exceeded the
implementation should return with a BadDecodingError
as soon as possible. Read more
fn encode_to_vec(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
sourceimpl Clone for RelativePathElement
impl Clone for RelativePathElement
sourcefn clone(&self) -> RelativePathElement
fn clone(&self) -> RelativePathElement
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for RelativePathElement
impl Debug for RelativePathElement
sourceimpl MessageInfo for RelativePathElement
impl MessageInfo for RelativePathElement
sourceimpl PartialEq<RelativePathElement> for RelativePathElement
impl PartialEq<RelativePathElement> for RelativePathElement
sourcefn eq(&self, other: &RelativePathElement) -> bool
fn eq(&self, other: &RelativePathElement) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &RelativePathElement) -> bool
fn ne(&self, other: &RelativePathElement) -> bool
This method tests for !=
.
impl StructuralPartialEq for RelativePathElement
Auto Trait Implementations
impl RefUnwindSafe for RelativePathElement
impl Send for RelativePathElement
impl Sync for RelativePathElement
impl Unpin for RelativePathElement
impl UnwindSafe for RelativePathElement
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more