Skip to main content

Module types

Module types 

Source
Expand description

Capture types module.

This module contains all type definitions for the capture engine, organized into logical submodules for better maintainability.

§Organization

Types are organized by their functional area:

  • allocation: Memory allocation tracking types
  • smart_pointer: Smart pointer tracking (Rc, Arc, Box)
  • error: Error types for tracking operations
  • stats: Memory statistics and analysis
  • scope: Scope tracking and lifecycle
  • memory_layout: Memory layout analysis
  • generic: Generic type tracking
  • dynamic_type: Dynamic type (trait object) tracking
  • runtime_state: Runtime state information
  • fragmentation: Memory fragmentation analysis
  • ownership: Ownership hierarchy tracking
  • drop_chain: Drop chain analysis
  • leak_detection: Memory leak detection
  • timeline: Timeline visualization types
  • access_tracking: Memory access pattern tracking
  • stack: Stack allocation tracking
  • temporary: Temporary object tracking
  • tracking: Function call tracking

Re-exports§

pub use access_tracking::AccessPattern;
pub use access_tracking::AccessPatternType;
pub use access_tracking::AddressRange;
pub use access_tracking::BandwidthBottleneck;
pub use access_tracking::BandwidthBottleneckLocation;
pub use access_tracking::BandwidthUtilization;
pub use access_tracking::CacheAccessInfo;
pub use access_tracking::CacheLatencyBreakdown;
pub use access_tracking::ImplementationDifficulty;
pub use access_tracking::LocalityMetrics;
pub use access_tracking::MemoryAccessEvent;
pub use access_tracking::MemoryAccessPerformanceImpact;
pub use access_tracking::MemoryAccessStatistics;
pub use access_tracking::MemoryAccessTrackingInfo;
pub use access_tracking::MemoryAccessType;
pub use access_tracking::MemoryOptimizationRecommendation;
pub use access_tracking::MemoryOptimizationType;
pub use access_tracking::StridePattern;
pub use allocation::AllocationInfo;
pub use allocation::BorrowInfo;
pub use allocation::BottleneckType;
pub use allocation::CloneInfo;
pub use allocation::ContextPerformanceMetrics;
pub use allocation::ContextType;
pub use allocation::HotPath;
pub use allocation::ImpactLevel;
pub use allocation::ImplementationDifficulty as AllocImplDifficulty;
pub use allocation::OptimizationRecommendation;
pub use allocation::PerformanceBottleneck;
pub use allocation::PerformanceSnapshot;
pub use allocation::Priority;
pub use allocation::RecommendationType;
pub use allocation::TypePerformanceImpact;
pub use allocation::TypeUsageInfo;
pub use allocation::UsageContext;
pub use allocation::UsageTimePoint;
pub use drop_chain::CleanupAction;
pub use drop_chain::CleanupActionType;
pub use drop_chain::DropBottleneckType;
pub use drop_chain::DropChainAnalysis;
pub use drop_chain::DropChainNode;
pub use drop_chain::DropChainPerformanceMetrics;
pub use drop_chain::DropImplementationType;
pub use drop_chain::DropPerformanceBottleneck;
pub use drop_chain::DropPerformanceCharacteristics;
pub use dynamic_type::DispatchOverhead;
pub use dynamic_type::DynamicTypeInfo;
pub use dynamic_type::PerformanceImpact;
pub use dynamic_type::TypeErasureInfo;
pub use dynamic_type::VTableInfo;
pub use dynamic_type::VTableMethod;
pub use error::TrackingError;
pub use error::TrackingResult;
pub use fragmentation::BlockSizeRange;
pub use fragmentation::EnhancedFragmentationAnalysis;
pub use fragmentation::FragmentationCause;
pub use fragmentation::FragmentationCauseType;
pub use fragmentation::FragmentationMetrics;
pub use fragmentation::FragmentationSeverity;
pub use generic::BranchPredictionImpact;
pub use generic::CacheImpact;
pub use generic::CodeBloatLevel;
pub use generic::CompilationImpact;
pub use generic::ConcreteTypeParameter;
pub use generic::ConstraintType;
pub use generic::GenericConstraint;
pub use generic::GenericInstantiationInfo;
pub use generic::GenericTypeInfo;
pub use generic::MemoryImpact;
pub use generic::MonomorphizationInfo;
pub use generic::OptimizationDifficulty;
pub use generic::PerformanceCharacteristics;
pub use generic::SourceLocation;
pub use generic::TypeCategory;
pub use generic::TypeParameter;
pub use leak_detection::EnhancedPotentialLeak;
pub use leak_detection::LeakEvidence;
pub use leak_detection::LeakEvidenceType;
pub use leak_detection::LeakImpact;
pub use leak_detection::LeakPreventionRecommendation;
pub use leak_detection::LeakPreventionType;
pub use leak_detection::LeakRiskLevel;
pub use leak_detection::LeakType;
pub use leak_detection::ResourceLeakAnalysis;
pub use leak_detection::ResourcePatternType;
pub use leak_detection::ResourceUsagePattern;
pub use lifecycle::BorrowState;
pub use lifecycle::EventPerformanceMetrics;
pub use lifecycle::LifecycleEfficiencyMetrics;
pub use lifecycle::LifecycleEvent;
pub use lifecycle::LifecycleEventType;
pub use lifecycle::LifecyclePattern;
pub use lifecycle::LifecyclePatternType;
pub use lifecycle::LifecycleStageDurations;
pub use lifecycle::MemoryLocationType;
pub use lifecycle::MemoryState;
pub use lifecycle::ObjectLifecycleInfo;
pub use lifecycle::ResourceWasteAssessment;
pub use lifecycle::SimpleLifecyclePattern;
pub use memory_layout::AccessEfficiency;
pub use memory_layout::CapacityUtilization;
pub use memory_layout::ContainerAnalysis;
pub use memory_layout::ContainerEfficiencyMetrics;
pub use memory_layout::ContainerType;
pub use memory_layout::FieldLayoutInfo;
pub use memory_layout::GrowthPattern;
pub use memory_layout::LayoutEfficiency;
pub use memory_layout::MemoryLayoutInfo;
pub use memory_layout::OptimizationPotential;
pub use memory_layout::PaddingAnalysis;
pub use memory_layout::PaddingLocation;
pub use memory_layout::PaddingReason;
pub use memory_layout::ReallocationFrequency;
pub use memory_layout::ReallocationPatterns;
pub use memory_layout::UtilizationEfficiency;
pub use ownership::ChildTypeInfo;
pub use ownership::CircularReferenceInfo;
pub use ownership::CircularReferenceType;
pub use ownership::ComposedTypeInfo;
pub use ownership::CompositionType;
pub use ownership::OwnershipHierarchy;
pub use ownership::OwnershipNode;
pub use ownership::OwnershipTransferEvent;
pub use ownership::OwnershipTransferType;
pub use ownership::OwnershipType;
pub use ownership::ParentTypeInfo;
pub use ownership::RelationshipType;
pub use ownership::TypeRelationshipInfo;
pub use ownership::WeakReferenceInfo;
pub use ownership::WeakReferenceType;
pub use runtime_state::AllocatorStateInfo;
pub use runtime_state::CachePerformanceInfo;
pub use runtime_state::CpuUsageInfo;
pub use runtime_state::GcInfo;
pub use runtime_state::MemoryAccessPattern;
pub use runtime_state::MemoryPressureInfo;
pub use runtime_state::MemoryPressureLevel;
pub use runtime_state::RuntimeStateInfo;
pub use scope::AllocationEventType;
pub use scope::BorrowEvent;
pub use scope::GrowthEvent;
pub use scope::GrowthReason;
pub use scope::MoveEvent;
pub use scope::PotentialLeak;
pub use scope::RiskDistribution;
pub use scope::ScopeAnalysis;
pub use scope::ScopeEventType;
pub use scope::ScopeHierarchy;
pub use scope::ScopeInfo;
pub use scope::ScopeLifecycleMetrics;
pub use scope::TypeLifecyclePattern;
pub use scope::VariableRelationship;
pub use smart_pointer::RefCountSnapshot;
pub use smart_pointer::SmartPointerInfo;
pub use smart_pointer::SmartPointerType;
pub use stack::ScopeType;
pub use stack::StackAllocationInfo;
pub use stack::StackScopeInfo;
pub use stats::ConcurrencyAnalysis;
pub use stats::FragmentationAnalysis as StatsFragmentationAnalysis;
pub use stats::LibraryUsage;
pub use stats::MemoryStats;
pub use stats::MemoryTypeInfo;
pub use stats::SystemLibraryStats;
pub use stats::TypeMemoryUsage;
pub use temporary::CreationContext;
pub use temporary::ExpressionType;
pub use temporary::TemporaryObjectInfo;
pub use temporary::TemporaryUsagePattern;
pub use timeline::AllocationEvent;
pub use timeline::AllocationHotspot;
pub use timeline::AllocationPattern;
pub use timeline::HotspotLocation;
pub use timeline::MemorySnapshot;
pub use timeline::SafetyViolation;
pub use timeline::StackFrame;
pub use timeline::StackTraceData;
pub use timeline::StackTraceHotspot;
pub use timeline::TimeRange;
pub use timeline::TimelineData;
pub use tracking::CallPattern;
pub use tracking::CallPatternType;
pub use tracking::CallSequence;
pub use tracking::CallStackInfo;
pub use tracking::ConcurrencyCharacteristics;
pub use tracking::DeadlockRisk;
pub use tracking::FunctionCallTrackingInfo;
pub use tracking::FunctionMemoryCharacteristics;
pub use tracking::FunctionPerformanceCharacteristics;
pub use tracking::IOCharacteristics;
pub use tracking::LeakPotential;
pub use tracking::MemoryUsagePattern;
pub use tracking::RecursionPerformanceImpact;
pub use tracking::RecursiveCallInfo;
pub use tracking::StackOverflowRisk;
pub use tracking::ThreadSafetyLevel;

Modules§

access_tracking
Memory access tracking types.
allocation
Allocation types for memory tracking.
drop_chain
Drop chain analysis types.
dynamic_type
Dynamic type tracking types.
error
Error types for memory tracking operations.
fragmentation
Fragmentation analysis types.
generic
Generic type tracking types.
leak_detection
Leak detection types.
lifecycle
Object lifecycle tracking types.
memory_layout
Memory layout analysis types.
ownership
Ownership tracking types.
runtime_state
Runtime state tracking types.
scope
Scope tracking types.
smart_pointer
Smart pointer tracking types.
stack
Stack allocation tracking types.
stats
Memory statistics types.
temporary
Temporary object tracking types.
timeline
Timeline tracking types.
tracking
Function call tracking types.