[][src]Struct datetime_string::rfc3339::SecfracString

#[repr(transparent)]pub struct SecfracString(_);

Owned string for a time in RFC 3339 time-secfrac format, such as .7890.

Available when alloc feature is enabled.

To create a value of this type, use str::parse method or std::convert::TryFrom trait, or convert from &SecfracStr.

Examples

use datetime_string::rfc3339::SecfracStr;
use std::convert::TryFrom;

let try_from = SecfracString::try_from(".1234")?;

let parse = ".1234".parse::<SecfracString>()?;
let parse2: SecfracString = ".1234".parse()?;

let to_owned = SecfracStr::from_str(".1234")?.to_owned();
let into: SecfracString = SecfracStr::from_str(".1234")?.into();

Implementations

impl SecfracString[src]

#[must_use]pub fn as_deref(&self) -> &SecfracStr[src]

Returns a &SecfracStr for the string.

Examples

use datetime_string::rfc3339::SecfracStr;

let secfrac = ".1234".parse::<SecfracString>()?;

// Usually you don't need to call `as_deref()` explicitly, because
// `Deref<Target = SecfracStr>` trait is implemented.
let _: &SecfracStr = secfrac.as_deref();

#[must_use]pub fn as_deref_mut(&mut self) -> &mut SecfracStr[src]

Returns a &mut SecfracStr for the string.

Examples

use datetime_string::rfc3339::SecfracStr;

let mut secfrac = ".1234".parse::<SecfracString>()?;

// Usually you don't need to call `as_deref_mut()` explicitly, because
// `DerefMut` trait is implemented.
let _: &mut SecfracStr = secfrac.as_deref_mut();

Methods from Deref<Target = SecfracStr>

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

Returns a string slice.

Examples

let secfrac = SecfracStr::from_str(".1234")?;

assert_eq!(secfrac.as_str(), ".1234");

#[must_use]pub fn as_bytes(&self) -> &[u8][src]

Returns a byte slice.

Examples

let secfrac = SecfracStr::from_str(".1234")?;

assert_eq!(secfrac.as_str(), ".1234");

#[must_use]pub fn digits(&self) -> &SecfracDigitsStr[src]

Returns the digits.

Examples

use datetime_string::common::SecfracDigitsStr;

let secfrac = SecfracStr::from_str(".1234")?;
assert_eq!(secfrac.digits().as_str(), "1234");

let secfrac2 = SecfracStr::from_str(".012340")?;
assert_eq!(secfrac2.digits().as_str(), "012340");

#[must_use]pub fn digits_mut(&mut self) -> &mut SecfracDigitsStr[src]

Returns the digits as a mutable reference.

Examples

use datetime_string::common::SecfracDigitsStr;

let mut buf = ".1234".to_owned();
let secfrac = SecfracStr::from_mut_str(&mut buf)?;
let digits = secfrac.digits_mut();
assert_eq!(digits.as_str(), "1234");

digits.fill_with_zero();
assert_eq!(digits.as_str(), "0000");
assert_eq!(secfrac.as_str(), ".0000");
assert_eq!(buf, ".0000");

#[must_use]pub fn milliseconds_secfrac(&self) -> Option<&SecfracStr>[src]

Returns a milliseconds precision secfrac if there are enough digits.

Examples

let not_precise = SecfracStr::from_str(".1")?;
assert_eq!(not_precise.milliseconds_secfrac(), None);

let expected = SecfracStr::from_str(".012")?;
assert_eq!(expected.milliseconds_secfrac(), Some(expected));

let more_precise = SecfracStr::from_str(".012345678901")?;
assert_eq!(more_precise.milliseconds_secfrac(), Some(expected));

#[must_use]pub fn microseconds_secfrac(&self) -> Option<&SecfracStr>[src]

Returns a microseconds precision secfrac if there are enough digits.

Examples

let not_precise = SecfracStr::from_str(".1234")?;
assert_eq!(not_precise.microseconds_secfrac(), None);

let expected = SecfracStr::from_str(".012345")?;
assert_eq!(expected.microseconds_secfrac(), Some(expected));

let more_precise = SecfracStr::from_str(".012345678901")?;
assert_eq!(more_precise.microseconds_secfrac(), Some(expected));

#[must_use]pub fn nanoseconds_secfrac(&self) -> Option<&SecfracStr>[src]

Returns a nanoseconds precision secfrac if there are enough digits.

Examples

let not_precise = SecfracStr::from_str(".1234")?;
assert_eq!(not_precise.nanoseconds_secfrac(), None);

let expected = SecfracStr::from_str(".012345678")?;
assert_eq!(expected.nanoseconds_secfrac(), Some(expected));

