pub enum PatternExpression {
Show 18 variants
TokenField {
big_endian: bool,
sign_bit: bool,
bit_start: usize,
bit_end: usize,
byte_start: usize,
byte_end: usize,
shift: u32,
},
ContextField {
sign_bit: bool,
bit_start: usize,
bit_end: usize,
byte_start: usize,
byte_end: usize,
shift: u32,
},
Constant {
value: i64,
},
Operand {
index: usize,
table_id: usize,
constructor_id: usize,
},
StartInstruction,
EndInstruction,
Next2Instruction,
Plus(Box<Self>, Box<Self>),
Sub(Box<Self>, Box<Self>),
Mult(Box<Self>, Box<Self>),
LeftShift(Box<Self>, Box<Self>),
RightShift(Box<Self>, Box<Self>),
And(Box<Self>, Box<Self>),
Or(Box<Self>, Box<Self>),
Xor(Box<Self>, Box<Self>),
Div(Box<Self>, Box<Self>),
Minus(Box<Self>),
Not(Box<Self>),
}Variants§
TokenField
Fields
ContextField
Constant
Operand
StartInstruction
EndInstruction
Next2Instruction
Plus(Box<Self>, Box<Self>)
Sub(Box<Self>, Box<Self>)
Mult(Box<Self>, Box<Self>)
LeftShift(Box<Self>, Box<Self>)
RightShift(Box<Self>, Box<Self>)
And(Box<Self>, Box<Self>)
Or(Box<Self>, Box<Self>)
Xor(Box<Self>, Box<Self>)
Div(Box<Self>, Box<Self>)
Minus(Box<Self>)
Not(Box<Self>)
Implementations§
Source§impl PatternExpression
impl PatternExpression
pub fn min_value(&self) -> Option<i64>
pub fn max_value(&self) -> Option<i64>
pub fn value_with<'b, 'c, 'z>( &'b self, walker: &mut ParserWalker<'b, 'c, 'z>, symbols: &'b SymbolTable, ) -> Result<(i64, Option<Range<u32>>), Error>
pub fn value<'b, 'c, 'z>( &'b self, walker: &mut ParserWalker<'b, 'c, 'z>, symbols: &'b SymbolTable, ) -> Result<i64, Error>
pub fn from_xml(input: Node<'_, '_>) -> Result<Self, DeserialiseError>
Trait Implementations§
Source§impl Clone for PatternExpression
impl Clone for PatternExpression
Source§fn clone(&self) -> PatternExpression
fn clone(&self) -> PatternExpression
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PatternExpression
impl Debug for PatternExpression
Source§impl<'de> Deserialize<'de> for PatternExpression
impl<'de> Deserialize<'de> for PatternExpression
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for PatternExpression
impl PartialEq for PatternExpression
Source§impl Serialize for PatternExpression
impl Serialize for PatternExpression
impl Eq for PatternExpression
impl StructuralPartialEq for PatternExpression
Auto Trait Implementations§
impl Freeze for PatternExpression
impl RefUnwindSafe for PatternExpression
impl Send for PatternExpression
impl Sync for PatternExpression
impl Unpin for PatternExpression
impl UnwindSafe for PatternExpression
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> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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<'z, T, U> IntoSpace<'z, T> for Uwhere
T: FromSpace<'z, U>,
impl<'z, T, U> IntoSpace<'z, T> for Uwhere
T: FromSpace<'z, U>,
fn into_space(self, manager: &SpaceManager) -> T
fn into_space_with(self, arena: &'z IRBuilderArena, manager: &SpaceManager) -> T
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.