gnu.mapping

Class Table2D


public class Table2D
extends java.lang.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

Object
get(Object key1, Object key2, Object defaultValue)
static Table2D
getInstance()
boolean
isBound(Object key1, Object key2)
protected gnu.mapping.Entry
lookup(Object key1, Object key2, int hash1, int hash2, boolean create)
Object
put(Object key1, Object key2, Object newValue)
Object
remove(Object key1, Object key2)
Object
remove(Object key1, Object key2, int hash)
Object
remove(Object key1, Object key2, int hash1, int hash2)
protected Object
wrapReference(Object key)

Constructor Details

Table2D

public Table2D()

Table2D

public Table2D(int capacity)

Method Details

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 gnu.mapping.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)