[][src]Struct falcon::il::Intrinsic

pub struct Intrinsic { /* fields omitted */ }

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]

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]

impl Display for Intrinsic[src]

impl Eq for Intrinsic[src]

impl Hash for Intrinsic[src]

impl Ord for Intrinsic[src]

impl PartialEq<Intrinsic> for Intrinsic[src]

impl PartialOrd<Intrinsic> for Intrinsic[src]

impl Serialize for Intrinsic[src]

impl StructuralEq for Intrinsic[src]

impl StructuralPartialEq for Intrinsic[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.