| Extracted from Pike v7.8 release 866 at 2018-07-18.

[Top]
Calendar
Calendar.Time
Calendar.Time.SuperTimeRange

# Method Calendar.Time.SuperTimeRange()->number_of_hours()

Method number_of_hours

  `Second second()`
  `Second second(int n)`
  `array(Second) seconds()`
  `array(Second) seconds(int first, int last)`
  `int number_of_seconds()`
  `Minute minute()`
  `Minute minute(int n)`
  `array(Minute) minutes()`
  `array(Minute) minutes(int first, int last)`
  `int number_of_minutes()`
  `Hour hour()`
  `Hour hour(int n)`
  `array(Hour) hours()`
  `array(Hour) hours(int first, int last)`
  `int number_of_hours()`

Description

  Similar to TimeofDay , the Time::SuperTimeRange has a number of methods for digging out time parts of the range. Since a SuperTimeRange is a bit more complex - the major reason for its existance it that it contains holes, this calculation is a bit more advanced too.

  If a range contains the seconds, say, 1..2 and 4..5, the third second (number 2, since we start from 0) in the range would be number 4, like this:

      no   means this second
      0    1
      1    2
      2    4      <- second three is missing,
      3    5         as we don't have it in the example range

  number_of_seconds () will in this example therefore also report 4, not 5, even if the time from start of the range to the end of the range is 5 seconds.