#[repr(u32)]
pub enum NodeError {
Internal,
NodeRemoved,
NameMissing,
NameInvalid,
NameAlreadyExists,
OfferSourceNameMissing,
OfferRefExists,
SymbolNameMissing,
SymbolAddressMissing,
SymbolAlreadyExists,
}
Expand description
Error codes for the Node protocol.
Variants§
Internal
NodeRemoved
NameMissing
NameInvalid
The Node’s name is invalid. Specifically, it must not contain a period in its name.
NameAlreadyExists
A sibling Node exists with the same name.
OfferSourceNameMissing
An offer for this Node is missing a source name.
OfferRefExists
An offer for this Node should not have a source or target.
SymbolNameMissing
A symbol for this Node is missing a name.
SymbolAddressMissing
A symbol for this Node is missing an address.
SymbolAlreadyExists
There is another symbol for this Node with the same name.
Implementations§
source§impl NodeError
impl NodeError
pub fn from_primitive(prim: u32) -> Option<Self>
pub const fn into_primitive(self) -> u32
pub fn is_unknown(&self) -> bool
👎Deprecated: Strict enums should not use
is_unknown
Trait Implementations§
source§impl Decodable for NodeError
impl Decodable for NodeError
source§fn decode(
&mut self,
decoder: &mut Decoder<'_>,
offset: usize
) -> Result<(), Error>
fn decode( &mut self, decoder: &mut Decoder<'_>, offset: usize ) -> Result<(), Error>
Decodes an object of this type from the decoder’s buffers into
self
.
Callers must ensure that offset
is a multiple of
Layout::inline_align
, and that decoder.buf
has room for reading
Layout::inline_size
bytes at offset
. Read moresource§impl Encodable for NodeError
impl Encodable for NodeError
source§fn encode(
&mut self,
encoder: &mut Encoder<'_, '_>,
offset: usize,
recursion_depth: usize
) -> Result<(), Error>
fn encode( &mut self, encoder: &mut Encoder<'_, '_>, offset: usize, recursion_depth: usize ) -> Result<(), Error>
Encode the object into the buffer. Any handles stored in the object are
swapped for
Handle::INVALID
. Callers must ensure that offset
is a
multiple of Layout::inline_align
, and that encoder.buf
has room for
writing Layout::inline_size
bytes at offset
. Read moresource§impl Layout for NodeError
impl Layout for NodeError
source§fn inline_align(context: &Context) -> usize
fn inline_align(context: &Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
source§fn inline_size(context: &Context) -> usize
fn inline_size(context: &Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for the type’s alignment. Must be a multiple of
inline_align
.§fn supports_simple_copy() -> boolwhere
Self: Sized,
fn supports_simple_copy() -> boolwhere Self: Sized,
Returns true iff the type can be encoded or decoded via simple copy. Read more
source§impl Ord for NodeError
impl Ord for NodeError
source§impl PartialEq<NodeError> for NodeError
impl PartialEq<NodeError> for NodeError
source§impl PartialOrd<NodeError> for NodeError
impl PartialOrd<NodeError> for NodeError
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for NodeError
impl Eq for NodeError
impl StructuralEq for NodeError
impl StructuralPartialEq for NodeError
Auto Trait Implementations§
impl RefUnwindSafe for NodeError
impl Send for NodeError
impl Sync for NodeError
impl Unpin for NodeError
impl UnwindSafe for NodeError
Blanket Implementations§
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> LayoutObject for Twhere
T: Layout,
impl<T> LayoutObject for Twhere T: Layout,
§fn inline_align(&self, context: &Context) -> usize
fn inline_align(&self, context: &Context) -> usize
See
Layout::inline_align
.§fn inline_size(&self, context: &Context) -> usize
fn inline_size(&self, context: &Context) -> usize
See
Layout::inline_size
.