public abstract class StaticFieldInstruction extends FieldInstruction
className, fi, fname, ftype, isReferenceField, lastValue, size, varId
attr, insnIndex, mi, position
Modifier | Constructor and Description |
---|---|
protected |
StaticFieldInstruction(java.lang.String fieldName,
java.lang.String clsDescriptor,
java.lang.String fieldDescriptor) |
Modifier and Type | Method and Description |
---|---|
void |
accept(JVMInstructionVisitor insVisitor) |
ClassInfo |
getClassInfo() |
ElementInfo |
getElementInfo(ThreadInfo ti)
who owns the field?
NOTE: this should only be used from a executeInstruction()/instructionExecuted() context
|
FieldInfo |
getFieldInfo() |
ClassInfo |
getLastClassInfo() |
java.lang.String |
getLastClassName() |
StaticElementInfo |
getLastElementInfo() |
protected void |
initialize()
on-demand initialize the ClassInfo and FieldInfo fields.
|
ElementInfo |
peekElementInfo(ThreadInfo ti)
that's invariant, as opposed to InstanceFieldInstruction, so it's
not really a peek
|
java.lang.String |
toPostExecString()
this can contain additional info that was gathered/cached during execution
|
Instruction |
typeSafeClone(MethodInfo mi)
this is overridden by any Instruction that use a cache for class or
method to provide a type safe cloning
|
getClassName, getFieldName, getFieldSize, getId, getLastValue, getVariableId, isMonitorEnterPrologue, isRead, isReferenceField, setField, toString
addAttr, asInstruction, attrIterator, attrIterator, cleanupTransients, execute, getAttr, getAttr, getFileLocation, getFilePos, getInstructionIndex, getLength, getLineNumber, getMethodInfo, getMnemonic, getNext, getNext, getNextAttr, getPosition, getPrev, getSourceLine, getSourceLocation, getSourceOrLocation, hasAttr, hasAttr, init, isBackJump, isCompleted, isExtendedInstruction, isFirstInstruction, isSchedulingRelevant, removeAttr, replaceAttr, requiresClinitExecution, setAttr, setContext, setLocation, setMethodInfo
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
asInstruction, execute, getByteCode, getFileLocation, getFilePos, getInstructionIndex, getLength, getLineNumber, getMethodInfo, getMnemonic, getNext, getNext, getPosition, getPrev, getSourceLine, getSourceLocation, isBackJump, isCompleted, isExtendedInstruction, isFirstInstruction
addAttr, attrIterator, attrIterator, getAttr, getAttr, getNextAttr, hasAttr, hasAttr, removeAttr, replaceAttr, setAttr
protected StaticFieldInstruction(java.lang.String fieldName, java.lang.String clsDescriptor, java.lang.String fieldDescriptor)
protected void initialize()
public ElementInfo getElementInfo(ThreadInfo ti)
public java.lang.String toPostExecString()
Instruction
toPostExecString
in interface InstructionInterface
toPostExecString
in class Instruction
public ClassInfo getClassInfo()
public FieldInfo getFieldInfo()
getFieldInfo
in class FieldInstruction
public ElementInfo peekElementInfo(ThreadInfo ti)
peekElementInfo
in class FieldInstruction
public StaticElementInfo getLastElementInfo()
getLastElementInfo
in class FieldInstruction
public ClassInfo getLastClassInfo()
public java.lang.String getLastClassName()
public void accept(JVMInstructionVisitor insVisitor)
public Instruction typeSafeClone(MethodInfo mi)
Instruction
typeSafeClone
in class Instruction