pub struct VariableRegistry;
Expand description
Variable Registry - manages variable address to name mappings
Implementations§
Source§impl VariableRegistry
impl VariableRegistry
Sourcepub fn register_variable(
address: usize,
var_name: String,
type_name: String,
size: usize,
) -> TrackingResult<()>
pub fn register_variable( address: usize, var_name: String, type_name: String, size: usize, ) -> TrackingResult<()>
Register a variable with its address and information
Sourcepub fn get_variable_info(address: usize) -> Option<VariableInfo>
pub fn get_variable_info(address: usize) -> Option<VariableInfo>
Get variable information by address
Sourcepub fn mark_variable_destroyed(
address: usize,
destruction_time: u64,
) -> TrackingResult<()>
pub fn mark_variable_destroyed( address: usize, destruction_time: u64, ) -> TrackingResult<()>
Mark a variable as destroyed with destruction timestamp
Sourcepub fn get_all_variables() -> HashMap<usize, VariableInfo>
pub fn get_all_variables() -> HashMap<usize, VariableInfo>
Get all variable mappings
Sourcepub fn enhance_allocations_with_registry(
allocations: &[AllocationInfo],
) -> Vec<Value>
pub fn enhance_allocations_with_registry( allocations: &[AllocationInfo], ) -> Vec<Value>
Enhance tracker allocations with variable names from registry (optimized with parallel processing)
Sourcepub fn infer_allocation_info_cached(alloc: &AllocationInfo) -> (String, String)
pub fn infer_allocation_info_cached(alloc: &AllocationInfo) -> (String, String)
Smart inference with caching for better performance
Sourcepub fn infer_allocation_info(alloc: &AllocationInfo) -> (String, String)
pub fn infer_allocation_info(alloc: &AllocationInfo) -> (String, String)
Smart inference for system allocations based on size patterns and common allocations
Sourcepub fn generate_comprehensive_export(
tracker: &MemoryTracker,
) -> TrackingResult<Value>
pub fn generate_comprehensive_export( tracker: &MemoryTracker, ) -> TrackingResult<Value>
Generate comprehensive export data with clear separation of system vs user allocations
Sourcepub fn clear_registry() -> TrackingResult<()>
pub fn clear_registry() -> TrackingResult<()>
Clear all variable registrations
Auto Trait Implementations§
impl Freeze for VariableRegistry
impl RefUnwindSafe for VariableRegistry
impl Send for VariableRegistry
impl Sync for VariableRegistry
impl Unpin for VariableRegistry
impl UnwindSafe for VariableRegistry
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