pub struct LifecycleAnalyzer { /* private fields */ }
Expand description
Advanced lifecycle analysis for Rust types
Implementations§
Source§impl LifecycleAnalyzer
impl LifecycleAnalyzer
Sourcepub fn record_drop_event(&self, ptr: usize, type_name: &str, custom_drop: bool)
pub fn record_drop_event(&self, ptr: usize, type_name: &str, custom_drop: bool)
Record a Drop trait execution
Sourcepub fn detect_raii_patterns(
&self,
allocations: &[AllocationInfo],
) -> Vec<RAIIPattern>
pub fn detect_raii_patterns( &self, allocations: &[AllocationInfo], ) -> Vec<RAIIPattern>
Detect RAII patterns in allocations
Sourcepub fn track_borrow(&self, ptr: usize, borrow_type: BorrowType, location: &str)
pub fn track_borrow(&self, ptr: usize, borrow_type: BorrowType, location: &str)
Track borrow operations
Sourcepub fn track_borrow_release(&self, ptr: usize, borrow_id: u64)
pub fn track_borrow_release(&self, ptr: usize, borrow_id: u64)
Track borrow release
Sourcepub fn analyze_closure_capture(
&self,
closure_ptr: usize,
captured_vars: Vec<CapturedVariable>,
)
pub fn analyze_closure_capture( &self, closure_ptr: usize, captured_vars: Vec<CapturedVariable>, )
Analyze closure captures
Sourcepub fn get_lifecycle_report(&self) -> LifecycleAnalysisReport
pub fn get_lifecycle_report(&self) -> LifecycleAnalysisReport
Get comprehensive lifecycle analysis report
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for LifecycleAnalyzer
impl RefUnwindSafe for LifecycleAnalyzer
impl Send for LifecycleAnalyzer
impl Sync for LifecycleAnalyzer
impl Unpin for LifecycleAnalyzer
impl UnwindSafe for LifecycleAnalyzer
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> 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