pub struct ProfilingReport {
pub metrics: HashMap<String, FunctionMetrics>,
pub hot_paths: Vec<HotPath>,
pub predictions: Vec<PerformancePrediction>,
pub total_instructions: usize,
pub total_allocations: usize,
pub annotations: Vec<ProfilingAnnotation>,
}Expand description
Profiling report containing all analysis results
Fields§
§metrics: HashMap<String, FunctionMetrics>Function-level metrics
hot_paths: Vec<HotPath>Detected hot paths
predictions: Vec<PerformancePrediction>Performance predictions
total_instructions: usizeTotal instruction count estimate
total_allocations: usizeTotal allocation count estimate
annotations: Vec<ProfilingAnnotation>Profiling annotations for code generation
Implementations§
Source§impl ProfilingReport
impl ProfilingReport
Sourcepub fn format_report(&self) -> String
pub fn format_report(&self) -> String
Format the report for display
Sourcepub fn generate_flamegraph_data(&self) -> String
pub fn generate_flamegraph_data(&self) -> String
Generate flame graph data in collapsed format
Sourcepub fn generate_perf_annotations(&self) -> String
pub fn generate_perf_annotations(&self) -> String
Generate perf-compatible annotations
Trait Implementations§
Source§impl Clone for ProfilingReport
impl Clone for ProfilingReport
Source§fn clone(&self) -> ProfilingReport
fn clone(&self) -> ProfilingReport
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 moreAuto Trait Implementations§
impl Freeze for ProfilingReport
impl RefUnwindSafe for ProfilingReport
impl Send for ProfilingReport
impl Sync for ProfilingReport
impl Unpin for ProfilingReport
impl UnsafeUnpin for ProfilingReport
impl UnwindSafe for ProfilingReport
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> 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