Class: TZInfo::DataSources::DataTimezoneInfo Abstract

Inherits:
TimezoneInfo show all
Defined in:
lib/tzinfo/data_sources/data_timezone_info.rb

Overview

This class is abstract.

Data sources return instances of DataTimezoneInfo subclasses.

The base class for time zones defined as either a series of transitions (TransitionsDataTimezoneInfo) or a constantly observed offset (ConstantOffsetDataTimezoneInfo).

Instance Attribute Summary

Attributes inherited from TimezoneInfo

#identifier

Instance Method Summary collapse

Methods inherited from TimezoneInfo

#initialize, #inspect

Constructor Details

This class inherits a constructor from TZInfo::DataSources::TimezoneInfo

Instance Method Details

#create_timezoneDataTimezone

Returns a new TZInfo::DataTimezone instance for the time zone represented by this TZInfo::DataSources::DataTimezoneInfo.

Returns:


76
77
78
# File 'lib/tzinfo/data_sources/data_timezone_info.rb', line 76

def create_timezone
  DataTimezone.new(self)
end

#period_for(timestamp) ⇒ TimezonePeriod

Returns the TimezonePeriod observed at the time specified by timestamp.

Parameters:

Returns:

Raises:

  • (ArgumentError)

    may be raised if timestamp is nil or does not have a specified utc_offset.


18
19
20
# File 'lib/tzinfo/data_sources/data_timezone_info.rb', line 18

def period_for(timestamp)
  raise_not_implemented('period_for')
end

#periods_for_local(local_timestamp) ⇒ Array<TimezonePeriod>

Returns an Array containing the TimezonePeriods that could be observed at the local time specified by local_timestamp. The results are are ordered by increasing UTC start date. An empty Array is returned if no periods are found for the given local time.

Parameters:

Returns:

Raises:

  • (ArgumentError)

    may be raised if local_timestamp is nil, or has a specified utc_offset.


34
35
36
# File 'lib/tzinfo/data_sources/data_timezone_info.rb', line 34

def periods_for_local(local_timestamp)
  raise_not_implemented('periods_for_local')
end

#transitions_up_to(to_timestamp, from_timestamp = nil) ⇒ Array<TimezoneTransition>

Returns an Array of TimezoneTransition instances representing the times where the UTC offset of the time zone changes.

Transitions are returned up to a given Timestamp (to_timestamp).

A from Timestamp may also be supplied using the from_timestamp parameter. If from_timestamp is specified, only transitions from that time onwards will be returned.

Comparisons with to_timestamp are exclusive. Comparisons with from_timestamp are inclusive. If a transition falls precisely on to_timestamp, it will be excluded. If a transition falls on from_timestamp, it will be included.

Transitions returned are ordered by when they occur, from earliest to latest.

Parameters:

  • to_timestamp (Timestamp)

    a Timestamp with a specified utc_offset. Transitions are returned if they occur before this time.

  • from_timestamp (Timestamp) (defaults to: nil)

    an optional Timestamp with a specified utc_offset. If specified, transitions are returned if they occur at or after this time.

Returns:

Raises:

  • (ArgumentError)

    may be raised if to_timestamp is nil or does not have a specified utc_offset.

  • (ArgumentError)

    may be raised if from_timestamp is specified but does not have a specified utc_offset.

  • (ArgumentError)

    may be raised if from_timestamp is specified but is not earlier than or at the same time as to_timestamp.


70
71
72
# File 'lib/tzinfo/data_sources/data_timezone_info.rb', line 70

def transitions_up_to(to_timestamp, from_timestamp = nil)
  raise_not_implemented('transitions_up_to')
end