public abstract class IsJSClassNode extends JSUnaryNode
| Modifier and Type | Field and Description |
|---|---|
protected static int |
MAX_SHAPE_COUNT |
operandNodeINTERMEDIATE_VALUE| Modifier | Constructor and Description |
|---|---|
protected |
IsJSClassNode(JSClass jsclass,
JavaScriptNode operand) |
| Modifier and Type | Method and Description |
|---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static IsJSClassNode |
create(JSClass clazz) |
static IsJSClassNode |
create(JSClass clazz,
JavaScriptNode operand) |
protected boolean |
doIsInstance(Object object) |
protected boolean |
doIsInstanceObject(JSDynamicObject object) |
protected static boolean |
doIsInstanceShape(JSDynamicObject object,
com.oracle.truffle.api.object.Shape cachedShape,
boolean cachedResult) |
abstract boolean |
executeBoolean(Object obj) |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
createWrapper, execute, expressionToString, getNodeObject, getOperandaddCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, execute, executeBoolean, executeDouble, executeInt, executeLong, executeVoid, findBlockScopeNode, getSourceSection, hasSourceSection, hasTag, 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 static final int MAX_SHAPE_COUNT
protected IsJSClassNode(JSClass jsclass, JavaScriptNode operand)
public abstract boolean executeBoolean(Object obj)
protected static boolean doIsInstanceShape(JSDynamicObject object, com.oracle.truffle.api.object.Shape cachedShape, boolean cachedResult)
protected boolean doIsInstanceObject(JSDynamicObject object)
protected boolean doIsInstance(Object object)
public static IsJSClassNode create(JSClass clazz)
public static IsJSClassNode create(JSClass clazz, JavaScriptNode operand)
protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class JavaScriptNodepublic boolean isResultAlwaysOfType(Class<?> clazz)
isResultAlwaysOfType in class JavaScriptNode