View Source Moar.NaiveDateTime (Moar v1.12.0)
NaiveDateTime-related functions.
Link to this section Summary
Functions
Like NaiveDateTime.add
but takes a Moar.Duration
.
Like NaiveDateTime.from_iso8601/1
but raises if the string cannot be parsed.
Like NaiveDateTime.to_iso8601/1
but rounds to the nearest second first.
Link to this section Functions
@spec add(NaiveDateTime.t(), Moar.Duration.t()) :: NaiveDateTime.t()
Like NaiveDateTime.add
but takes a Moar.Duration
.
See also Moar.DateTime
.
iex> start = ~N[2022-01-01T00:00:00]
iex> Moar.NaiveDateTime.add(start, {3, :minute})
~N[2022-01-01T00:03:00]
@spec from_iso8601!(date_time_string :: String.t()) :: NaiveDateTime.t()
Like NaiveDateTime.from_iso8601/1
but raises if the string cannot be parsed.
iex> Moar.NaiveDateTime.from_iso8601!("2022-01-01T00:00:00")
~N[2022-01-01T00:00:00]
iex> Moar.NaiveDateTime.from_iso8601!("2022-01-01T00:00:00+0800")
~N[2022-01-01T00:00:00]
iex> Moar.NaiveDateTime.from_iso8601!("Next Thursday after lunch")
** (ArgumentError) Invalid ISO8601 format: "Next Thursday after lunch"
@spec to_iso8601_rounded(date_time :: NaiveDateTime.t()) :: String.t()
Like NaiveDateTime.to_iso8601/1
but rounds to the nearest second first.
iex> Moar.NaiveDateTime.to_iso8601_rounded(~N[2022-01-01T01:02:03.456789])
"2022-01-01T01:02:03"