pub struct TailCallInfo {
pub self_tail_calls: u32,
pub external_tails: Vec<String>,
pub is_tail_recursive: bool,
}Expand description
Result of tail-call analysis for a BEAM function.
Fields§
§self_tail_calls: u32Number of self-recursive tail calls found
external_tails: Vec<String>Names of external functions called in tail position
is_tail_recursive: boolWhether the function is tail-recursive (pure loop)
Implementations§
Source§impl TailCallInfo
impl TailCallInfo
Sourcepub fn add_self_tail(&mut self)
pub fn add_self_tail(&mut self)
Record a self-recursive tail call.
Sourcepub fn add_external_tail(&mut self, name: impl Into<String>)
pub fn add_external_tail(&mut self, name: impl Into<String>)
Record an external tail call.
Sourcepub fn has_tail_calls(&self) -> bool
pub fn has_tail_calls(&self) -> bool
Returns true if there are any tail calls.
Trait Implementations§
Source§impl Clone for TailCallInfo
impl Clone for TailCallInfo
Source§fn clone(&self) -> TailCallInfo
fn clone(&self) -> TailCallInfo
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 TailCallInfo
impl Debug for TailCallInfo
Source§impl Default for TailCallInfo
impl Default for TailCallInfo
Source§fn default() -> TailCallInfo
fn default() -> TailCallInfo
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for TailCallInfo
impl RefUnwindSafe for TailCallInfo
impl Send for TailCallInfo
impl Sync for TailCallInfo
impl Unpin for TailCallInfo
impl UnsafeUnpin for TailCallInfo
impl UnwindSafe for TailCallInfo
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