aboutsummaryrefslogtreecommitdiff
path: root/src/gnunet/util/time.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/gnunet/util/time.go')
-rw-r--r--src/gnunet/util/time.go13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/gnunet/util/time.go b/src/gnunet/util/time.go
index 6e98514..cf3739a 100644
--- a/src/gnunet/util/time.go
+++ b/src/gnunet/util/time.go
@@ -81,6 +81,13 @@ func (t AbsoluteTime) Add(d time.Duration) AbsoluteTime {
81 } 81 }
82} 82}
83 83
84// Add a relative time to an absolute time yielding a new absolute time.
85func (t AbsoluteTime) AddRelative(d RelativeTime) AbsoluteTime {
86 return AbsoluteTime{
87 Val: t.Val + d.Val,
88 }
89}
90
84// Elapsed time since 't'. Return 0 if 't' is in the future. 91// Elapsed time since 't'. Return 0 if 't' is in the future.
85func (t AbsoluteTime) Elapsed() RelativeTime { 92func (t AbsoluteTime) Elapsed() RelativeTime {
86 dt, elapsed := t.Diff(AbsoluteTimeNow()) 93 dt, elapsed := t.Diff(AbsoluteTimeNow())
@@ -107,11 +114,7 @@ func (t AbsoluteTime) Diff(t2 AbsoluteTime) (dt RelativeTime, elapsed bool) {
107 114
108// Expired returns true if the timestamp is in the past. 115// Expired returns true if the timestamp is in the past.
109func (t AbsoluteTime) Expired() bool { 116func (t AbsoluteTime) Expired() bool {
110 // check for "never" 117 return t.Compare(AbsoluteTimeNow()) < 0
111 if t.Val == math.MaxUint64 {
112 return false
113 }
114 return t.Val < uint64(time.Now().Unix())
115} 118}
116 119
117// Compare two times (-1 = (t < t2), 0 = (t == t2), 1 = (t > t2) 120// Compare two times (-1 = (t < t2), 0 = (t == t2), 1 = (t > t2)