Gjsify LogoGjsify Logo

Struct to store date, time and timezone information altogether. #GstDateTime is refcounted and immutable.

Date information is handled using the proleptic Gregorian calendar.

Provides basic creation functions and accessor functions to its fields.

record

Hierarchy

  • DateTime

Index

Constructors

  • new DateTime(tzoffset: number, year: number, month: number, day: number, hour: number, minute: number, seconds: number): Gst.DateTime
  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the supplied timezone.

    year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31, hour from 0 to 23, minutes and seconds from 0 to 59.

    Note that tzoffset is a float and was chosen so for being able to handle some fractional timezones, while it still keeps the readability of representing it in hours for most timezones.

    If value is -1 then all over value will be ignored. For example if month == -1, then #GstDateTime will be created only for year. If day == -1, then #GstDateTime will be created for year and month and so on.

    Parameters

    • tzoffset: number

      Offset from UTC in hours.

    • year: number

      the gregorian year

    • month: number

      the gregorian month

    • day: number

      the day of the gregorian month

    • hour: number

      the hour of the day

    • minute: number

      the minute of the hour

    • seconds: number

      the second of the minute

    Returns Gst.DateTime

Properties

name: string

Methods

  • get_day(): number
  • get_hour(): number
  • Retrieves the hour of the day represented by datetime in the gregorian calendar. The return is in the range of 0 to 23.

    Returns number

  • get_microsecond(): number
  • Retrieves the fractional part of the seconds in microseconds represented by datetime in the gregorian calendar.

    Returns number

  • get_minute(): number
  • get_month(): number
  • get_second(): number
  • get_time_zone_offset(): number
  • Retrieves the offset from UTC in hours that the timezone specified by datetime represents. Timezones ahead (to the east) of UTC have positive values, timezones before (to the west) of UTC have negative values. If datetime represents UTC time, then the offset is zero.

    Returns number

  • get_year(): number
  • Returns the year of this #GstDateTime. Call gst_date_time_has_year() before, to avoid warnings.

    Returns number

  • has_day(): boolean
  • has_month(): boolean
  • has_second(): boolean
  • has_time(): boolean
  • has_year(): boolean
  • to_iso8601_string(): string
  • Create a minimal string compatible with ISO-8601. Possible output formats are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z, 2012-06-23T23:30+0100, 2012-06-23T23:30:59Z, 2012-06-23T23:30:59+0100

    Returns string

  • unref(): void
  • Atomically decrements the reference count of datetime by one. When the reference count reaches zero, the structure is freed.

    Returns void

  • new(tzoffset: number, year: number, month: number, day: number, hour: number, minute: number, seconds: number): Gst.DateTime
  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the supplied timezone.

    year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31, hour from 0 to 23, minutes and seconds from 0 to 59.

    Note that tzoffset is a float and was chosen so for being able to handle some fractional timezones, while it still keeps the readability of representing it in hours for most timezones.

    If value is -1 then all over value will be ignored. For example if month == -1, then #GstDateTime will be created only for year. If day == -1, then #GstDateTime will be created for year and month and so on.

    Parameters

    • tzoffset: number

      Offset from UTC in hours.

    • year: number

      the gregorian year

    • month: number

      the gregorian month

    • day: number

      the day of the gregorian month

    • hour: number

      the hour of the day

    • minute: number

      the minute of the hour

    • seconds: number

      the second of the minute

    Returns Gst.DateTime

  • Tries to parse common variants of ISO-8601 datetime strings into a #GstDateTime. Possible input formats are (for example): 2012-06-30T22:46:43Z, 2012, 2012-06, 2012-06-30, 2012-06-30T22:46:43-0430, 2012-06-30T22:46Z, 2012-06-30T22:46-0430, 2012-06-30 22:46, 2012-06-30 22:46:43, 2012-06-00, 2012-00-00, 2012-00-30, 22:46:43Z, 22:46Z, 22:46:43-0430, 22:46-0430, 22:46:30, 22:46 If no date is provided, it is assumed to be "today" in the timezone provided (if any), otherwise UTC.

    Parameters

    • string: string

      ISO 8601-formatted datetime string.

    Returns Gst.DateTime

  • new_from_unix_epoch_local_time(secs: number): Gst.DateTime
  • Creates a new #GstDateTime using the time since Jan 1, 1970 specified by secs. The #GstDateTime is in the local timezone.

    Parameters

    • secs: number

      seconds from the Unix epoch

    Returns Gst.DateTime

  • new_from_unix_epoch_local_time_usecs(usecs: number): Gst.DateTime
  • Creates a new #GstDateTime using the time since Jan 1, 1970 specified by usecs. The #GstDateTime is in the local timezone.

    Parameters

    • usecs: number

      microseconds from the Unix epoch

    Returns Gst.DateTime

  • Creates a new #GstDateTime using the time since Jan 1, 1970 specified by secs. The #GstDateTime is in the UTC timezone.

    Parameters

    • secs: number

      seconds from the Unix epoch

    Returns Gst.DateTime

  • new_from_unix_epoch_utc_usecs(usecs: number): Gst.DateTime
  • Creates a new #GstDateTime using the time since Jan 1, 1970 specified by usecs. The #GstDateTime is in UTC.

    Parameters

    • usecs: number

      microseconds from the Unix epoch

    Returns Gst.DateTime

  • new_local_time(year: number, month: number, day: number, hour: number, minute: number, seconds: number): Gst.DateTime
  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone.

    year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31, hour from 0 to 23, minutes and seconds from 0 to 59.

    If month is -1, then the #GstDateTime created will only contain year, and all other fields will be considered not set.

    If day is -1, then the #GstDateTime created will only contain year and month and all other fields will be considered not set.

    If hour is -1, then the #GstDateTime created will only contain year and month and day, and the time fields will be considered not set. In this case minute and seconds should also be -1.

    Parameters

    • year: number

      the gregorian year

    • month: number

      the gregorian month, or -1

    • day: number

      the day of the gregorian month, or -1

    • hour: number

      the hour of the day, or -1

    • minute: number

      the minute of the hour, or -1

    • seconds: number

      the second of the minute, or -1

    Returns Gst.DateTime

  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone.

    year should be from 1 to 9999.

    Parameters

    • year: number

      the gregorian year

    Returns Gst.DateTime

  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone.

    year should be from 1 to 9999, month should be from 1 to 12.

    If value is -1 then all over value will be ignored. For example if month == -1, then #GstDateTime will created only for year.

    Parameters

    • year: number

      the gregorian year

    • month: number

      the gregorian month

    Returns Gst.DateTime

  • new_ymd(year: number, month: number, day: number): Gst.DateTime
  • Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone.

    year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31.

    If value is -1 then all over value will be ignored. For example if month == -1, then #GstDateTime will created only for year. If day == -1, then #GstDateTime will created for year and month and so on.

    Parameters

    • year: number

      the gregorian year

    • month: number

      the gregorian month

    • day: number

      the day of the gregorian month

    Returns Gst.DateTime

Legend

  • Module
  • Object literal
  • Variable
  • Function
  • Function with type parameter
  • Index signature
  • Type alias
  • Type alias with type parameter
  • Enumeration
  • Enumeration member
  • Property
  • Method
  • Interface
  • Interface with type parameter
  • Constructor
  • Property
  • Method
  • Index signature
  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Accessor
  • Index signature
  • Inherited constructor
  • Inherited property
  • Inherited method
  • Inherited accessor
  • Protected property
  • Protected method
  • Protected accessor
  • Private property
  • Private method
  • Private accessor
  • Static property
  • Static method