pub struct ArchitecturalPatternDetector;Expand description
Detects architectural patterns in a codebase
Implementations§
Source§impl ArchitecturalPatternDetector
impl ArchitecturalPatternDetector
Sourcepub fn detect_layered_architecture(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_layered_architecture( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects layered architecture pattern
Layered architecture is characterized by:
- Domain layer (business logic)
- Application layer (use cases, services)
- Infrastructure layer (persistence, external services)
- Interfaces layer (API, CLI, UI)
Sourcepub fn detect_microservices_pattern(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_microservices_pattern( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects microservices pattern
Microservices architecture is characterized by:
- Multiple service modules/directories
- Service-specific configuration files
- Independent deployment units
Sourcepub fn detect_event_driven_pattern(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_event_driven_pattern( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects event-driven architecture pattern
Event-driven architecture is characterized by:
- Event definitions and handlers
- Pub/sub or message broker patterns
- Event sourcing patterns
Sourcepub fn detect_monolithic_pattern(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_monolithic_pattern( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects monolithic architecture pattern
Monolithic architecture is characterized by:
- Single entry point
- Tightly coupled modules
- No service separation
Sourcepub fn detect_serverless_pattern(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_serverless_pattern( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects serverless architecture pattern
Serverless architecture is characterized by:
- Function definitions (Lambda, Cloud Functions, etc.)
- Serverless configuration files
- Event-driven function triggers
Sourcepub fn detect_plugin_architecture(
scan_result: &ScanResult,
) -> Result<Option<DetectedPattern>, ResearchError>
pub fn detect_plugin_architecture( scan_result: &ScanResult, ) -> Result<Option<DetectedPattern>, ResearchError>
Detects plugin architecture pattern
Plugin architecture is characterized by:
- Plugin directories/modules
- Plugin interface definitions
- Plugin loader/registry
Auto Trait Implementations§
impl Freeze for ArchitecturalPatternDetector
impl RefUnwindSafe for ArchitecturalPatternDetector
impl Send for ArchitecturalPatternDetector
impl Sync for ArchitecturalPatternDetector
impl Unpin for ArchitecturalPatternDetector
impl UnwindSafe for ArchitecturalPatternDetector
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