java.lang.Object
de.grogra.graph.impl.Edge
de.grogra.graph.impl.Node
de.grogra.xl.expr.Expression
de.grogra.xl.expr.EvalExpression
de.grogra.xl.expr.Invoke
- All Implemented Interfaces:
Manageable
,PersistenceCapable
,Shareable
,TypeId
,UserFields
,XObject
,Map
,Completable
,ExpressionFactory
,Generator
,NonlocalGenerator
,ValueObserver
,Serializable
,Cloneable
- Direct Known Subclasses:
InvokeSpecial
,InvokeStatic
,InvokeVirtual
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class de.grogra.graph.impl.Node
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType
-
Field Summary
Fields inherited from class de.grogra.xl.expr.Expression
$TYPE, aval, aval$FIELD, dval, dval$FIELD, etype, EXPR_0, I18N, lval, lval$FIELD, USED_BITS, VALID, valid$FIELD
Fields inherited from class de.grogra.graph.impl.Node
ADDITIONAL_FIELDS, bits, DELETED, EXTENT_BIT, EXTENT_MASK, extentIndex$FIELD, extentTail$FIELD, HAS_OBSERVERS, IS_INTERPRETIVE, isInterpretive$FIELD, LAST_EXTENT_INDEX, layer$FIELD, MARK, mark$FIELD, MAX_RESOLUTION, MIME_TYPE, MIN_RESOLUTION, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD, RESOLUTION_BIT, RESOLUTION_MASK, resolution$FIELD
Fields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAP
Fields inherited from interface de.grogra.reflect.TypeId
A_VALUE, ABSTRACT_PRIMITIVE, BOOLEAN, BOOLEAN_MASK, BYTE, BYTE_MASK, CHAR, CHAR_MASK, D_VALUE, DOUBLE, DOUBLE_MASK, F_VALUE, FLOAT, FLOAT_MASK, FLOATING_POINT_MASK, I_VALUE, INT, INT_ASSIGNABLE, INT_MASK, INTEGRAL_MASK, L_VALUE, LONG, LONG_MASK, MAX_PRIMITIVE, MIN_PRIMITIVE, NUMERIC_MASK, NUMERIC_NONCHAR_MASK, OBJECT, OBJECT_MASK, PRIMITIVE_MASK, SHORT, SHORT_MASK, TYPE_COUNT, VOID, VOID_MASK
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addTransfer
(ControlTransfer transfer) protected void
checkSetType
(Type type) void
complete
(MethodScope scope) protected final boolean
protected final byte
protected final char
protected final double
protected final float
protected final int
protected final long
protected final Object
protected final short
protected final void
int
protected abstract Method
protected abstract int
protected String
Computes the class-specific part of the string returned byNode.toString()
which shall be enclosed in brackets.protected void
void
receiveConsumer
(Expression consumer) void
receiveRoutine
(TypeScope scope, Expression descriptor) void
setBreakTarget
(BreakTarget target) void
void
useAccessMethod
(CClass amc) protected void
writeImpl
(BytecodeWriter writer, boolean discard) Methods inherited from class de.grogra.xl.expr.Expression
add, allowsIteration, cast, checkExpressionCount, clone, compile, compile, createConst, createExpression, createMaxConst, createMinConst, discards, evaluateAsObject, evaluateAsVoid, evaluateBoolean, evaluateBoolean, evaluateByte, evaluateByte, evaluateChar, evaluateChar, evaluateDouble, evaluateDouble, evaluateFloat, evaluateFloat, evaluateInt, evaluateInt, evaluateLong, evaluateLong, evaluateObject, evaluateObject, evaluateShort, evaluateShort, evaluatesWithoutSideeffect, fireValueChanged, getExpression, getExpression, getExpression, getExpressionCount, getFirstExpression, getLastExpression, getLeastCommonAncestor, getNextExpression, getNTypeImpl, getObjectExpression, getObjectExpression, getPromotedType, getSupportedTypes, getType, getTypeLoader, hasType, hasType, implicitConversion, isConditional, isPrimitiveOrStringConstant, isRequired, link, linkGraph, needsEmptyOperandStackForFinally, newInstance, opcode, opcode, promote, push, receiveChildren, setNextSibling, setType, substitute, toConst, toConstImpl, toString, unboxingConversion, unlinkTree, valueChanged, write, writeChildren, writeConditional, writeConditional, writeFinally, writeOperator
Methods inherited from class de.grogra.graph.impl.Node
addEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, cloneGraph, dump, dumpTree, dup, dupFrom, dupnew, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, findRefinementType, get, getAccessor, getAccessor, getAttributes, getAxisParent, getBoolean, getBranch, getBranchLength, getBranchNode, getBranchTail, getByte, getChar, getCommonAncestor, getCurrentGraphState, getDirectChildCount, getDouble, getEdgeAttributeAccessor, getEdgeAttributes, getEdgeBitsTo, getEdgeTo, getExtentIndex, getFirst, getFirstEdge, getFloat, getGraph, getId, getIgnored, getIndex, getInstantiator, getInt, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getObject, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getResolution, getShort, getSource, getStamp, getSuccessor, getSymbol, getSymbolColor, getTarget, getTransaction, getUserField, getUserFieldCount, getXClass, getXData, hasName, initProvider, initXClass, insertBranchNode, insertBranchNode, instantiateGraph, isAncestorOf, isDirection, isEncoarseOf, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setIgnored, setLayer, setMark, setName, setResolution, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, writeReplace
Methods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, getEdgeKeys, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBits
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.grogra.persistence.PersistenceCapable
getBitMark, getObjectMark, setBitMark, setObjectMark
-
Field Details
-
targetType
-
descriptor
-
-
Constructor Details
-
Invoke
-
-
Method Details
-
getOriginalMethod
-
complete
- Specified by:
complete
in interfaceCompletable
-
getMethod
-
pushParameters
-
evaluateRet
- Overrides:
evaluateRet
in classExpression
-
evaluateBooleanImpl
- Overrides:
evaluateBooleanImpl
in classExpression
-
evaluateByteImpl
- Overrides:
evaluateByteImpl
in classExpression
-
evaluateShortImpl
- Overrides:
evaluateShortImpl
in classExpression
-
evaluateCharImpl
- Overrides:
evaluateCharImpl
in classExpression
-
evaluateIntImpl
- Overrides:
evaluateIntImpl
in classExpression
-
evaluateLongImpl
- Overrides:
evaluateLongImpl
in classExpression
-
evaluateFloatImpl
- Overrides:
evaluateFloatImpl
in classExpression
-
evaluateDoubleImpl
- Overrides:
evaluateDoubleImpl
in classExpression
-
evaluateObjectImpl
- Overrides:
evaluateObjectImpl
in classExpression
-
evaluateVoidImpl
- Overrides:
evaluateVoidImpl
in classExpression
-
setGenerator
public void setGenerator() -
checkSetType
- Overrides:
checkSetType
in classExpression
-
getGeneratorType
public int getGeneratorType()- Specified by:
getGeneratorType
in interfaceGenerator
-
receiveRoutine
- Specified by:
receiveRoutine
in interfaceNonlocalGenerator
-
addTransfer
- Specified by:
addTransfer
in interfaceNonlocalGenerator
-
receiveConsumer
-
setBreakTarget
- Specified by:
setBreakTarget
in interfaceGenerator
-
paramString
Description copied from class:Node
Computes the class-specific part of the string returned byNode.toString()
which shall be enclosed in brackets. This should be used to show important properties of this node.- Overrides:
paramString
in classExpression
- Returns:
- string describing some important properties of this node
-
useAccessMethod
-
getOpcode
protected abstract int getOpcode() -
writeImpl
- Overrides:
writeImpl
in classExpression
-