java.lang.Object
de.grogra.graph.impl.Edge
de.grogra.graph.impl.Node
de.grogra.xl.expr.Expression
de.grogra.xl.expr.VoidExpression
de.grogra.xl.expr.MethodExpression
- All Implemented Interfaces:
Manageable,PersistenceCapable,Shareable,TypeId,UserFields,XObject,Map,ExpressionFactory,ValueObserver,Routine,Serializable,Cloneable
- Direct Known Subclasses:
ComplexMethod
- 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$FIELDFields 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$FIELDFields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAPFields 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleandiscards(int index) protected abstract voidprotected final voidfinal AbruptCompletion.ReturnThis callback method is invoked by the executingVMXState.intComputes the number of VMXState stack elements for the frame of this routine.intComputes the number of VMXState stack elements for the Java frame of this routine.intComputes the number of VMXState stack elements for the parameters of this routine.booleanDetermines whether this routine expects its parameters on the Java frame or the normal frame.final voidsetJFrameSize(int jsize) final voidsetParameterSize(int params) voidwriteFinally(BytecodeWriter writer, int label, ControlTransfer cause) Methods inherited from class de.grogra.xl.expr.VoidExpression
allowsIterationMethods inherited from class de.grogra.xl.expr.Expression
add, cast, checkExpressionCount, checkSetType, clone, compile, compile, createConst, createExpression, createMaxConst, createMinConst, evaluateAsObject, evaluateAsVoid, evaluateBoolean, evaluateBoolean, evaluateBooleanImpl, evaluateByte, evaluateByte, evaluateByteImpl, evaluateChar, evaluateChar, evaluateCharImpl, evaluateDouble, evaluateDouble, evaluateDoubleImpl, evaluateFloat, evaluateFloat, evaluateFloatImpl, evaluateInt, evaluateInt, evaluateIntImpl, evaluateLong, evaluateLong, evaluateLongImpl, evaluateObject, evaluateObject, evaluateObjectImpl, evaluateRet, evaluateShort, evaluateShort, evaluateShortImpl, 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, paramString, promote, push, receiveChildren, setNextSibling, setType, substitute, toConst, toConstImpl, toString, unboxingConversion, unlinkTree, valueChanged, write, writeChildren, writeConditional, writeConditional, writeImpl, writeOperatorMethods 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, writeReplaceMethods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, getEdgeKeys, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBitsMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface de.grogra.persistence.PersistenceCapable
getBitMark, getObjectMark, setBitMark, setObjectMark
-
Constructor Details
-
MethodExpression
public MethodExpression()
-
-
Method Details
-
discards
public boolean discards(int index) - Overrides:
discardsin classExpression
-
writeFinally
- Overrides:
writeFinallyin classExpression
-
evaluateVoidImpl
- Overrides:
evaluateVoidImplin classExpression
-
execute
Description copied from interface:RoutineThis callback method is invoked by the executingVMXState. A return value has to be wrapped in an instance ofAbruptCompletion.Return. -
evaluateImpl
-
setParameterSize
public final void setParameterSize(int params) -
setJFrameSize
public final void setJFrameSize(int jsize) -
hasJavaParameters
public boolean hasJavaParameters()Description copied from interface:RoutineDetermines whether this routine expects its parameters on the Java frame or the normal frame.- Specified by:
hasJavaParametersin interfaceRoutine- Returns:
trueiff parameters are expected on the Java frame
-
getParameterSize
public int getParameterSize()Description copied from interface:RoutineComputes the number of VMXState stack elements for the parameters of this routine.- Specified by:
getParameterSizein interfaceRoutine- Returns:
- the number of stack elements for parameters
-
getJavaFrameSize
public int getJavaFrameSize()Description copied from interface:RoutineComputes the number of VMXState stack elements for the Java frame of this routine. This includes the parameters, if any.- Specified by:
getJavaFrameSizein interfaceRoutine- Returns:
- the size of the Java frame in terms of stack elements
-
getFrameSize
public int getFrameSize()Description copied from interface:RoutineComputes the number of VMXState stack elements for the frame of this routine. This includes the parameters, if any.- Specified by:
getFrameSizein interfaceRoutine- Returns:
- the size of the frame in terms of stack elements
-