Enum url::SchemeType [] [src]

pub enum SchemeType {
    NonRelative,
    Relative(u16),
    FileLike,
}

Determines the behavior of the URL parser for a given scheme.

Variants

NonRelative

Indicate that the scheme is non-relative.

The scheme data of the URL (everything other than the scheme, query string, and fragment identifier) is parsed as a single percent-encoded string of which no structure is assumed. That string may need to be parsed further, per a scheme-specific format.

Relative

Indicate that the scheme is relative, and what the default port number is.

The scheme data is structured as username, password, host, port number, and path. Relative URL references are supported, if a base URL was given. The string value indicates the default port number as a string of ASCII digits, or the empty string to indicate no default port number.

FileLike

Indicate a relative scheme similar to the file scheme.

For example, you might want to have distinct git+file and hg+file URL schemes.

This is like Relative except the host can be empty, there is no port number, and path parsing has (platform-independent) quirks to support Windows filenames.

Methods

impl SchemeType

fn default_port(&self) -> Option<u16>

fn same_as(&self, other: SchemeType) -> bool

Trait Implementations

Derived Implementations

impl Ord for SchemeType

fn cmp(&self, __arg_0: &SchemeType) -> Ordering

impl PartialOrd for SchemeType

fn partial_cmp(&self, __arg_0: &SchemeType) -> Option<Ordering>

fn lt(&self, __arg_0: &SchemeType) -> bool

fn le(&self, __arg_0: &SchemeType) -> bool

fn gt(&self, __arg_0: &SchemeType) -> bool

fn ge(&self, __arg_0: &SchemeType) -> bool

impl Hash for SchemeType

fn hash<__H: Hasher>(&self, __arg_0: &mut __H)

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

impl Clone for SchemeType

fn clone(&self) -> SchemeType

fn clone_from(&mut self, source: &Self)

impl Debug for SchemeType

fn fmt(&self, __arg_0: &mut Formatter) -> Result

impl Copy for SchemeType

impl Eq for SchemeType

impl PartialEq for SchemeType

fn eq(&self, __arg_0: &SchemeType) -> bool

fn ne(&self, __arg_0: &SchemeType) -> bool