public abstract class ReadLevelVariableNode extends FrameSlotNode implements ReadNode
frameSlot
Constructor and Description |
---|
ReadLevelVariableNode(ReadLevelVariableNode prev) |
ReadLevelVariableNode(RubyContext context,
com.oracle.truffle.api.source.SourceSection sourceSection,
com.oracle.truffle.api.frame.FrameSlot slot,
int level) |
Modifier and Type | Method and Description |
---|---|
boolean |
doBoolean(com.oracle.truffle.api.frame.VirtualFrame frame) |
int |
doFixnum(com.oracle.truffle.api.frame.VirtualFrame frame) |
double |
doFloat(com.oracle.truffle.api.frame.VirtualFrame frame) |
long |
doLongFixnum(com.oracle.truffle.api.frame.VirtualFrame frame) |
Object |
doObject(com.oracle.truffle.api.frame.VirtualFrame frame) |
Object |
isDefined(com.oracle.truffle.api.frame.VirtualFrame frame)
Ruby's parallel semantic path.
|
RubyNode |
makeWriteNode(RubyNode rhs)
Return a new node that performs the equivalent write operation to this node's read, using the
supplied node for the right-hand-side.
|
copy, getBoolean, getFixnum, getFloat, getFrameSlot, getLongFixnum, getObject, isBooleanKind, isFixnumKind, isFloatKind, isLongFixnumKind, isObjectKind, setBoolean, setFixnum, setFloat, setLongFixnum, setObject
bignum, bignum, bignum, execute, executeArray, executeBignum, executeBoolean, executeFloat, executeIntegerFixnum, executeIntegerFixnumRange, executeLongFixnum, executeLongFixnumRange, executeObjectArray, executeObjectRange, executeRubyBasicObject, executeRubyBinding, executeRubyClass, executeRubyEncoding, executeRubyEncodingConverter, executeRubyException, executeRubyFiber, executeRubyFile, executeRubyHash, executeRubyMatchData, executeRubyMethod, executeRubyModule, executeRubyNilClass, executeRubyProc, executeRubyRange, executeRubyRegexp, executeRubyString, executeRubySymbol, executeRubyThread, executeRubyTime, executeRubyUnboundMethod, executeString, executeUndefinedPlaceholder, executeVoid, getContext, getNonProxyNode, getNonWrapperNode, isBoolean, isDispatchAction, isDouble, isInteger, isIntegerFixnumRange, isLexicalScope, isLong, isLongFixnumRange, isObjectArray, isObjectRange, isRational, isRubyArray, isRubyBasicObject, isRubyBignum, isRubyBinding, isRubyClass, isRubyEncoding, isRubyEncodingConverter, isRubyException, isRubyFiber, isRubyFile, isRubyHash, isRubyMatchData, isRubyModule, isRubyNilClass, isRubyNilObject, isRubyProc, isRubyRange, isRubyRegexp, isRubyString, isRubySymbol, isRubyThread, isRubyTime, isString, isThreadLocal, isTrue, isUndefinedPlaceholder, notDesignedForCompilation, probe, probeLite
accept, adoptChildren, assignSourceSection, atomic, atomic, clearSourceSection, clone, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLanguage, getParent, getRootNode, getSourceSection, insert, insert, isReplaceable, onAdopt, onReplace, replace, replace, toString
public ReadLevelVariableNode(RubyContext context, com.oracle.truffle.api.source.SourceSection sourceSection, com.oracle.truffle.api.frame.FrameSlot slot, int level)
public ReadLevelVariableNode(ReadLevelVariableNode prev)
public boolean doBoolean(com.oracle.truffle.api.frame.VirtualFrame frame) throws com.oracle.truffle.api.frame.FrameSlotTypeException
com.oracle.truffle.api.frame.FrameSlotTypeException
public int doFixnum(com.oracle.truffle.api.frame.VirtualFrame frame) throws com.oracle.truffle.api.frame.FrameSlotTypeException
com.oracle.truffle.api.frame.FrameSlotTypeException
public long doLongFixnum(com.oracle.truffle.api.frame.VirtualFrame frame) throws com.oracle.truffle.api.frame.FrameSlotTypeException
com.oracle.truffle.api.frame.FrameSlotTypeException
public double doFloat(com.oracle.truffle.api.frame.VirtualFrame frame) throws com.oracle.truffle.api.frame.FrameSlotTypeException
com.oracle.truffle.api.frame.FrameSlotTypeException
public Object doObject(com.oracle.truffle.api.frame.VirtualFrame frame)
public RubyNode makeWriteNode(RubyNode rhs)
ReadNode
makeWriteNode
in interface ReadNode
public Object isDefined(com.oracle.truffle.api.frame.VirtualFrame frame)
RubyNode
isDefined
in class RubyNode
DefinedNode
Copyright © 2001-2015 JRuby. All Rights Reserved.