edu.vub.at.objects.natives
Class MethodDictionary
java.lang.Object
edu.vub.at.objects.natives.MethodDictionary
- All Implemented Interfaces:
- java.lang.Cloneable, java.util.Map, java.io.Serializable
- public class MethodDictionary
- extends java.lang.Object
- implements java.util.Map, java.lang.Cloneable, java.io.Serializable
Instances of this class implement a dictionary mapping selectors to AmbientTalk methods.
These method dictionaries are a traditional candidate for being shared among different
clones of an object, improving the space efficiency of the language.
The advantage of maps lies in the fact that they can be used implicitly to keep track
of which objects were cloned from one another. As said above clones share the dictionaries.
To ensure that this relation is upheld when one clone makes an idiosyncratic change,
we store from which method dictionary the altered copy was created.
- Author:
- smostinc
- See Also:
- Serialized Form
Nested classes inherited from class java.util.Map |
java.util.Map.Entry |
Method Summary |
void |
clear()
|
protected java.lang.Object |
clone()
|
boolean |
containsKey(java.lang.Object key)
|
boolean |
containsValue(java.lang.Object value)
|
java.util.Set |
entrySet()
|
java.lang.Object |
get(java.lang.Object key)
|
boolean |
isDerivedFrom(MethodDictionary aMethodDictionary)
Checks whether both MethodDictionaries are equal or whether the passed object is a
MethodDictionary from which this one (indirectly) originates. |
boolean |
isEmpty()
|
java.util.Set |
keySet()
|
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value)
|
void |
putAll(java.util.Map keyValuePairs)
|
java.lang.Object |
remove(java.lang.Object key)
|
int |
size()
|
java.util.Collection |
values()
|
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Map |
equals, hashCode |
_DEFAULT_SIZE_
private static final int _DEFAULT_SIZE_
- See Also:
- Constant Field Values
parent_
private MethodDictionary parent_
methods_
private java.util.HashMap methods_
MethodDictionary
public MethodDictionary()
MethodDictionary
private MethodDictionary(java.util.HashMap methods,
MethodDictionary parent)
clear
public void clear()
- Specified by:
clear
in interface java.util.Map
containsKey
public boolean containsKey(java.lang.Object key)
- Specified by:
containsKey
in interface java.util.Map
containsValue
public boolean containsValue(java.lang.Object value)
- Specified by:
containsValue
in interface java.util.Map
entrySet
public java.util.Set entrySet()
- Specified by:
entrySet
in interface java.util.Map
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
get
in interface java.util.Map
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interface java.util.Map
keySet
public java.util.Set keySet()
- Specified by:
keySet
in interface java.util.Map
put
public java.lang.Object put(java.lang.Object key,
java.lang.Object value)
- Specified by:
put
in interface java.util.Map
putAll
public void putAll(java.util.Map keyValuePairs)
- Specified by:
putAll
in interface java.util.Map
remove
public java.lang.Object remove(java.lang.Object key)
- Specified by:
remove
in interface java.util.Map
size
public int size()
- Specified by:
size
in interface java.util.Map
values
public java.util.Collection values()
- Specified by:
values
in interface java.util.Map
clone
protected java.lang.Object clone()
isDerivedFrom
public boolean isDerivedFrom(MethodDictionary aMethodDictionary)
- Checks whether both MethodDictionaries are equal or whether the passed object is a
MethodDictionary from which this one (indirectly) originates.