pub struct FunctionInlineInfo {
pub statement_count: usize,
pub call_count: usize,
pub is_recursive: bool,
pub has_complex_control_flow: bool,
pub has_multiple_returns: bool,
pub decision: InlineDecision,
}Expand description
Analysis result for a function’s inlineability.
Fields§
§statement_count: usizeNumber of statements in the function body.
call_count: usizeNumber of call sites for this function.
is_recursive: boolWhether the function is recursive (directly or indirectly).
has_complex_control_flow: boolWhether the function has complex control flow.
has_multiple_returns: boolWhether the function has multiple return points.
decision: InlineDecisionThe inlining decision for this function.
Trait Implementations§
Source§impl Clone for FunctionInlineInfo
impl Clone for FunctionInlineInfo
Source§fn clone(&self) -> FunctionInlineInfo
fn clone(&self) -> FunctionInlineInfo
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 FunctionInlineInfo
impl Debug for FunctionInlineInfo
Source§impl Default for FunctionInlineInfo
impl Default for FunctionInlineInfo
Source§fn default() -> FunctionInlineInfo
fn default() -> FunctionInlineInfo
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for FunctionInlineInfo
impl RefUnwindSafe for FunctionInlineInfo
impl Send for FunctionInlineInfo
impl Sync for FunctionInlineInfo
impl Unpin for FunctionInlineInfo
impl UnsafeUnpin for FunctionInlineInfo
impl UnwindSafe for FunctionInlineInfo
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<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more