Skip to main content

complete_versions_generic_from

Function complete_versions_generic_from 

Source
pub async fn complete_versions_generic_from(
    registry: &dyn Registry,
    package_name: &PackageName,
    source: &DependencySource,
    prefix: &str,
    operator_chars: &[char],
    freshness: FreshnessSettings,
) -> Vec<CompletionItem>
Expand description

Like complete_versions_generic, but resolves through crate::Registry::get_versions_from.

Routes on source, so a registry that routes a dependency’s fetch across more than one underlying index (e.g. a per-instance-host AlternateRegistry, GitLab CI’s deps-gitlab-ci) completes against the correct index instead of falling back to a source-unaware default.

complete_versions_generic delegates to this with crate::parser::DependencySource::Registry — behavior-preserving for every one of its 18 existing call sites, all of which pass a plain registry-resolved dependency: this is exactly the source crate::Registry::get_versions_from’s default implementation forwards to crate::Registry::get_versions_with for, so nothing observable changes for them.

§Examples

use deps_core::completion::complete_versions_generic_from;
use deps_core::parser::DependencySource;
use deps_core::PackageName;

let freshness = deps_core::FreshnessSettings::default();
let items = complete_versions_generic_from(
    registry,
    &PackageName::new("gitlab.com/org/proj"),
    &DependencySource::Registry,
    "1.",
    &[],
    freshness,
).await;