Dependency

Trait Dependency 

Source
pub trait Dependency: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn name_range(&self) -> Range;
    fn version_requirement(&self) -> Option<&str>;
    fn version_range(&self) -> Option<Range>;
    fn source(&self) -> DependencySource;
    fn as_any(&self) -> &dyn Any;

    // Provided method
    fn features(&self) -> &[String] { ... }
}
Expand description

Generic dependency trait.

All parsed dependencies must implement this for generic handler access.

Required Methods§

Source

fn name(&self) -> &str

Package name

Source

fn name_range(&self) -> Range

LSP range of the dependency name

Source

fn version_requirement(&self) -> Option<&str>

Version requirement string (e.g., “^1.0”, “>=2.0”)

Source

fn version_range(&self) -> Option<Range>

LSP range of the version string

Source

fn source(&self) -> DependencySource

Dependency source (registry, git, path)

Source

fn as_any(&self) -> &dyn Any

Downcast to concrete type

Provided Methods§

Source

fn features(&self) -> &[String]

Feature flags (ecosystem-specific, empty if not supported)

Implementors§