Struct Timestamp
pub struct Timestamp {
pub year: u16,
pub month: Option<u8>,
pub day: Option<u8>,
pub hour: Option<u8>,
pub minute: Option<u8>,
pub second: Option<u8>,
}Expand description
A subset of the ISO 8601 timestamp format
§Examples
use lofty::tag::items::Timestamp;
let timestamp: Timestamp = "2024-06-15T14:30:00".parse().unwrap();
assert_eq!(timestamp.year, 2024);
assert_eq!(timestamp.month, Some(6));
assert_eq!(timestamp.to_string(), "2024-06-15T14:30:00");Fields§
§year: u16The year component (e.g. 2024)
month: Option<u8>The month component (1-12)
day: Option<u8>The day component (1-31)
hour: Option<u8>The hour component (0-23)
minute: Option<u8>The minute component (0-59)
second: Option<u8>The second component (0-59)
Implementations§
§impl Timestamp
impl Timestamp
pub const MAX_LENGTH: usize = 19
pub const MAX_LENGTH: usize = 19
The maximum length of a timestamp in bytes
pub fn parse<R>(
reader: &mut R,
parse_mode: ParsingMode,
) -> Result<Option<Timestamp>, LoftyError>where
R: Read,
pub fn parse<R>(
reader: &mut R,
parse_mode: ParsingMode,
) -> Result<Option<Timestamp>, LoftyError>where
R: Read,
Read a Timestamp
NOTES:
- When not using [
ParsingMode::Strict], this will skip any leading whitespace - Afterwards, this will take
Self::MAX_LENGTHbytes from the reader. Ensure that it only contains the timestamp
§Errors
- Failure to read from
reader - The timestamp is invalid
Trait Implementations§
impl Copy for Timestamp
impl Eq for Timestamp
§impl Ord for Timestamp
impl Ord for Timestamp
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
§impl PartialOrd for Timestamp
impl PartialOrd for Timestamp
impl StructuralPartialEq for Timestamp
Auto Trait Implementations§
impl Freeze for Timestamp
impl RefUnwindSafe for Timestamp
impl Send for Timestamp
impl Sync for Timestamp
impl Unpin for Timestamp
impl UnsafeUnpin for Timestamp
impl UnwindSafe for Timestamp
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.
§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().