pub struct Local;Expand description
The local timescale.
Using the TimeZone methods
on the Local struct is the preferred way to construct DateTime<Local>
instances.
§Example
use chrono::{DateTime, Local, TimeZone};
let dt1: DateTime<Local> = Local::now();
let dt2: DateTime<Local> = Local.timestamp_opt(0, 0).unwrap();
assert!(dt1 >= dt2);Implementations§
Source§impl Local
impl Local
Sourcepub fn today() -> Date<Local>
👎Deprecated since 0.4.23: use Local::now() instead
pub fn today() -> Date<Local>
use Local::now() instead
Returns a Date which corresponds to the current date.
Sourcepub fn now() -> DateTime<Local>
pub fn 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();
// Current local date
let today = now.date_naive();
// Current local time, converted to `DateTime<FixedOffset>`
let now_fixed_offset = Local::now().fixed_offset();
// or
let now_fixed_offset: DateTime<FixedOffset> = Local::now().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().with_timezone(&offset);Trait Implementations§
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) -> LocalResult<FixedOffset>
fn offset_from_local_date(&self, local: &NaiveDate) -> LocalResult<FixedOffset>
NaiveDate if possible.Source§fn offset_from_local_datetime(
&self,
local: &NaiveDateTime,
) -> LocalResult<FixedOffset>
fn offset_from_local_datetime( &self, local: &NaiveDateTime, ) -> LocalResult<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,
) -> LocalResult<DateTime<Self>>
fn with_ymd_and_hms( &self, year: i32, month: u32, day: u32, hour: u32, min: u32, sec: u32, ) -> LocalResult<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) -> LocalResult<Date<Self>>
fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<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) -> LocalResult<Date<Self>>
fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<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,
) -> LocalResult<Date<Self>>
fn isoywd_opt( &self, year: i32, week: u32, weekday: Weekday, ) -> LocalResult<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) -> LocalResult<DateTime<Self>>
fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<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) -> LocalResult<DateTime<Self>>
fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<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) -> LocalResult<DateTime<Self>>
fn timestamp_micros(&self, micros: i64) -> LocalResult<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,
) -> Result<DateTime<Self>, ParseError>
fn datetime_from_str( &self, s: &str, fmt: &str, ) -> Result<DateTime<Self>, ParseError>
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) -> LocalResult<Date<Self>>
fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>
use from_local_datetime() instead
NaiveDate to the timezone-aware Date if possible.Source§fn from_local_datetime(
&self,
local: &NaiveDateTime,
) -> LocalResult<DateTime<Self>>
fn from_local_datetime( &self, local: &NaiveDateTime, ) -> LocalResult<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> 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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>
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>
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