pub enum LabelError {
DuplicateLabelInScope(String),
DuplicateLabelAcrossSiblings(String),
JumpTargetTooLarge {
label: String,
target: usize,
opcode: String,
},
}Expand description
Error type for label operations
Variants§
DuplicateLabelInScope(String)
A label was defined multiple times in the same scope
DuplicateLabelAcrossSiblings(String)
A label is defined in multiple sibling scopes, creating ambiguity
JumpTargetTooLarge
A jump target is too large for the specified opcode
Trait Implementations§
Source§impl Clone for LabelError
impl Clone for LabelError
Source§impl Debug for LabelError
impl Debug for LabelError
Source§impl Display for LabelError
impl Display for LabelError
impl Eq for LabelError
Source§impl Error for LabelError
impl Error for LabelError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for LabelError
impl PartialEq for LabelError
impl StructuralPartialEq for LabelError
Auto Trait Implementations§
impl Freeze for LabelError
impl RefUnwindSafe for LabelError
impl Send for LabelError
impl Sync for LabelError
impl Unpin for LabelError
impl UnsafeUnpin for LabelError
impl UnwindSafe for LabelError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<S, T> Upcast<T> for S
impl<S, T> Upcast<T> for S
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 56 bytes
Size for each variant:
DuplicateLabelInScope: 32 bytesDuplicateLabelAcrossSiblings: 32 bytesJumpTargetTooLarge: 56 bytes