| | |
| | |
| | |
| |
|
| | package time |
| |
|
| | import ( |
| | "sync" |
| | ) |
| |
|
| | func ResetLocalOnceForTest() { |
| | localOnce = sync.Once{} |
| | localLoc = Location{} |
| | } |
| |
|
| | func ForceUSPacificForTesting() { |
| | ResetLocalOnceForTest() |
| | localOnce.Do(initTestingZone) |
| | } |
| |
|
| | func ZoneinfoForTesting() *string { |
| | return zoneinfo |
| | } |
| |
|
| | func ResetZoneinfoForTesting() { |
| | zoneinfo = nil |
| | zoneinfoOnce = sync.Once{} |
| | } |
| |
|
| | var ( |
| | DisablePlatformSources = disablePlatformSources |
| | GorootZoneSource = gorootZoneSource |
| | ParseTimeZone = parseTimeZone |
| | SetMono = (*Time).setMono |
| | GetMono = (*Time).mono |
| | ErrLocation = errLocation |
| | ReadFile = readFile |
| | LoadTzinfo = loadTzinfo |
| | NextStdChunk = nextStdChunk |
| | Tzset = tzset |
| | TzsetName = tzsetName |
| | TzsetOffset = tzsetOffset |
| | AsynctimerChan = asynctimerchan |
| | ) |
| |
|
| | func LoadFromEmbeddedTZData(zone string) (string, error) { |
| | return loadFromEmbeddedTZData(zone) |
| | } |
| |
|
| | type RuleKind int |
| |
|
| | const ( |
| | RuleJulian = RuleKind(ruleJulian) |
| | RuleDOY = RuleKind(ruleDOY) |
| | RuleMonthWeekDay = RuleKind(ruleMonthWeekDay) |
| | UnixToInternal = unixToInternal |
| | ) |
| |
|
| | type Rule struct { |
| | Kind RuleKind |
| | Day int |
| | Week int |
| | Mon int |
| | Time int |
| | } |
| |
|
| | func TzsetRule(s string) (Rule, string, bool) { |
| | r, rs, ok := tzsetRule(s) |
| | rr := Rule{ |
| | Kind: RuleKind(r.kind), |
| | Day: r.day, |
| | Week: r.week, |
| | Mon: r.mon, |
| | Time: r.time, |
| | } |
| | return rr, rs, ok |
| | } |
| |
|
| | |
| | var StdChunkNames = map[int]string{ |
| | 0: "", |
| | stdLongMonth: "January", |
| | stdMonth: "Jan", |
| | stdNumMonth: "1", |
| | stdZeroMonth: "01", |
| | stdLongWeekDay: "Monday", |
| | stdWeekDay: "Mon", |
| | stdDay: "2", |
| | stdUnderDay: "_2", |
| | stdZeroDay: "02", |
| | stdUnderYearDay: "__2", |
| | stdZeroYearDay: "002", |
| | stdHour: "15", |
| | stdHour12: "3", |
| | stdZeroHour12: "03", |
| | stdMinute: "4", |
| | stdZeroMinute: "04", |
| | stdSecond: "5", |
| | stdZeroSecond: "05", |
| | stdLongYear: "2006", |
| | stdYear: "06", |
| | stdPM: "PM", |
| | stdpm: "pm", |
| | stdTZ: "MST", |
| | stdISO8601TZ: "Z0700", |
| | stdISO8601SecondsTZ: "Z070000", |
| | stdISO8601ShortTZ: "Z07", |
| | stdISO8601ColonTZ: "Z07:00", |
| | stdISO8601ColonSecondsTZ: "Z07:00:00", |
| | stdNumTZ: "-0700", |
| | stdNumSecondsTz: "-070000", |
| | stdNumShortTZ: "-07", |
| | stdNumColonTZ: "-07:00", |
| | stdNumColonSecondsTZ: "-07:00:00", |
| | stdFracSecond0 | 1<<stdArgShift: ".0", |
| | stdFracSecond0 | 2<<stdArgShift: ".00", |
| | stdFracSecond0 | 3<<stdArgShift: ".000", |
| | stdFracSecond0 | 4<<stdArgShift: ".0000", |
| | stdFracSecond0 | 5<<stdArgShift: ".00000", |
| | stdFracSecond0 | 6<<stdArgShift: ".000000", |
| | stdFracSecond0 | 7<<stdArgShift: ".0000000", |
| | stdFracSecond0 | 8<<stdArgShift: ".00000000", |
| | stdFracSecond0 | 9<<stdArgShift: ".000000000", |
| | stdFracSecond9 | 1<<stdArgShift: ".9", |
| | stdFracSecond9 | 2<<stdArgShift: ".99", |
| | stdFracSecond9 | 3<<stdArgShift: ".999", |
| | stdFracSecond9 | 4<<stdArgShift: ".9999", |
| | stdFracSecond9 | 5<<stdArgShift: ".99999", |
| | stdFracSecond9 | 6<<stdArgShift: ".999999", |
| | stdFracSecond9 | 7<<stdArgShift: ".9999999", |
| | stdFracSecond9 | 8<<stdArgShift: ".99999999", |
| | stdFracSecond9 | 9<<stdArgShift: ".999999999", |
| | } |
| |
|
| | var Quote = quote |
| |
|
| | var AppendInt = appendInt |
| | var AppendFormatAny = Time.appendFormat |
| | var AppendFormatRFC3339 = Time.appendFormatRFC3339 |
| | var ParseAny = parse |
| | var ParseRFC3339 = parseRFC3339[string] |
| |
|