de.grogra.xl.expr
public final class ArrayGenerator extends Variable implements Generator, LocalAccess
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType$TYPE, aval, aval$FIELD, dval, dval$FIELD, etype, EXPR_0, I18N, lval, lval$FIELD, USED_BITS, VALID, valid$FIELDADDITIONAL_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$FIELDASSIGNS_LOCAL, POST_ASSIGNMENT, POST_USE, PRE_1_ASSIGNMENT, PRE_2_ASSIGNMENT, PRE_ASSIGNMENT, PRE_USE, USES_LOCALA_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_MASKDEFAULT_VALUE, EMPTY_MAP| Constructor and Description |
|---|
ArrayGenerator(Type type,
de.grogra.xl.compiler.scope.Local array,
de.grogra.xl.compiler.scope.Local counter) |
| Modifier and Type | Method and Description |
|---|---|
void |
complete(de.grogra.xl.compiler.scope.MethodScope scope) |
protected boolean |
evaluateBooleanImpl(VMXState t) |
protected byte |
evaluateByteImpl(VMXState t) |
protected char |
evaluateCharImpl(VMXState t) |
protected double |
evaluateDoubleImpl(VMXState t) |
protected float |
evaluateFloatImpl(VMXState t) |
protected int |
evaluateIntImpl(VMXState t) |
protected long |
evaluateLongImpl(VMXState t) |
protected java.lang.Object |
evaluateObjectImpl(VMXState t) |
protected short |
evaluateShortImpl(VMXState t) |
int |
getAccessType(int index) |
int |
getGeneratorType() |
de.grogra.xl.compiler.scope.Local |
getLocal(int index) |
int |
getLocalCount() |
void |
link(boolean checkTypes) |
void |
setBreakTarget(BreakTarget target) |
void |
setLocal(int index,
de.grogra.xl.compiler.scope.Local local) |
Expression |
toAssignment(int assignmentType) |
protected void |
writeImpl(de.grogra.xl.compiler.BytecodeWriter writer,
boolean discard) |
add, allowsIteration, cast, checkExpressionCount, checkSetType, 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, evaluateRet, evaluateShort, evaluateShort, evaluatesWithoutSideeffect, evaluateVoidImpl, fireValueChanged, getExpression, getExpression, getExpression, getExpressionCount, getFirstExpression, getLastExpression, getLeastCommonAncestor, getNextExpression, getNTypeImpl, getObjectExpression, getObjectExpression, getPromotedType, getSupportedTypes, getType, getTypeLoader, hasType, hasType, implicitConversion, isConditional, isPrimitiveOrStringConstant, isRequired, linkGraph, needsEmptyOperandStackForFinally, newInstance, opcode, opcode, paramString, promote, push, receiveChildren, setNextSibling, setType, substitute, toConst, toConstImpl, toString, unboxingConversion, unlinkTree, valueChanged, write, writeChildren, writeConditional, writeConditional, writeFinally, writeOperatoraddEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, cloneGraph, dump, dumpTree, dup, 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, 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, isEncoarseOf, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setLayer, setMark, setName, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, writeReplaceaddEdgeBits, getBitMark, getEdgeBits, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBitsequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetBitMark, getObjectMark, setBitMark, setObjectMarkpublic ArrayGenerator(Type type, de.grogra.xl.compiler.scope.Local array, de.grogra.xl.compiler.scope.Local counter)
public void complete(de.grogra.xl.compiler.scope.MethodScope scope)
complete in interface Completableprotected boolean evaluateBooleanImpl(VMXState t)
evaluateBooleanImpl in class Expressionprotected byte evaluateByteImpl(VMXState t)
evaluateByteImpl in class Expressionprotected char evaluateCharImpl(VMXState t)
evaluateCharImpl in class Expressionprotected double evaluateDoubleImpl(VMXState t)
evaluateDoubleImpl in class Expressionprotected float evaluateFloatImpl(VMXState t)
evaluateFloatImpl in class Expressionprotected int evaluateIntImpl(VMXState t)
evaluateIntImpl in class Expressionprotected long evaluateLongImpl(VMXState t)
evaluateLongImpl in class Expressionprotected java.lang.Object evaluateObjectImpl(VMXState t)
evaluateObjectImpl in class Expressionprotected short evaluateShortImpl(VMXState t)
evaluateShortImpl in class Expressionpublic int getAccessType(int index)
getAccessType in interface LocalAccesspublic int getGeneratorType()
getGeneratorType in interface Generatorpublic de.grogra.xl.compiler.scope.Local getLocal(int index)
getLocal in interface LocalAccesspublic int getLocalCount()
getLocalCount in interface LocalAccesspublic void link(boolean checkTypes)
link in class Expressionpublic void setBreakTarget(BreakTarget target)
setBreakTarget in interface Generatorpublic void setLocal(int index,
de.grogra.xl.compiler.scope.Local local)
setLocal in interface LocalAccesspublic Expression toAssignment(int assignmentType)
toAssignment in class Variableprotected void writeImpl(de.grogra.xl.compiler.BytecodeWriter writer,
boolean discard)
writeImpl in class Expression