glib.time_zone

Module for [TimeZone] class

class TimeZone

Types 1

A glib.time_zone.TimeZone represents a time zone, at no particular point in time.

The glib.time_zone.TimeZone struct is refcounted and immutable.

Each time zone has an identifier (for example, ‘Europe/London’) which is platform dependent. See glib.time_zone.TimeZone.new_ for information on the identifier formats. The identifier of a time zone can be retrieved using glib.time_zone.TimeZone.getIdentifier.

A time zone contains a number of intervals. Each interval has an abbreviation to describe it (for example, ‘PDT’), an offset to UTC and a flag indicating if the daylight savings time is in effect during that interval. A time zone always has at least one interval — interval 0. Note that interval abbreviations are not the same as time zone identifiers (apart from ‘UTC’), and cannot be passed to glib.time_zone.TimeZone.new_.

Every UTC time is contained within exactly one interval, but a given local time may be contained within zero, one or two intervals (due to incontinuities associated with daylight savings time).

An interval may refer to a specific period of time (eg: the duration of daylight savings time during 2010) or it may refer to many periods of time that share the same properties (eg: all periods of daylight savings time). It is also possible (usually for political reasons) that some properties (like the abbreviation) change between intervals without other properties changing.

Methods
void * _cPtr(Flag!"Dup" dup = No.Dup) nothrow
GType _getGType() static nothrow
GType _gType() @property nothrow
TimeZone self() nothrowReturns `this`, for use in `with` statements.
glib.time_zone.TimeZone newIdentifier(string identifier = null) static nothrowCreates a #GTimeZone corresponding to identifier. If identifier cannot be parsed or loaded, null is returned.
glib.time_zone.TimeZone newLocal() static nothrowCreates a #GTimeZone corresponding to local time. The local time zone may change between invocations to this function; for example, if the system administrator changes it.
glib.time_zone.TimeZone newOffset(int seconds) static nothrowCreates a #GTimeZone corresponding to the given constant offset from UTC, in seconds.
glib.time_zone.TimeZone newUtc() static nothrowCreates a #GTimeZone corresponding to UTC.
int adjustTime(glib.types.TimeType type, ref long time) nothrowFinds an interval within tz that corresponds to the given time_, possibly adjusting time_ if required to fit into an interval. The meaning of time_ depends on type.
int findInterval(glib.types.TimeType type, long time) nothrowFinds an interval within tz that corresponds to the given time_. The meaning of time_ depends on type.
string getAbbreviation(int interval) nothrowDetermines the time zone abbreviation to be used during a particular interval of time in the time zone tz.
string getIdentifier() nothrowGet the identifier of this #GTimeZone, as passed to [glib.time_zone.TimeZone.new_]. If the identifier passed at construction time was not recognised, `UTC` will be returned. If it was null, the ide...
int getOffset(int interval) nothrowDetermines the offset to UTC in effect during a particular interval of time in the time zone tz.
bool isDst(int interval) nothrowDetermines if daylight savings time is in effect during a particular interval of time in the time zone tz.
Constructors
this(void * ptr, Flag!"Take" take)
this(string identifier = null)A version of [glib.time_zone.TimeZone.newIdentifier] which returns the UTC time zone if identifier could not be parsed or loaded.