pub struct TraitExplorerFactory { /* private fields */ }Expand description
Comprehensive trait explorer factory that integrates all analysis modules
This factory provides a unified interface to all trait analysis capabilities, coordinating between the different specialized modules to provide comprehensive trait exploration and analysis.
§Example
use sklears_core::trait_explorer::{TraitExplorerFactory, IntegratedAnalysisConfig};
let config = IntegratedAnalysisConfig::comprehensive();
let factory = TraitExplorerFactory::new(config);
// Perform integrated analysis
let analysis = factory.comprehensive_analysis("Estimator")?;
println!("Performance impact: {:?}", analysis.performance);
println!("Security analysis: {:?}", analysis.security);
println!("Platform compatibility: {:?}", analysis.platform_compatibility);
println!("ML recommendations: {:?}", analysis.recommendations);Implementations§
Source§impl TraitExplorerFactory
impl TraitExplorerFactory
Sourcepub fn new(config: IntegratedAnalysisConfig) -> Self
pub fn new(config: IntegratedAnalysisConfig) -> Self
Create a new trait explorer factory with the given configuration
Sourcepub fn comprehensive() -> Self
pub fn comprehensive() -> Self
Create a factory with default comprehensive configuration
Sourcepub fn performance_focused() -> Self
pub fn performance_focused() -> Self
Create a factory optimized for performance analysis
Sourcepub fn security_focused() -> Self
pub fn security_focused() -> Self
Create a factory optimized for security analysis
Sourcepub fn comprehensive_analysis(
&mut self,
trait_name: &str,
) -> Result<ComprehensiveAnalysisResult>
pub fn comprehensive_analysis( &mut self, trait_name: &str, ) -> Result<ComprehensiveAnalysisResult>
Perform comprehensive analysis of a trait using all available modules
Sourcepub fn trait_registry(&self) -> &TraitRegistry
pub fn trait_registry(&self) -> &TraitRegistry
Get trait registry for direct access
Sourcepub fn trait_registry_mut(&mut self) -> &mut TraitRegistry
pub fn trait_registry_mut(&mut self) -> &mut TraitRegistry
Get trait registry for mutable access
Sourcepub fn load_traits_from_crate(&mut self, crate_name: &str) -> Result<usize>
pub fn load_traits_from_crate(&mut self, crate_name: &str) -> Result<usize>
Load traits from a crate into the registry
Sourcepub fn batch_analyze(
&mut self,
trait_names: &[String],
) -> Result<BatchAnalysisResult>
pub fn batch_analyze( &mut self, trait_names: &[String], ) -> Result<BatchAnalysisResult>
Batch analyze multiple traits efficiently
Sourcepub fn compare_traits(
&mut self,
trait_names: &[String],
) -> Result<TraitComparisonResult>
pub fn compare_traits( &mut self, trait_names: &[String], ) -> Result<TraitComparisonResult>
Compare multiple traits across all analysis dimensions
Auto Trait Implementations§
impl Freeze for TraitExplorerFactory
impl RefUnwindSafe for TraitExplorerFactory
impl Send for TraitExplorerFactory
impl Sync for TraitExplorerFactory
impl Unpin for TraitExplorerFactory
impl UnwindSafe for TraitExplorerFactory
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
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>
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>
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