choco.mem
Class PartiallyStoredVector
java.lang.Object
choco.mem.PartiallyStoredVector
public class PartiallyStoredVector
- extends java.lang.Object
A class implementing a vector with two kind of storage:
standard static storage in an array, and backtrackable storage.
By convention, objects with small indices (0 .. 999999) are statically managed
as if they were in a standard array.
And objects with large indices (1000000 ... ) are "stored" in a backtrackable
manner, as if they were in a StoredIntVector
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
INITIAL_STATIC_CAPACITY
public static final int INITIAL_STATIC_CAPACITY
- See Also:
- Constant Field Values
INITIAL_STORED_CAPACITY
public static final int INITIAL_STORED_CAPACITY
- See Also:
- Constant Field Values
STORED_OFFSET
public static final int STORED_OFFSET
- See Also:
- Constant Field Values
staticObjects
protected java.lang.Object[] staticObjects
storedObjects
protected java.lang.Object[] storedObjects
nStaticObjects
protected int nStaticObjects
nStoredObjects
protected IStateInt nStoredObjects
PartiallyStoredVector
public PartiallyStoredVector(Environment env)
staticAdd
public int staticAdd(java.lang.Object o)
staticRemove
protected void staticRemove(int idx)
remove
public void remove(java.lang.Object o)
ensureStaticCapacity
public void ensureStaticCapacity(int n)
add
public int add(java.lang.Object o)
ensureStoredCapacity
public void ensureStoredCapacity(int n)
get
public java.lang.Object get(int index)
isEmpty
public boolean isEmpty()
size
public int size()
getIndexIterator
public IntIterator getIndexIterator()
isStaticIndex
public static boolean isStaticIndex(int idx)
getSmallIndex
public static int getSmallIndex(int idx)
getGlobalIndex
public static int getGlobalIndex(int idx,
boolean isStatic)
getLastStaticIndex
public int getLastStaticIndex()
getFirstStaticIndex
public static int getFirstStaticIndex()