[][src]Struct iref::IriRefBuf

pub struct IriRefBuf { /* fields omitted */ }

Owned IRI-reference.

Holds a mutable buffer representing an IRI-reference. This type can be used to create and/or modify existing IRI-references. The authority and path can be accessed mutabily to modify their sub-components.

Example

let mut iri = IriBuf::new("https://www.rust-lang.org")?;

iri.authority_mut().unwrap().set_port(Some("40".try_into()?));
iri.set_path("/foo".try_into()?);
iri.path_mut().push("bar".try_into()?);
iri.set_query(Some("query".try_into()?));
iri.set_fragment(Some("fragment".try_into()?));

assert_eq!(iri, "https://www.rust-lang.org:40/foo/bar?query#fragment");

See the IriRef type for more informations about IRI-references.

Methods

impl IriRefBuf[src]

pub fn new<S: AsRef<[u8]> + ?Sized>(buffer: &S) -> Result<IriRefBuf, Error>[src]

pub fn as_iri_ref(&self) -> IriRef[src]

pub fn as_iri(&self) -> Result<Iri, Error>[src]

pub fn len(&self) -> usize[src]

Length in bytes.

pub fn as_str(&self) -> &str[src]

pub fn as_pct_str(&self) -> &PctStr[src]

pub fn scheme(&self) -> Option<Scheme>[src]

pub fn set_scheme(&mut self, scheme: Option<Scheme>)[src]

Set the scheme of the IRI.

pub fn authority(&self) -> Option<Authority>[src]

pub fn authority_mut(&mut self) -> Option<AuthorityMut>[src]

pub fn set_authority(&mut self, authority: Option<Authority>)[src]

Set the authority of the IRI.

It must be a syntactically correct authority. If not, this method returns an error, and the IRI is unchanged.

pub fn path(&self) -> Path[src]

pub fn path_mut(&mut self) -> PathMut[src]

pub fn set_path(&mut self, path: Path)[src]

pub fn query(&self) -> Option<Query>[src]

pub fn set_query(&mut self, query: Option<Query>)[src]

pub fn fragment(&self) -> Option<Fragment>[src]

pub fn set_fragment(&mut self, fragment: Option<Fragment>)[src]

pub fn resolve<'b, Base: Into<Iri<'b>>>(&mut self, base_iri: Base)[src]

Resolve the IRI reference.

Abnormal use of dot segments.

https://www.rfc-editor.org/errata/eid4547

pub fn resolved<'b, Base: Into<Iri<'b>>>(&self, base_iri: Base) -> IriBuf[src]

Trait Implementations

impl Clone for IriRefBuf[src]

impl Debug for IriRefBuf[src]

impl Default for IriRefBuf[src]

impl Display for IriRefBuf[src]

impl Eq for IriRefBuf[src]

impl<'a> From<&'a Iri<'a>> for IriRefBuf[src]

impl<'a> From<&'a IriRef<'a>> for IriRefBuf[src]

impl<'a> From<&'a IriRefBuf> for IriRef<'a>[src]

impl<'a> From<Iri<'a>> for IriRefBuf[src]

impl From<IriBuf> for IriRefBuf[src]

impl<'a> From<IriRef<'a>> for IriRefBuf[src]

impl Hash for IriRefBuf[src]

impl Ord for IriRefBuf[src]

impl<'a> PartialEq<&'a str> for IriRefBuf[src]

impl<'a> PartialEq<Iri<'a>> for IriRefBuf[src]

impl PartialEq<IriBuf> for IriRefBuf[src]

impl<'a> PartialEq<IriRef<'a>> for IriRefBuf[src]

impl PartialEq<IriRefBuf> for IriBuf[src]

impl<'a> PartialEq<IriRefBuf> for Iri<'a>[src]

impl PartialEq<IriRefBuf> for IriRefBuf[src]

impl<'a> PartialEq<IriRefBuf> for IriRef<'a>[src]

impl PartialEq<str> for IriRefBuf[src]

impl<'a> PartialOrd<Iri<'a>> for IriRefBuf[src]

impl PartialOrd<IriBuf> for IriRefBuf[src]

impl<'a> PartialOrd<IriRef<'a>> for IriRefBuf[src]

impl PartialOrd<IriRefBuf> for IriBuf[src]

impl<'a> PartialOrd<IriRefBuf> for Iri<'a>[src]

impl PartialOrd<IriRefBuf> for IriRefBuf[src]

impl<'a> PartialOrd<IriRefBuf> for IriRef<'a>[src]

impl<'a> TryFrom<&'a IriRefBuf> for Iri<'a>[src]

type Error = Error

The type returned in the event of a conversion error.

impl TryFrom<IriRefBuf> for IriBuf[src]

type Error = IriRefBuf

The type returned in the event of a conversion error.

Auto Trait Implementations

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.