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,
JSToBooleanNode toBooleanNode) |
protected static boolean |
doInt(int value) |
protected static boolean |
doLazyString(JSLazyString value) |
protected static boolean |
doLong(long value) |
protected static boolean |
doNull(Object value) |
protected static boolean |
doObject(Object value) |
protected static boolean |
doString(String 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. |
String |
expressionToString() |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
createWrapper, execute, getNodeObject, getOperandaddCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, executeDouble, executeInt, executeLong, executeSafeInteger, executeString, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, hasTag, isInstrumentable, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, 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 doLazyString(JSLazyString value)
protected static boolean doString(String value)
protected static boolean doObject(Object value)
protected static boolean doSymbol(Symbol value)
protected static boolean doForeignObject(Object value, 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 String expressionToString()
expressionToString in class JSUnaryNode