[−][src]Struct falcon::il::Intrinsic
An Instrinsic is a lifted instruction Falcon cannot model.
Methods
impl Intrinsic
[src]
pub fn new<S: Into<String>, SS: Into<String>>(
mnemonic: S,
instruction_str: SS,
arguments: Vec<Expression>,
written_expressions: Option<Vec<Expression>>,
read_expressions: Option<Vec<Expression>>,
bytes: Vec<u8>
) -> Intrinsic
[src]
mnemonic: S,
instruction_str: SS,
arguments: Vec<Expression>,
written_expressions: Option<Vec<Expression>>,
read_expressions: Option<Vec<Expression>>,
bytes: Vec<u8>
) -> Intrinsic
Create a new intrinsic instruction.
pub fn mnemonic(&self) -> &str
[src]
Get the mnemonic for the instruction this intrinsic represents.
pub fn instruction_str(&self) -> &str
[src]
Get the full disassembly string, mnemonic and operands, for the instruction this intrinsic represents.
pub fn arguments(&self) -> &[Expression]
[src]
Get the arguments for the intrinsic. Intrinsic-dependent.
pub fn written_expressions(&self) -> Option<&[Expression]>
[src]
Get the expressions which are written by this intrinsic.
If this is None, the expressions written by this intrinsic are undefined, and for soundness you should assume the intrinsic does anything.
pub fn written_expressions_mut(&mut self) -> Option<&mut [Expression]>
[src]
Get a mutable reference to the expressions which are written by this intrinsic.
Caveats for written_expressions
apply here.
pub fn read_expressions(&self) -> Option<&[Expression]>
[src]
Get the expressions which are read by this intrinsic.
If this is None, the expressions read by this intrinsic are undefined, and for soundness you should assume the intrinsic reads any expression.
pub fn read_expressions_mut(&mut self) -> Option<&mut [Expression]>
[src]
Get a mutable reference to the expressions which are read by this intrinsic.
Caveats for read_expressions
apply here.
pub fn scalars_written(&self) -> Option<Vec<&Scalar>>
[src]
Get the scalars which are written by this intrinsic.
These are the scalars contained in the written expressions. Caveats for
written_expressions
apply here.
pub fn scalars_written_mut(&mut self) -> Option<Vec<&mut Scalar>>
[src]
Get a mutable reference to the scalars written by this intrinsic.
This is a mutable reference to the scalars contained in the written
expressions. Caveats for written_expressions
apply here.
pub fn scalars_read(&self) -> Option<Vec<&Scalar>>
[src]
Get the scalared read by this intrinsic.
These are the scalars in the expressions read by this intrinsic.
Caveats for read_expressions
apply here.
pub fn scalars_read_mut(&mut self) -> Option<Vec<&mut Scalar>>
[src]
Get a mutable reference to the scalars written by this inrinsic.
These are the scalars in the expression written by this intrinsic.
Caveats for read_expressions
apply here.
pub fn bytes(&self) -> &[u8]
[src]
Get the bytes which make up this instruction.
These are the undisassembled bytes, as found in the lifted binary.
Trait Implementations
impl Clone for Intrinsic
[src]
impl Debug for Intrinsic
[src]
impl<'de> Deserialize<'de> for Intrinsic
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Display for Intrinsic
[src]
impl Eq for Intrinsic
[src]
impl Hash for Intrinsic
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for Intrinsic
[src]
fn cmp(&self, other: &Intrinsic) -> Ordering
[src]
#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self
[src]
impl PartialEq<Intrinsic> for Intrinsic
[src]
impl PartialOrd<Intrinsic> for Intrinsic
[src]
fn partial_cmp(&self, other: &Intrinsic) -> Option<Ordering>
[src]
fn lt(&self, other: &Intrinsic) -> bool
[src]
fn le(&self, other: &Intrinsic) -> bool
[src]
fn gt(&self, other: &Intrinsic) -> bool
[src]
fn ge(&self, other: &Intrinsic) -> bool
[src]
impl Serialize for Intrinsic
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralEq for Intrinsic
[src]
impl StructuralPartialEq for Intrinsic
[src]
Auto Trait Implementations
impl RefUnwindSafe for Intrinsic
impl Send for Intrinsic
impl Sync for Intrinsic
impl Unpin for Intrinsic
impl UnwindSafe for Intrinsic
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,