added AND ('&') operation.
This commit is contained in:
parent
46f4078530
commit
ae0206e6c5
20
cache.go
20
cache.go
|
@ -125,11 +125,9 @@ func (c *cache) Get(k string) (interface{}, bool) {
|
||||||
c.mu.RUnlock()
|
c.mu.RUnlock()
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
if item.Expiration > 0 {
|
if item.Expiration > 0 && time.Now().UnixNano() > item.Expiration {
|
||||||
if time.Now().UnixNano() > item.Expiration {
|
c.mu.RUnlock()
|
||||||
c.mu.RUnlock()
|
return nil, false
|
||||||
return nil, false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
c.mu.RUnlock()
|
c.mu.RUnlock()
|
||||||
return item.Object, true
|
return item.Object, true
|
||||||
|
@ -171,10 +169,8 @@ func (c *cache) get(k string) (interface{}, bool) {
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
// "Inlining" of Expired
|
// "Inlining" of Expired
|
||||||
if item.Expiration > 0 {
|
if item.Expiration > 0 && time.Now().UnixNano() > item.Expiration {
|
||||||
if time.Now().UnixNano() > item.Expiration {
|
return nil, false
|
||||||
return nil, false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return item.Object, true
|
return item.Object, true
|
||||||
}
|
}
|
||||||
|
@ -1042,10 +1038,8 @@ func (c *cache) Items() map[string]Item {
|
||||||
now := time.Now().UnixNano()
|
now := time.Now().UnixNano()
|
||||||
for k, v := range c.items {
|
for k, v := range c.items {
|
||||||
// "Inlining" of Expired
|
// "Inlining" of Expired
|
||||||
if v.Expiration > 0 {
|
if v.Expiration > 0 && now > v.Expiration {
|
||||||
if now > v.Expiration {
|
continue
|
||||||
continue
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
m[k] = v
|
m[k] = v
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue