# Hierarchy For Package org.codehaus.groovy.runtime.memoize

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.codehaus.groovy.runtime.memoize.CommonCache<K,​V> (implements org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V>, java.io.Serializable, org.codehaus.groovy.runtime.memoize.ValueConvertable<V1,​V2>)
  - org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache<K,​V> (implements org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V>, java.io.Serializable, org.codehaus.groovy.runtime.memoize.ValueConvertable<V1,​V2>)
    - org.codehaus.groovy.runtime.memoize.ConcurrentSoftCache<K,​V>
  - org.codehaus.groovy.runtime.memoize.LRUCache<K,​V> (implements org.codehaus.groovy.runtime.memoize.MemoizeCache<K,​V>)
  - org.codehaus.groovy.runtime.memoize.Memoize
  - org.codehaus.groovy.runtime.memoize.NullProtectionStorage
  - org.codehaus.groovy.runtime.memoize.StampedCommonCache<K,​V> (implements org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V>, java.io.Serializable, org.codehaus.groovy.runtime.memoize.ValueConvertable<V1,​V2>)
  - org.codehaus.groovy.runtime.memoize.UnlimitedConcurrentCache<K,​V> (implements org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V>, java.io.Serializable)

## Interface Hierarchy

- org.codehaus.groovy.runtime.memoize.EvictableCache.Action<K,​V,​R>
- java.util.Map<K,​V>
  - org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V> (also extends org.codehaus.groovy.runtime.memoize.MemoizeCache<K,​V>)
- org.codehaus.groovy.runtime.memoize.MemoizeCache<K,​V>
  - org.codehaus.groovy.runtime.memoize.EvictableCache<K,​V> (also extends java.util.Map<K,​V>)
- org.codehaus.groovy.runtime.memoize.MemoizeCache.ValueProvider<K,​V>
- org.codehaus.groovy.runtime.memoize.ValueConvertable<V1,​V2>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - org.codehaus.groovy.runtime.memoize.EvictableCache.EvictionStrategy