public class CachingIndexed<T> extends Object implements Indexed<T>, Closeable
| Modifier and Type | Field and Description | 
|---|---|
static int | 
INITIAL_CACHE_CAPACITY  | 
| Constructor and Description | 
|---|
CachingIndexed(GenericIndexed<T> delegate,
              int lookupCacheSize)
Creates a CachingIndexed wrapping the given GenericIndexed with a value lookup cache
 CachingIndexed objects are not thread safe and should only be used by a single thread at a time. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
close()  | 
T | 
get(int index)  | 
Class<? extends T> | 
getClazz()  | 
int | 
indexOf(T value)
Returns the index of "value" in this Indexed object, or a negative number if the value is not present. 
 | 
void | 
inspectRuntimeShape(RuntimeShapeInspector inspector)
Implementations of this method should call  
inspector.visit() with all fields of this class, which meet two
 conditions:
  1. | 
Iterator<T> | 
iterator()  | 
int | 
size()  | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorpublic static final int INITIAL_CACHE_CAPACITY
public CachingIndexed(GenericIndexed<T> delegate, int lookupCacheSize)
delegate - the GenericIndexed to wrap with a lookup cache.lookupCacheSize - maximum size in bytes of the lookup cache if greater than zeropublic int indexOf(T value)
Indexedpublic void close()
           throws IOException
close in interface Closeableclose in interface AutoCloseableIOExceptionpublic void inspectRuntimeShape(RuntimeShapeInspector inspector)
HotLoopCalleeinspector.visit() with all fields of this class, which meet two
 conditions:
  1. They are used in methods of this class, annotated with CalledFromHotLoop
  2. They are either:
     a. Nullable objects
     b. Instances of HotLoopCallee
     c. Objects, which don't always have a specific class in runtime. For example, a field of type Set could be HashSet or TreeSet in runtime, depending on how
        this instance (the instance on which inspectRuntimeShape() is called) is configured.
     d. ByteBuffer or similar objects, where byte order matters
     e. boolean flags, affecting branch taking
     f. Arrays of objects, meeting any of conditions a-e.inspectRuntimeShape in interface HotLoopCalleeCopyright © 2011–2018. All rights reserved.