Struct git_repository::Url

source ·
pub struct Url {
    pub scheme: Scheme,
    pub port: Option<u16>,
    pub path: BString,
    /* private fields */
}
Expand description

A URL with support for specialized git related capabilities.

Additionally there is support for deserialization and serialization (see the Display::fmt() implementation).

Deviation

Note that we do not support passing the password using the URL as it’s likely leading to accidents.

Fields§

§scheme: Scheme

The URL scheme.

§port: Option<u16>

The port to use when connecting to a host. If None, standard ports depending on scheme will be used.

§path: BString

The path portion of the URL, usually the location of the git repository.

Implementations§

Instantiation

Create a new instance from the given parts, which will be validated by parsing them back.

Create a new instance from the given parts, which will be validated by parsing them back from its alternative form.

Modification

Set the given user, with None unsetting it. Returns the previous value.

Builder

Enable alternate serialization for this url, e.g. file:///path becomes /path.

This is automatically set correctly for parsed URLs, but can be set here for urls created by constructor.

Turn a file url like file://relative into file:///root/relative, hence it assures the url’s path component is absolute.

Access

Returns the user mentioned in the url, if present.

Returns the host mentioned in the url, if present.

Returns true if the path portion of the url is /.

Returns the actual or default port for use according to the url scheme. Note that there may be no default port either.

Transformation

Turn a file url like file://relative into file:///root/relative, hence it assures the url’s path component is absolute.

Serialization

Write this URL losslessly to out, ready to be parsed again.

Transform ourselves into a binary string, losslessly, or fail if the URL is malformed due to host or user parts being incorrect.

Deserialization

Parse a URL from bytes

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
Returns the “default value” for a type. 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
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.
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.
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.
The type returned in the event of a conversion error.
Performs the conversion.

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
Checks if this value is equivalent to the given key. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
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
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.