code: func NewWithEvict(size int, onEvicted func(key interface{}, value interface{})) (*Cache, error) {
  	lru, err := simplelru.NewLRU(size, simplelru.EvictCallback(onEvicted))
  	if err != nil {
  		return nil, err
  	}
  	c := &Cache{
  		lru: lru,
  	}
  	return c, nil
  }
docs: // NewWithEvict constructs a fixed size cache with the given eviction
  // callback.