Struct cargo::core::source::SourceId

source ·
pub struct SourceId {
    inner: &'static SourceIdInner,
}
Expand description

Unique identifier for a source of packages.

Fields§

§inner: &'static SourceIdInner

Implementations§

Creates a SourceId object from the kind and URL.

The canonical url will be calculated, but the precise field will not

Parses a source URL and returns the corresponding ID.

Example
use cargo::core::SourceId;
SourceId::from_url("git+https://github.com/alexcrichton/\
                    libssh2-static-sys#80e71a3021618eb05\
                    656c58fb7c5ef5f12bc747f");

A view of the SourceId that can be Displayed as a URL.

Creates a SourceId from a filesystem path.

path: an absolute path.

Creates a SourceId from a Git reference.

Creates a SourceId from a remote registry URL when the registry name cannot be determined, e.g. a user passes --index directly from CLI.

Use SourceId::for_alt_registry if a name can provided, which generates better messages for cargo.

Creates a SourceId from a remote registry URL with given name.

Creates a SourceId from a local registry path.

Creates a SourceId from a directory path.

Returns the SourceId corresponding to the main repository.

This is the main cargo registry by default, but it can be overridden in a .cargo/config.toml.

Returns the SourceId corresponding to the main repository, using the sparse HTTP index if allowed.

Returns whether to access crates.io over the sparse protocol.

Gets the SourceId associated with given name of the remote registry.

Gets this source URL.

Gets the canonical URL of this source, used for internal comparison purposes.

Gets the name of the remote registry as defined in the [registries] table. WARNING: alt registries that come from Cargo.lock, or –index will not have a name.

Returns true if this source is from a filesystem path.

Returns the local path if this is a path dependency.

Returns true if this source is from a registry (either local or not).

Returns true if this source is from a sparse registry.

Returns true if this source is a “remote” registry.

“remote” may also mean a file URL to a git index, so it is not necessarily “remote”. This just means it is not local-registry.

Returns true if this source from a Git repository.

Creates an implementation of Source corresponding to this ID.

Gets the value of the precise field.

Gets the Git reference if this is a git source, otherwise None.

Creates a new SourceId from this source with the given precise.

Returns true if the remote registry is the standard https://crates.io.

Hashes self.

For paths, remove the workspace prefix so the same source will give the same hash in different locations.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Deserialize this value from the given Serde deserializer. Read more
Formats the value using the given formatter. Read more
Feeds this value into the given Hasher. Read more
Feeds a slice of this type into the given Hasher. Read more
This method returns an Ordering between self and other. Read more
Compares and returns the maximum of two values. Read more
Compares and returns the minimum of two values. Read more
Restrict a value to a certain interval. Read more
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
This method returns an ordering between self and other values if one exists. Read more
This method tests less than (for self and other) and is used by the < operator. Read more
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
This method tests greater than (for self and other) and is used by the > operator. Read more
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Compare self to key and return true if they are equal.

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.

Size: 8 bytes