Skip to main content

ClassResolver

Trait ClassResolver 

Source
pub trait ClassResolver: Send + Sync {
    // Required method
    fn resolve(&self, fqcn: &str) -> Option<PathBuf>;
}
Expand description

Pluggable strategy for mapping a fully-qualified class name to the file that should define it. The analyzer never touches vendor/ or the filesystem on its own — it asks a ClassResolver when a symbol is needed.

mir_analyzer::Psr4Map is the built-in implementation for Composer-based projects. Consumers with non-Composer conventions (WordPress, Drupal, a custom autoloader, a workspace-walk index) supply their own.

Required Methods§

Source

fn resolve(&self, fqcn: &str) -> Option<PathBuf>

Resolve fqcn to the file that defines it. Returning None causes the analyzer to fall back to emitting UndefinedClass.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§