public abstract class JSToBooleanUnaryNode extends JSUnaryNode
JSToBooleanNodeoperandNodeINTERMEDIATE_VALUE| Modifier | Constructor and Description |
|---|---|
protected |
JSToBooleanUnaryNode(JavaScriptNode operand) |
| Modifier and Type | Method and Description |
|---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static JavaScriptNode |
create(JavaScriptNode child) |
protected static boolean |
doBigInt(BigInt value) |
protected static boolean |
doBoolean(boolean value) |
protected static boolean |
doDouble(double value) |
protected static boolean |
doForeignObject(Object value,
com.oracle.truffle.api.nodes.Node node,
JSToBooleanNode toBooleanNode) |
protected static boolean |
doInt(int value) |
protected static boolean |
doLong(long value) |
protected static boolean |
doNull(Object value) |
protected static boolean |
doObject(Object value) |
protected static boolean |
doString(com.oracle.truffle.api.strings.TruffleString value) |
protected static boolean |
doSymbol(Symbol value) |
protected static boolean |
doUndefined(Object value) |
Object |
execute(com.oracle.truffle.api.frame.VirtualFrame frame)
Executes this node using the specified context and frame and returns the result value.
|
abstract boolean |
executeBoolean(com.oracle.truffle.api.frame.VirtualFrame frame)
Like
JavaScriptNode.execute(VirtualFrame) except that it tries to convert the result value to a
boolean. |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
com.oracle.truffle.api.instrumentation.InstrumentableNode |
materializeInstrumentableNodes(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
createWrapper, execute, expressionToString, getNodeObject, getOperandaddCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, executeDouble, executeInt, executeLong, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsgetLanguage, getRealm, hasOverloadedOperatorsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecializeprotected JSToBooleanUnaryNode(JavaScriptNode operand)
public static JavaScriptNode create(JavaScriptNode child)
public final Object execute(com.oracle.truffle.api.frame.VirtualFrame frame)
JavaScriptNodeexecute in class JavaScriptNodeframe - the frame of the currently executing guest language methodpublic abstract boolean executeBoolean(com.oracle.truffle.api.frame.VirtualFrame frame)
JavaScriptNodeJavaScriptNode.execute(VirtualFrame) except that it tries to convert the result value to a
boolean. A node can override this method if it has a better way to producing a value of type
boolean.executeBoolean in class JavaScriptNodeframe - the frame of the currently executing guest language methodprotected static boolean doBoolean(boolean value)
protected static boolean doNull(Object value)
protected static boolean doUndefined(Object value)
protected static boolean doInt(int value)
protected static boolean doLong(long value)
protected static boolean doDouble(double value)
protected static boolean doBigInt(BigInt value)
protected static boolean doString(com.oracle.truffle.api.strings.TruffleString value)
protected static boolean doObject(Object value)
protected static boolean doSymbol(Symbol value)
protected static boolean doForeignObject(Object value, com.oracle.truffle.api.nodes.Node node, JSToBooleanNode toBooleanNode)
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class JavaScriptNodepublic boolean isResultAlwaysOfType(Class<?> clazz)
isResultAlwaysOfType in class JavaScriptNodepublic boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNodehasTag in class JavaScriptNode