org.aspectbench.tm.runtime.internal
Interface IndexTree

All Known Implementing Classes:
IndexTreeMap

public interface IndexTree

Interface for a fully indexed tree of tracematch constraints


Method Summary
 java.util.Iterator get(java.lang.Object[] keys)
          Get an iterator over all ITDBinding objects for the given set of keys, or null if none.
 void insert(java.lang.Object[] keys, MaybeWeakRef value)
          Insert a particular ITDBinding object into the tree for the given keys.
 

Method Detail

insert

void insert(java.lang.Object[] keys,
            MaybeWeakRef value)
Insert a particular ITDBinding object into the tree for the given keys. TODO: How do we handle primitive bindings? As the update code needs control over strength of stored references, values in the IndexTree are MaybeWeakRefs, and we trust the update code to keep anything alive that needs to be alive.


get

java.util.Iterator get(java.lang.Object[] keys)
Get an iterator over all ITDBinding objects for the given set of keys, or null if none. Note that the iterator unboxes the MaybeWeakRefs, so calling next() either returns an actual value or null.