code: public Object[] addAll(CacheMap c) {
          LinkedList<Object> discards = new LinkedList<Object>();
  
          Object discard;
          for (int bucketIndex = c.next[c.BEFORE_LRU]; bucketIndex != c.AFTER_MRU; bucketIndex = c.next[bucketIndex])
              for (int i = 0; i < c.bucketSizes[bucketIndex]; i++)
                  if ((discard = add(c.keys[bucketIndex][i], c.values[bucketIndex][i])) != null)
                      discards.add(discard);
  
          return discards.toArray();
      }
docs: Inserts into this CacheMap all entries from the specified CacheMap,
  returning a list of any values that do not fit.
  
  @param c the source CacheMap from which to copy entries.
  @return list of values from the source CacheMap which didn't fit.