#[non_exhaustive]pub enum CallTarget {
Internal {
method: MethodRef,
},
MethodToken {
index: u16,
hash_le: String,
hash_be: String,
method: String,
parameters_count: u16,
has_return_value: bool,
call_flags: u8,
},
Syscall {
hash: u32,
name: Option<String>,
returns_value: bool,
},
Indirect {
opcode: String,
operand: Option<u16>,
},
UnresolvedInternal {
target: isize,
},
}Expand description
A resolved call target extracted from the instruction stream.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Internal
Direct call into the same script (CALL/CALL_L).
MethodToken
Call to an entry in the NEF method-token table (CALLT).
Fields
Syscall
System call (SYSCALL).
Fields
Indirect
Indirect call (e.g., CALLA) where the destination cannot be resolved statically.
Fields
UnresolvedInternal
A CALL/CALL_L target that could not be resolved to a valid offset.
Trait Implementations§
Source§impl Clone for CallTarget
impl Clone for CallTarget
Source§fn clone(&self) -> CallTarget
fn clone(&self) -> CallTarget
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 CallTarget
impl Debug for CallTarget
Source§impl PartialEq for CallTarget
impl PartialEq for CallTarget
Source§impl Serialize for CallTarget
impl Serialize for CallTarget
impl Eq for CallTarget
impl StructuralPartialEq for CallTarget
Auto Trait Implementations§
impl Freeze for CallTarget
impl RefUnwindSafe for CallTarget
impl Send for CallTarget
impl Sync for CallTarget
impl Unpin for CallTarget
impl UnsafeUnpin for CallTarget
impl UnwindSafe for CallTarget
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.