Source File
timestamp.go
Belonging Package
github.com/google/go-github/v66/github
// Copyright 2013 The go-github AUTHORS. All rights reserved.//// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package githubimport ()// Timestamp represents a time that can be unmarshalled from a JSON string// formatted as either an RFC3339 or Unix timestamp. This is necessary for some// fields since the GitHub API is inconsistent in how it represents times. All// exported methods of time.Time can be called on Timestamp.type Timestamp struct {time.Time}func ( Timestamp) () string {return .Time.String()}// GetTime returns std time.Time.func ( *Timestamp) () *time.Time {if == nil {return nil}return &.Time}// UnmarshalJSON implements the json.Unmarshaler interface.// Time is expected in RFC3339 or Unix format.func ( *Timestamp) ( []byte) ( error) {:= string(), := strconv.ParseInt(, 10, 64)if == nil {.Time = time.Unix(, 0)if .Time.Year() > 3000 {.Time = time.Unix(0, *1e6)}} else {.Time, = time.Parse(`"`+time.RFC3339+`"`, )}return}// Equal reports whether t and u are equal based on time.Equalfunc ( Timestamp) ( Timestamp) bool {return .Time.Equal(.Time)}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |