Class PropertyCacheNode.ReceiverCheckNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.access.PropertyCacheNode.ReceiverCheckNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, Cloneable
- Direct Known Subclasses:
PropertyCacheNode.AbstractShapeCheckNode, PropertyCacheNode.CombinedShapeCheckNode, PropertyCacheNode.ForeignLanguageCheckNode, PropertyCacheNode.InstanceofCheckNode, PropertyCacheNode.NullCheckNode
- Enclosing class:
PropertyCacheNode<T extends PropertyCacheNode.CacheNode<T>>
Checks whether the receiver can be handled by the corresponding specialization.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedReceiverCheckNode(com.oracle.truffle.api.object.Shape shape) -
Method Summary
Modifier and TypeMethodDescriptionabstract booleanCheck receiver shape, class, or instance.final com.oracle.truffle.api.object.ShapegetShape()abstract JSDynamicObjectprotected booleanbooleanisValid()Checks if all required assumptions are valid.Methods inherited from class JavaScriptBaseNode
copy, getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, onReplace, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplace, toString
-
Field Details
-
shape
protected final com.oracle.truffle.api.object.Shape shape
-
-
Constructor Details
-
ReceiverCheckNode
protected ReceiverCheckNode(com.oracle.truffle.api.object.Shape shape)
-
-
Method Details
-
accept
Check receiver shape, class, or instance.- Returns:
- whether the object is supported by the associated property cache node.
-
getStore
- Returns:
- the object that contains the property.
-
getShape
public final com.oracle.truffle.api.object.Shape getShape() -
isValid
public boolean isValid()Checks if all required assumptions are valid. -
isUnstable
protected boolean isUnstable()- Returns:
- true if a stable property assumption failed.
-