de.grogra.xl.expr
Class Add

java.lang.Object
  extended by de.grogra.graph.impl.Edge
      extended by de.grogra.graph.impl.Node
          extended by de.grogra.xl.expr.Expression
              extended by de.grogra.xl.expr.EvalExpression
                  extended by de.grogra.xl.expr.ConstExpression
                      extended by de.grogra.xl.expr.BinaryExpression
                          extended by de.grogra.xl.expr.Add
All Implemented Interfaces:
Manageable, PersistenceCapable, Shareable, TypeId, UserFields, XObject, Map, ExpressionFactory, ValueObserver, java.io.Serializable, java.lang.Cloneable

public class Add
extends BinaryExpression

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class de.grogra.graph.impl.Node
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType
 
Nested classes/interfaces inherited from interface de.grogra.util.Map
Map.Chain
 
Field Summary
 
Fields inherited from class de.grogra.xl.expr.BinaryExpression
expr1, expr2
 
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, MIME_TYPE, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD
 
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
 
Fields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAP
 
Constructor Summary
Add()
           
 
Method Summary
 Expression compile(de.grogra.xl.compiler.scope.Scope scope, Expression expr1, Expression expr2)
           
protected  double evaluateDoubleImpl(VMXState vm)
           
protected  float evaluateFloatImpl(VMXState vm)
           
protected  int evaluateIntImpl(VMXState vm)
           
protected  long evaluateLongImpl(VMXState vm)
           
protected  java.lang.Object evaluateObjectImpl(VMXState vm)
           
protected  int[] getOpcodes()
           
 int getSupportedTypes()
           
protected  void writeImpl(de.grogra.xl.compiler.BytecodeWriter writer, boolean discard)
           
 
Methods inherited from class de.grogra.xl.expr.BinaryExpression
getSupportedTypes, link, writeOperator
 
Methods inherited from class de.grogra.xl.expr.ConstExpression
toConst
 
Methods inherited from class de.grogra.xl.expr.Expression
add, allowsIteration, cast, checkExpressionCount, checkSetType, clone, compile, createConst, createExpression, createMaxConst, createMinConst, discards, evaluateAsObject, evaluateAsVoid, evaluateBoolean, evaluateBoolean, evaluateBooleanImpl, evaluateByte, evaluateByte, evaluateByteImpl, evaluateChar, evaluateChar, evaluateCharImpl, evaluateDouble, evaluateDouble, evaluateFloat, evaluateFloat, evaluateInt, evaluateInt, evaluateLong, evaluateLong, evaluateObject, evaluateObject, evaluateRet, evaluateShort, evaluateShort, evaluateShortImpl, evaluatesWithoutSideeffect, evaluateVoidImpl, fireValueChanged, getExpression, getExpression, getExpression, getExpressionCount, getFirstExpression, getLastExpression, getLeastCommonAncestor, getNextExpression, getNTypeImpl, getObjectExpression, getObjectExpression, getPromotedType, getType, getTypeLoader, hasType, hasType, implicitConversion, isConditional, isPrimitiveOrStringConstant, isRequired, linkGraph, needsEmptyOperandStackForFinally, newInstance, opcode, opcode, paramString, promote, push, receiveChildren, setNextSibling, setType, substitute, toConstImpl, toString, unboxingConversion, unlinkTree, valueChanged, write, writeChildren, writeConditional, writeConditional, writeFinally
 
Methods inherited from class de.grogra.graph.impl.Node
addEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, cloneGraph, dump, dumpTree, dup, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, 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, getIndex, getInstantiator, getInt, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getObject, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getShort, getSource, getStamp, getSuccessor, getSymbol, getSymbolColor, getTarget, getTransaction, getUserField, getUserFieldCount, getXClass, getXData, hasName, initProvider, initXClass, insertBranchNode, insertBranchNode, instantiateGraph, isAncestorOf, isDirection, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setLayer, setMark, setName, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, writeReplace
 
Methods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, 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
 

Constructor Detail

Add

public Add()
Method Detail

compile

public Expression compile(de.grogra.xl.compiler.scope.Scope scope,
                          Expression expr1,
                          Expression expr2)
Overrides:
compile in class BinaryExpression

evaluateDoubleImpl

protected double evaluateDoubleImpl(VMXState vm)
Overrides:
evaluateDoubleImpl in class Expression

evaluateFloatImpl

protected float evaluateFloatImpl(VMXState vm)
Overrides:
evaluateFloatImpl in class Expression

evaluateIntImpl

protected int evaluateIntImpl(VMXState vm)
Overrides:
evaluateIntImpl in class Expression

evaluateLongImpl

protected long evaluateLongImpl(VMXState vm)
Overrides:
evaluateLongImpl in class Expression

evaluateObjectImpl

protected java.lang.Object evaluateObjectImpl(VMXState vm)
Overrides:
evaluateObjectImpl in class Expression

getOpcodes

protected int[] getOpcodes()
Overrides:
getOpcodes in class BinaryExpression

getSupportedTypes

public int getSupportedTypes()
Specified by:
getSupportedTypes in class BinaryExpression

writeImpl

protected void writeImpl(de.grogra.xl.compiler.BytecodeWriter writer,
                         boolean discard)
Overrides:
writeImpl in class Expression