code: func (c *Cache) pruneSizeLocked() {
  	// There is no size constraint.
  	if c.size <= 0 {
  		return
  	}
  
  	// Prune the oldest entries until we're within our size constraint.
  	for e := c.lru.Back(); e != nil; e = c.lru.Back() {
  		if len(c.cache) <= c.size {
  			return
  		}
  		c.evictEntryLocked(e)
  	}
  }
docs: // pruneSizeLocked prunes LRU elements until its heuristic is satisfied. Its
  // write lock must be held by the caller.