pub struct Local;clock only.Expand description
The local timescale.
Using the TimeZone methods
on the Local struct is the preferred way to construct DateTime<Local>
instances.
§Example
use ai_chrono::{DateTime, Local, StdNow, TimeZone};
let dt1: DateTime<Local> = Local::now::<StdNow>();
let dt2: DateTime<Local> = Local.timestamp_opt(0, 0).unwrap();
assert!(dt1 >= dt2);Implementations§
Source§impl Local
impl Local
Sourcepub fn today<N: Now>() -> Date<Local>
👎Deprecated since 0.4.23: use Local::now::<StdNow>() instead
pub fn today<N: Now>() -> Date<Local>
use Local::now::<StdNow>() instead
Returns a Date which corresponds to the current date.
Sourcepub fn now<N: Now>() -> DateTime<Local>
pub fn now<N: Now>() -> DateTime<Local>
Returns a DateTime<Local> which corresponds to the current date, time and offset from
UTC.
See also the similar Utc::now() which returns DateTime<Utc>, i.e. without the local
offset.
§Example
// Current local time
let now = Local::now::<StdNow>();
// Current local date
let today = now.date_naive();
// Current local time, converted to `DateTime<FixedOffset>`
let now_fixed_offset = Local::now::<StdNow>().fixed_offset();
// or
let now_fixed_offset: DateTime<FixedOffset> = Local::now::<StdNow>().into();
// Current time in some timezone (let's use +05:00)
// Note that it is usually more efficient to use `Utc::now` for this use case.
let offset = FixedOffset::east_opt(5 * 60 * 60).unwrap();
let now_with_offset = Local::now::<StdNow>().with_timezone(&offset);Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for Local
impl<'arbitrary> Arbitrary<'arbitrary> for Local
Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured this type
needs to construct itself. Read moreSource§impl Archive for Local
impl Archive for Local
Source§impl PartialEq<ArchivedLocal> for Local
impl PartialEq<ArchivedLocal> for Local
Source§impl PartialEq<Local> for ArchivedLocal
impl PartialEq<Local> for ArchivedLocal
Source§impl TimeZone for Local
impl TimeZone for Local
Source§type Offset = FixedOffset
type Offset = FixedOffset
TimeZone value can be recovered via TimeZone::from_offset.Source§fn from_offset(_offset: &FixedOffset) -> Local
fn from_offset(_offset: &FixedOffset) -> Local
Source§fn offset_from_local_date(
&self,
local: &NaiveDate,
) -> MappedLocalTime<FixedOffset>
fn offset_from_local_date( &self, local: &NaiveDate, ) -> MappedLocalTime<FixedOffset>
NaiveDate if possible.Source§fn offset_from_local_datetime(
&self,
local: &NaiveDateTime,
) -> MappedLocalTime<FixedOffset>
fn offset_from_local_datetime( &self, local: &NaiveDateTime, ) -> MappedLocalTime<FixedOffset>
NaiveDateTime if possible.Source§fn offset_from_utc_date(&self, utc: &NaiveDate) -> FixedOffset
fn offset_from_utc_date(&self, utc: &NaiveDate) -> FixedOffset
NaiveDate. This cannot fail.Source§fn offset_from_utc_datetime(&self, utc: &NaiveDateTime) -> FixedOffset
fn offset_from_utc_datetime(&self, utc: &NaiveDateTime) -> FixedOffset
NaiveDateTime. This cannot fail.Source§fn with_ymd_and_hms(
&self,
year: i32,
month: u32,
day: u32,
hour: u32,
min: u32,
sec: u32,
) -> MappedLocalTime<DateTime<Self>>
fn with_ymd_and_hms( &self, year: i32, month: u32, day: u32, hour: u32, min: u32, sec: u32, ) -> MappedLocalTime<DateTime<Self>>
DateTime from year, month, day, time components and current time zone. Read moreSource§fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn ymd_opt(
&self,
year: i32,
month: u32,
day: u32,
) -> MappedLocalTime<Date<Self>>
fn ymd_opt( &self, year: i32, month: u32, day: u32, ) -> MappedLocalTime<Date<Self>>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo_opt(&self, year: i32, ordinal: u32) -> MappedLocalTime<Date<Self>>
fn yo_opt(&self, year: i32, ordinal: u32) -> MappedLocalTime<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn isoywd_opt(
&self,
year: i32,
week: u32,
weekday: Weekday,
) -> MappedLocalTime<Date<Self>>
fn isoywd_opt( &self, year: i32, week: u32, weekday: Weekday, ) -> MappedLocalTime<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
use timestamp_opt() instead
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_opt(
&self,
secs: i64,
nsecs: u32,
) -> MappedLocalTime<DateTime<Self>>
fn timestamp_opt( &self, secs: i64, nsecs: u32, ) -> MappedLocalTime<DateTime<Self>>
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
use timestamp_millis_opt() instead
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_millis_opt(&self, millis: i64) -> MappedLocalTime<DateTime<Self>>
fn timestamp_millis_opt(&self, millis: i64) -> MappedLocalTime<DateTime<Self>>
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
DateTime from the number of non-leap nanoseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_micros(&self, micros: i64) -> MappedLocalTime<DateTime<Self>>
fn timestamp_micros(&self, micros: i64) -> MappedLocalTime<DateTime<Self>>
DateTime from the number of non-leap microseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn datetime_from_str(&self, s: &str, fmt: &str) -> ParseResult<DateTime<Self>>
fn datetime_from_str(&self, s: &str, fmt: &str) -> ParseResult<DateTime<Self>>
use DateTime::parse_from_str or NaiveDateTime::parse_from_str with and_utc() or and_local_timezone() instead
DateTime with the current offset. Read moreSource§fn from_local_date(&self, local: &NaiveDate) -> MappedLocalTime<Date<Self>>
fn from_local_date(&self, local: &NaiveDate) -> MappedLocalTime<Date<Self>>
use from_local_datetime() instead
NaiveDate to the timezone-aware Date if possible.Source§fn from_local_datetime(
&self,
local: &NaiveDateTime,
) -> MappedLocalTime<DateTime<Self>>
fn from_local_datetime( &self, local: &NaiveDateTime, ) -> MappedLocalTime<DateTime<Self>>
NaiveDateTime to the timezone-aware DateTime if possible.Source§fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
use from_utc_datetime() instead
NaiveDate to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).Source§fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
NaiveDateTime to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).impl Copy for Local
Auto Trait Implementations§
impl Freeze for Local
impl RefUnwindSafe for Local
impl Send for Local
impl Sync for Local
impl Unpin for Local
impl UnsafeUnpin for Local
impl UnwindSafe for Local
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
Archive, it may be unsized. Read more