public class OVStatics extends java.lang.Object implements Statics
| Modifier and Type | Field and Description |
|---|---|
protected ObjVector<ElementInfo> |
elementInfos |
protected IntTable<java.lang.String> |
ids |
protected int |
nextId |
| Modifier and Type | Method and Description |
|---|---|
void |
cleanUpDanglingReferences(Heap heap) |
protected int |
computeId(ClassInfo ci) |
protected StaticElementInfo |
createStaticElementInfo(int id,
ClassInfo ci,
ThreadInfo ti,
ElementInfo eiClsObj) |
StaticElementInfo |
get(int id)
get an ElementInfo that might or might not be suitable for modification.
|
Memento<Statics> |
getMemento() |
Memento<Statics> |
getMemento(MementoFactory factory) |
StaticElementInfo |
getModifiable(int id)
get an ElementInfo that is guaranteed to be modifiable.
|
java.util.Iterator<ElementInfo> |
iterator() |
java.lang.Iterable<StaticElementInfo> |
liveStatics() |
void |
markRoots(Heap heap) |
StaticElementInfo |
newClass(ClassInfo ci,
ThreadInfo ti,
ElementInfo eiClsObj)
this returns the search global id which is unique within this ClassLoader namespace.
|
StaticElementInfo |
newStartupClass(ClassInfo ci,
ThreadInfo ti)
startup classes are registered and initialized in two steps since object
creation has to be deferred until we have at least Object and Class ClassInfos
|
int |
size() |
protected ObjVector<ElementInfo> elementInfos
protected int nextId
protected IntTable<java.lang.String> ids
public OVStatics(Config conf)
protected int computeId(ClassInfo ci)
protected StaticElementInfo createStaticElementInfo(int id, ClassInfo ci, ThreadInfo ti, ElementInfo eiClsObj)
public StaticElementInfo newClass(ClassInfo ci, ThreadInfo ti, ElementInfo eiClsObj)
Staticspublic StaticElementInfo newStartupClass(ClassInfo ci, ThreadInfo ti)
StaticsnewStartupClass in interface Staticspublic StaticElementInfo get(int id)
Staticspublic StaticElementInfo getModifiable(int id)
StaticsgetModifiable in interface Staticspublic void cleanUpDanglingReferences(Heap heap)
cleanUpDanglingReferences in interface Staticspublic Memento<Statics> getMemento(MementoFactory factory)
getMemento in interface Staticspublic Memento<Statics> getMemento()
getMemento in interface Staticspublic java.util.Iterator<ElementInfo> iterator()
iterator in interface java.lang.Iterable<ElementInfo>public java.lang.Iterable<StaticElementInfo> liveStatics()
liveStatics in interface Statics