[][src]Struct cargo::core::dependency::Dependency

pub struct Dependency { /* fields omitted */ }

Information about a dependency requested by a Cargo manifest. Cheap to copy.

Methods

impl Dependency
[src]

pub fn parse(
    name: &str,
    version: Option<&str>,
    source_id: SourceId,
    inside: PackageId,
    config: &Config
) -> CargoResult<Dependency>
[src]

Attempt to create a Dependency from an entry in the manifest.

pub fn parse_no_deprecated(
    name: &str,
    version: Option<&str>,
    source_id: SourceId
) -> CargoResult<Dependency>
[src]

Attempt to create a Dependency from an entry in the manifest.

pub fn new_override(name: &str, source_id: SourceId) -> Dependency
[src]

pub fn version_req(&self) -> &VersionReq
[src]

pub fn name_in_toml(&self) -> InternedString
[src]

This is the name of this Dependency as listed in Cargo.toml.

Or in other words, this is what shows up in the [dependencies] section on the left hand side. This is not the name of the package that's being depended on as the dependency can be renamed. For that use package_name below.

Both of the dependencies below return foo for name_in_toml:

[dependencies]
foo = "0.1"

and ...

[dependencies]
foo = { version = "0.1", package = 'bar' }

pub fn package_name(&self) -> InternedString
[src]

The name of the package that this Dependency depends on.

Usually this is what's written on the left hand side of a dependencies section, but it can also be renamed via the package key.

Both of the dependencies below return foo for package_name:

[dependencies]
foo = "0.1"

and ...

[dependencies]
bar = { version = "0.1", package = 'foo' }

pub fn source_id(&self) -> SourceId
[src]

pub fn registry_id(&self) -> Option<SourceId>
[src]

pub fn set_registry_id(&mut self, registry_id: SourceId) -> &mut Dependency
[src]

pub fn kind(&self) -> Kind
[src]

pub fn specified_req(&self) -> bool
[src]

pub fn platform(&self) -> Option<&Platform>
[src]

If none, this dependencies must be built for all platforms. If some, it must only be built for the specified platform.

pub fn explicit_name_in_toml(&self) -> Option<InternedString>
[src]

The renamed name of this dependency, if any.

If the package key is used in Cargo.toml then this returns the same value as name_in_toml.

pub fn set_kind(&mut self, kind: Kind) -> &mut Dependency
[src]

pub fn set_features(
    &mut self,
    features: impl IntoIterator<Item = impl AsRef<str>>
) -> &mut Dependency
[src]

Sets the list of features requested for the package.

pub fn set_default_features(
    &mut self,
    default_features: bool
) -> &mut Dependency
[src]

Sets whether the dependency requests default features of the package.

pub fn set_optional(&mut self, optional: bool) -> &mut Dependency
[src]

Sets whether the dependency is optional.

pub fn set_source_id(&mut self, id: SourceId) -> &mut Dependency
[src]

Set the source id for this dependency

pub fn set_version_req(&mut self, req: VersionReq) -> &mut Dependency
[src]

Set the version requirement for this dependency

pub fn set_platform(&mut self, platform: Option<Platform>) -> &mut Dependency
[src]

pub fn set_explicit_name_in_toml(&mut self, name: &str) -> &mut Dependency
[src]

pub fn lock_to(&mut self, id: PackageId) -> &mut Dependency
[src]

Lock this dependency to depending on the specified package id

pub fn is_locked(&self) -> bool
[src]

Returns whether this is a "locked" dependency, basically whether it has an exact version req.

pub fn is_transitive(&self) -> bool
[src]

Returns false if the dependency is only used to build the local package.

pub fn is_build(&self) -> bool
[src]

pub fn is_optional(&self) -> bool
[src]

pub fn uses_default_features(&self) -> bool
[src]

Returns true if the default features of the dependency are requested.

pub fn features(&self) -> &[InternedString]
[src]

Returns the list of features that are requested by the dependency.

pub fn matches(&self, sum: &Summary) -> bool
[src]

Returns true if the package (sum) can fulfill this dependency request.

pub fn matches_ignoring_source(&self, id: PackageId) -> bool
[src]

Returns true if the package (sum) can fulfill this dependency request.

pub fn matches_id(&self, id: PackageId) -> bool
[src]

Returns true if the package (id) can fulfill this dependency request.

pub fn map_source(
    self,
    to_replace: SourceId,
    replace_with: SourceId
) -> Dependency
[src]

Trait Implementations

impl Eq for Dependency
[src]

impl PartialOrd<Dependency> for Dependency
[src]

impl PartialEq<Dependency> for Dependency
[src]

impl Clone for Dependency
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Ord for Dependency
[src]

fn max(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the minimum of two values. Read more

impl Debug for Dependency
[src]

impl Hash for Dependency
[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl Serialize for Dependency
[src]

Auto Trait Implementations

impl !Send for Dependency

impl !Sync for Dependency

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T

impl<T> Same for T

type Output = T

Should always be Self