## Module registry

Source
Expand description

Types that hold source information for a group of packages.

The primary type you’re looking for is `PackageRegistry`. It is an abstraction over multiple `Source`s. `PackageRegistry` also implements the `Registry` trait, allowing a dependency resolver to query necessary package metadata (i.e., Summary) from it.

Not to be confused with `crate::sources::registry` and `crate::ops::registry`. The former is just one kind of source, while the latter involves operations on the registry Web API.

## Structs§

LockedPatchDependency
  Argument to `PackageRegistry::patch` which is information about a `[patch]` directive that we found in a lockfile, if present.
PackageRegistry
  This structure represents a registry of known packages. It internally contains a number of `Source` instances which are used to load a `Package` from.

## Enums§

Kind 🔒
  Kinds of sources a `PackageRegistry` has loaded.

## Traits§

Registry
  An abstraction provides a set of methods for querying source information about a group of packages, without leaking too much implementation details of the actual registry.

## Functions§

lock 🔒
  See `PackageRegistry::lock`.
summary_for_patch 🔒
  A helper for selecting the summary, or generating a helpful error message.

## Type Aliases§

LockedMap 🔒
  A map of all “locked packages” which is filled in when parsing a lock file and is used to guide dependency resolution by altering summaries as they’re queried from this source.
PatchDependency
  This tuple is an argument to `PackageRegistry::patch`.