let more_precise = SecfracStr::from_str(".012345678901")?;
assert_eq!(more_precise.nanoseconds_secfrac(), Some(expected));

Trait Implementations

impl AsMut<SecfracStr> for SecfracString[src]

impl AsRef<[u8]> for SecfracString[src]

impl AsRef<SecfracStr> for SecfracString[src]

impl AsRef<str> for SecfracString[src]

impl Borrow<SecfracStr> for SecfracString[src]

impl BorrowMut<SecfracStr> for SecfracString[src]

impl Clone for SecfracString[src]

impl Debug for SecfracString[src]

impl Deref for SecfracString[src]

type Target = SecfracStr

The resulting type after dereferencing.

impl DerefMut for SecfracString[src]

impl<'de> Deserialize<'de> for SecfracString[src]

impl Display for SecfracString[src]

impl Eq for SecfracString[src]

impl<'_> From<&'_ SecfracStr> for SecfracString[src]

impl From<SecfracString> for Vec<u8>[src]

impl From<SecfracString> for String[src]

impl FromStr for SecfracString[src]

type Err = Error

The associated error which can be returned from parsing.

impl Hash for SecfracString[src]

impl Ord for SecfracString[src]

impl<'_> PartialEq<&'_ [u8]> for SecfracString[src]

impl<'_> PartialEq<&'_ SecfracStr> for SecfracString[src]

impl<'_> PartialEq<&'_ SecfracString> for SecfracString[src]

impl<'_> PartialEq<&'_ SecfracString> for str[src]

impl<'_> PartialEq<&'_ SecfracString> for [u8][src]

impl<'_> PartialEq<&'_ str> for SecfracString[src]

impl PartialEq<[u8]> for SecfracString[src]

impl<'_> PartialEq<[u8]> for &'_ SecfracString[src]

impl PartialEq<SecfracStr> for SecfracString[src]

impl PartialEq<SecfracString> for SecfracString[src]

impl<'_> PartialEq<SecfracString> for &'_ SecfracString[src]

impl PartialEq<SecfracString> for SecfracStr[src]

impl<'_> PartialEq<SecfracString> for &'_ SecfracStr[src]

impl PartialEq<SecfracString> for str[src]

impl<'_> PartialEq<SecfracString> for &'_ str[src]

impl PartialEq<SecfracString> for [u8][src]

impl<'_> PartialEq<SecfracString> for &'_ [u8][src]

impl PartialEq<str> for SecfracString[src]

impl<'_> PartialEq<str> for &'_ SecfracString[src]

impl<'_> PartialOrd<&'_ [u8]> for SecfracString[src]

impl<'_> PartialOrd<&'_ SecfracStr> for SecfracString[src]

impl<'_> PartialOrd<&'_ SecfracString> for SecfracString[src]

impl<'_> PartialOrd<&'_ SecfracString> for str[src]

impl<'_> PartialOrd<&'_ SecfracString> for [u8][src]

impl<'_> PartialOrd<&'_ str> for SecfracString[src]

impl PartialOrd<[u8]> for SecfracString[src]

impl<'_> PartialOrd<[u8]> for &'_ SecfracString[src]

impl PartialOrd<SecfracStr> for SecfracString[src]

impl PartialOrd<SecfracString> for SecfracString[src]

impl<'_> PartialOrd<SecfracString> for &'_ SecfracString[src]

impl PartialOrd<SecfracString> for SecfracStr[src]

impl<'_> PartialOrd<SecfracString> for &'_ SecfracStr[src]

impl PartialOrd<SecfracString> for str[src]

impl<'_> PartialOrd<SecfracString> for &'_ str[src]

impl PartialOrd<SecfracString> for [u8][src]

impl<'_> PartialOrd<SecfracString> for &'_ [u8][src]

impl PartialOrd<str> for SecfracString[src]

impl<'_> PartialOrd<str> for &'_ SecfracString[src]

impl Serialize for SecfracString[src]

impl StructuralEq for SecfracString[src]

impl StructuralPartialEq for SecfracString[src]

impl<'_> TryFrom<&'_ [u8]> for SecfracString[src]

type Error = Error

The type returned in the event of a conversion error.

impl<'_> TryFrom<&'_ str> for SecfracString[src]

type Error = Error

The type returned in the event of a conversion error.

impl TryFrom<String> for SecfracString[src]

type Error = ConversionError<String>

The type returned in the event of a conversion error.

impl TryFrom<Vec<u8>> for SecfracString[src]

type Error = ConversionError<Vec<u8>>

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> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[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.