Struct RiQueryString
struct RiQueryString<S> { ... }
An owned string of an IRI fragment (i.e. after the first # character).
This corresponds to iquery rule in RFC 3987 (and query rule in RFC 3986).
The rule for absolute-IRI is *( ipchar / iprivate / "/" / "?" ).
For details, see the documentation for RiQueryStr.
Enabled by alloc or std feature.
Implementations
impl RiQueryString<IriSpec>
fn encode_to_uri_inline(self: &mut Self)Percent-encodes the IRI into a valid URI that identifies the equivalent resource.
After the encode, the IRI is also a valid URI.
If you want a new URI string rather than modifying the IRI string, or if you need more precise control over memory allocation and buffer handling, use [
encode_to_uri]IriQueryStr::encode_to_urimethod.Panics
Panics if the memory allocation failed.
Examples
# use Error; # Ok::fn try_encode_to_uri_inline(self: &mut Self) -> Result<(), TryReserveError>Percent-encodes the IRI into a valid URI that identifies the equivalent resource.
After the encode, the IRI is also a valid URI.
If you want a new URI string rather than modifying the IRI string, or if you need more precise control over memory allocation and buffer handling, use [
encode_to_uri]IriQueryStr::encode_to_urimethod.Examples
# use Error; # Ok::fn encode_into_uri(self: Self) -> UriQueryStringPercent-encodes the IRI into a valid URI that identifies the equivalent resource.
If you want a new URI string rather than modifying the IRI string, or if you need more precise control over memory allocation and buffer handling, use [
encode_to_uri]IriQueryStr::encode_to_urimethod.Examples
# use Error; # Ok::fn try_encode_into_uri(self: Self) -> Result<UriQueryString, TryReserveError>Percent-encodes the IRI into a valid URI that identifies the equivalent resource.
If you want a new URI string rather than modifying the IRI string, or if you need more precise control over memory allocation and buffer handling, use [
encode_to_uri]IriQueryStr::encode_to_urimethod.Examples
# use Error; # Ok::fn try_into_uri(self: Self) -> Result<UriQueryString, IriQueryString>Converts an IRI into a URI without modification, if possible.
Examples
# use Error; use ; let ascii_iri = try_from?; assert_eq!; let nonascii_iri = try_from?; assert_eq!; # Ok::
impl<S: crate::spec::Spec> RiQueryString<S>
unsafe fn new_unchecked(s: String) -> SelfCreates a new string without validation.
This does not validate the given string, so it is caller's responsibility to ensure the given string is valid.
Safety
The given string must be syntactically valid as
Selftype. If not, any use of the returned value or the call of this function itself may result in undefined behavior.fn shrink_to_fit(self: &mut Self)Shrinks the capacity of the inner buffer to match its length.
fn capacity(self: &Self) -> usizeReturns the internal buffer capacity in bytes.
fn as_slice(self: &Self) -> &RiQueryStr<S>Returns the borrowed IRI string slice.
This is equivalent to
&*self.
impl<P, T> Receiver for RiQueryString<S>
impl<S> Freeze for RiQueryString<S>
impl<S> RefUnwindSafe for RiQueryString<S>
impl<S> Send for RiQueryString<S>
impl<S> Sync for RiQueryString<S>
impl<S> Unpin for RiQueryString<S>
impl<S> UnsafeUnpin for RiQueryString<S>
impl<S> UnwindSafe for RiQueryString<S>
impl<S: crate::spec::Spec> AsRef for RiQueryString<S>
fn as_ref(self: &Self) -> &RiQueryStr<S>
impl<S: crate::spec::Spec> AsRef for RiQueryString<S>
fn as_ref(self: &Self) -> &str
impl<S: crate::spec::Spec> Borrow for RiQueryString<S>
fn borrow(self: &Self) -> &RiQueryStr<S>
impl<S: crate::spec::Spec> Borrow for RiQueryString<S>
fn borrow(self: &Self) -> &str
impl<S: crate::spec::Spec> Clone for RiQueryString<S>
fn clone(self: &Self) -> Self
impl<S: crate::spec::Spec> Debug for RiQueryString<S>
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl<S: crate::spec::Spec> Deref for RiQueryString<S>
fn deref(self: &Self) -> &RiQueryStr<S>
impl<S: crate::spec::Spec> Display for RiQueryString<S>
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl<S: crate::spec::Spec> Eq for RiQueryString<S>
impl<S: crate::spec::Spec> From for RiQueryString<S>
fn from(s: &RiQueryStr<S>) -> Self
impl<S: crate::spec::Spec> FromStr for RiQueryString<S>
fn from_str(s: &str) -> Result<Self, <Self as >::Err>
impl<S: crate::spec::Spec> Hash for RiQueryString<S>
fn hash<H: core::hash::Hasher>(self: &Self, state: &mut H)
impl<S: crate::spec::Spec> Ord for RiQueryString<S>
fn cmp(self: &Self, other: &Self) -> Ordering
impl<S: crate::spec::Spec> PartialEq for RiQueryString<S>
fn eq(self: &Self, o: &String) -> bool
impl<S: crate::spec::Spec> PartialEq for RiQueryString<S>
fn eq(self: &Self, o: &Cow<'_, str>) -> bool
impl<S: crate::spec::Spec> PartialEq for RiQueryString<S>
fn eq(self: &Self, o: &&str) -> bool
impl<S: crate::spec::Spec> PartialEq for RiQueryString<S>
fn eq(self: &Self, o: &str) -> bool
impl<S: crate::spec::Spec> PartialOrd for RiQueryString<S>
fn partial_cmp(self: &Self, o: &String) -> Option<Ordering>
impl<S: crate::spec::Spec> PartialOrd for RiQueryString<S>
fn partial_cmp(self: &Self, o: &Cow<'_, str>) -> Option<Ordering>
impl<S: crate::spec::Spec> PartialOrd for RiQueryString<S>
fn partial_cmp(self: &Self, o: &&str) -> Option<Ordering>
impl<S: crate::spec::Spec> PartialOrd for RiQueryString<S>
fn partial_cmp(self: &Self, o: &str) -> Option<Ordering>
impl<S: crate::spec::Spec> TryFrom for RiQueryString<S>
fn try_from(bytes: &[u8]) -> Result<Self, <Self as >::Error>
impl<S: crate::spec::Spec> TryFrom for RiQueryString<S>
fn try_from(s: String) -> Result<Self, <Self as >::Error>
impl<S: crate::spec::Spec> TryFrom for RiQueryString<S>
fn try_from(s: &str) -> Result<Self, <Self as >::Error>
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialEq for RiQueryString<S>
fn eq(self: &Self, other: &RiQueryString<T>) -> bool
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialEq for RiQueryString<T>
fn eq(self: &Self, o: &&RiQueryStr<S>) -> bool
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialEq for RiQueryString<T>
fn eq(self: &Self, o: &RiQueryStr<S>) -> bool
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialEq for RiQueryString<T>
fn eq(self: &Self, o: &Cow<'_, RiQueryStr<S>>) -> bool
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialOrd for RiQueryString<S>
fn partial_cmp(self: &Self, other: &RiQueryString<T>) -> Option<Ordering>
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialOrd for RiQueryString<T>
fn partial_cmp(self: &Self, o: &Cow<'_, RiQueryStr<S>>) -> Option<Ordering>
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialOrd for RiQueryString<T>
fn partial_cmp(self: &Self, o: &&RiQueryStr<S>) -> Option<Ordering>
impl<S: crate::spec::Spec, T: crate::spec::Spec> PartialOrd for RiQueryString<T>
fn partial_cmp(self: &Self, o: &RiQueryStr<S>) -> Option<Ordering>
impl<T> Any for RiQueryString<S>
fn type_id(self: &Self) -> TypeId
impl<T> Borrow for RiQueryString<S>
fn borrow(self: &Self) -> &T
impl<T> BorrowMut for RiQueryString<S>
fn borrow_mut(self: &mut Self) -> &mut T
impl<T> CloneToUninit for RiQueryString<S>
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)
impl<T> From for RiQueryString<S>
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for RiQueryString<S>
fn to_owned(self: &Self) -> Tfn clone_into(self: &Self, target: &mut T)
impl<T> ToString for RiQueryString<S>
fn to_string(self: &Self) -> String
impl<T> ToStringFallible for RiQueryString<S>
fn try_to_string(self: &Self) -> Result<String, TryReserveError>[
ToString::to_string]alloc::string::ToString::to_string, but without panic on OOM.
impl<T, U> Into for RiQueryString<S>
fn into(self: Self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom for RiQueryString<S>
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto for RiQueryString<S>
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>