gnu.mapping

Class Table2D

public class Table2D extends Object

Maps 2 objects to another. Uses a weak references to each key, unless it is null or a Symbol. This should at some point be merged with SimpleEnvironment. FIXME.
Constructor Summary
Table2D()
Table2D(int capacity)
Method Summary
Objectget(Object key1, Object key2, Object defaultValue)
static Table2DgetInstance()
booleanisBound(Object key1, Object key2)
protected Entrylookup(Object key1, Object key2, int hash1, int hash2, boolean create)
Objectput(Object key1, Object key2, Object newValue)
Objectremove(Object key1, Object key2)
Objectremove(Object key1, Object key2, int hash)
Objectremove(Object key1, Object key2, int hash1, int hash2)
protected ObjectwrapReference(Object key)

Constructor Detail

Table2D

public Table2D()

Table2D

public Table2D(int capacity)

Method Detail

get

public Object get(Object key1, Object key2, Object defaultValue)

getInstance

public static final Table2D getInstance()

isBound

public boolean isBound(Object key1, Object key2)

lookup

protected Entry lookup(Object key1, Object key2, int hash1, int hash2, boolean create)

put

public Object put(Object key1, Object key2, Object newValue)

remove

public Object remove(Object key1, Object key2)

remove

public Object remove(Object key1, Object key2, int hash)

remove

public Object remove(Object key1, Object key2, int hash1, int hash2)

wrapReference

protected Object wrapReference(Object key)