They autopromote upwards (second->minute->hour). Fraction A fraction is a partial second. It can start and end on non-even seconds - it has an integer for nanosecond precision. It autopromotes upwards to second (etc). This module can not be used standalone, but must have some virtual functions filled in. It extends the TimeRanges module.
This contains the base classes of any traditional calendar: Year The Year class, which contains the largest timerange unit used. Month The month, which divides the year into non-equal - most of the calendards, anyway - long day sequences, and which is aligned to the year. Week The week, which is a equally long day sequence,
of one time unit only, the Tick (1000 Tick is one earth year). It is based directly on TimeRanges. Ruleset.pike Each time unit keeps track of what rules are in affect now; the rules contain two things for now, language to use and timezone to use. It will be extended to contain geographical position and possible other needed stuff later. Any TimeRange object returning a new TimeRange object will transfer the rules in the creation of the object.
Contains the classes for the Timezone and Language objects
used in a Ruleset object.
Language.pmod This module keeps the base classes of languages. Timezone.pmod This module keeps the base classes of timezones, inheriting the DST rules and including the timezone definitions that are created by the mkrules.pike program. TZrules.pmod This module has the DST rules (127). TZs.h