public class PropertyGetNode extends PropertyCacheNode<PropertyGetNode.GetCacheNode>
PropertyNode,
GlobalPropertyNode| Type | Property and Description |
|---|---|
protected boolean |
isOwn
Gets the value of the property ownProperty.
|
PropertyCacheNode.AbstractAssumptionShapeCheckNode, PropertyCacheNode.AbstractShapeCheckNode, PropertyCacheNode.AssumptionShapeCheckNode, PropertyCacheNode.CacheNode<T extends PropertyCacheNode.CacheNode<T>>, PropertyCacheNode.ConstantObjectAssumptionShapeCheckNode, PropertyCacheNode.ConstantObjectPrototypeChainShapeCheckNode, PropertyCacheNode.ConstantObjectPrototypeShapeCheckNode, PropertyCacheNode.ConstantObjectReceiverCheck, PropertyCacheNode.ConstantObjectShapeCheckNode, PropertyCacheNode.ForeignLanguageCheckNode, PropertyCacheNode.InstanceofCheckNode, PropertyCacheNode.JSClassCheckNode, PropertyCacheNode.NullCheckNode, PropertyCacheNode.PrimitiveReceiverCheckNode, PropertyCacheNode.PrototypeChainCheckNode, PropertyCacheNode.PrototypeChainShapeCheckNode, PropertyCacheNode.PrototypeShapeCheckNode, PropertyCacheNode.ReceiverCheckNode, PropertyCacheNode.ShapeCheckNode, PropertyCacheNode.TraversePrototypeChainCheckNode, PropertyCacheNode.TraversePrototypeChainShapeCheckNode, PropertyCacheNode.TraversePrototypeShapeCheckNode| Modifier and Type | Field and Description |
|---|---|
protected boolean |
getOwnProperty |
protected boolean |
isGlobal |
protected boolean |
isMethod |
cacheNode, context, key| Modifier | Constructor and Description |
|---|---|
protected |
PropertyGetNode(Object key,
JSContext context,
boolean isGlobal,
boolean getOwnProperty,
boolean isMethod) |
| Modifier and Type | Method and Description |
|---|---|
static PropertyGetNode |
create(Object key,
boolean isGlobal,
JSContext context) |
static PropertyGetNode |
create(Object key,
boolean isGlobal,
JSContext context,
boolean getOwnProperty,
boolean isMethod) |
static PropertyGetNode |
create(Object key,
JSContext context) |
protected PropertyGetNode.GetCacheNode |
createCachedPropertyNode(com.oracle.truffle.api.object.Property property,
Object thisObj,
int depth,
Object value,
PropertyGetNode.GetCacheNode currentHead)
Make a cache for a JSObject with this property map and requested property.
|
protected PropertyGetNode.GetCacheNode |
createGenericPropertyNode()
Make a generic-case node, for when polymorphism becomes too high.
|
static PropertyGetNode |
createGetHidden(com.oracle.truffle.api.object.HiddenKey key,
JSContext context) |
static PropertyGetNode |
createGetOwn(Object key,
JSContext context) |
protected PropertyGetNode.GetCacheNode |
createJavaPropertyNodeMaybe(Object thisObj,
int depth) |
protected PropertyGetNode.GetCacheNode |
createJSProxyCache(PropertyCacheNode.ReceiverCheckNode receiverCheck) |
protected PropertyGetNode.GetCacheNode |
createTruffleObjectPropertyNode() |
protected PropertyGetNode.GetCacheNode |
createUndefinedOrErrorPropertyNode(PropertyCacheNode.ReceiverCheckNode receiverCheck) |
protected PropertyGetNode.GetCacheNode |
createUndefinedPropertyNode(Object thisObj,
Object store,
int depth,
Object value) |
Object |
getValue(Object obj) |
boolean |
getValueBoolean(Object obj) |
protected boolean |
getValueBoolean(Object thisObj,
Object receiver) |
double |
getValueDouble(Object obj) |
protected double |
getValueDouble(Object thisObj,
Object receiver) |
int |
getValueInt(Object obj) |
protected int |
getValueInt(Object thisObj,
Object receiver) |
long |
getValueLong(Object obj) |
protected long |
getValueLong(Object thisObj,
Object receiver) |
Object |
getValueOrDefault(Object obj,
Object defaultValue) |
protected Object |
getValueOrDefault(Object thisObj,
Object receiver,
Object defaultValue) |
protected Object |
getValueOrUndefined(Object thisObj,
Object receiver) |
protected boolean |
isGlobal() |
protected boolean |
isMethod() |
protected boolean |
isOwnProperty()
Gets the value of the property ownProperty.
|
protected boolean |
isPropertyAssumptionCheckEnabled() |
protected boolean |
isRequired() |
protected void |
setMethod() |
protected void |
setPropertyAssumptionCheckEnabled(boolean value) |
alwaysUseStore, checkForUnstableAssumption, createCachedAccess, createPrimitiveReceiverCheck, createShapeCheckNode, createSpecialization, deoptimize, filterValid, getAccessorKey, getAccessorKey, getContext, getCost, getKey, insertCached, invalidateCache, isArrayLengthProperty, isClassPrototypeProperty, isFunctionLengthProperty, isFunctionNameProperty, isLazyNamedCaptureGroupProperty, isLazyRegexResultIndexProperty, isNonIntegerIndex, isStringLengthProperty, propertyAssumptionsValid, prototypesInShape, retryCache, rewriteCached, rewriteToGeneric, specialize, specialize, traceRewriteEvictFinal, tryMergeShapes, wrapPrimitivecopy, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected final boolean isOwnProperty
isOwnProperty in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected final boolean isGlobal
protected final boolean getOwnProperty
protected boolean isMethod
public static PropertyGetNode create(Object key, JSContext context)
public static PropertyGetNode create(Object key, boolean isGlobal, JSContext context)
public static PropertyGetNode create(Object key, boolean isGlobal, JSContext context, boolean getOwnProperty, boolean isMethod)
public static PropertyGetNode createGetOwn(Object key, JSContext context)
public static PropertyGetNode createGetHidden(com.oracle.truffle.api.object.HiddenKey key, JSContext context)
public final int getValueInt(Object obj) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionpublic final double getValueDouble(Object obj) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionpublic final boolean getValueBoolean(Object obj) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionpublic final long getValueLong(Object obj) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionprotected int getValueInt(Object thisObj, Object receiver) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionprotected double getValueDouble(Object thisObj, Object receiver) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionprotected boolean getValueBoolean(Object thisObj, Object receiver) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionprotected long getValueLong(Object thisObj, Object receiver) throws com.oracle.truffle.api.nodes.UnexpectedResultException
com.oracle.truffle.api.nodes.UnexpectedResultExceptionprotected Object getValueOrDefault(Object thisObj, Object receiver, Object defaultValue)
protected PropertyGetNode.GetCacheNode createCachedPropertyNode(com.oracle.truffle.api.object.Property property, Object thisObj, int depth, Object value, PropertyGetNode.GetCacheNode currentHead)
createCachedPropertyNode in class PropertyCacheNode<PropertyGetNode.GetCacheNode>property - The particular entry of the property being accessed.protected PropertyGetNode.GetCacheNode createJavaPropertyNodeMaybe(Object thisObj, int depth)
createJavaPropertyNodeMaybe in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected PropertyGetNode.GetCacheNode createUndefinedPropertyNode(Object thisObj, Object store, int depth, Object value)
createUndefinedPropertyNode in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected PropertyGetNode.GetCacheNode createJSProxyCache(PropertyCacheNode.ReceiverCheckNode receiverCheck)
protected PropertyGetNode.GetCacheNode createUndefinedOrErrorPropertyNode(PropertyCacheNode.ReceiverCheckNode receiverCheck)
protected PropertyGetNode.GetCacheNode createGenericPropertyNode()
createGenericPropertyNode in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected final boolean isRequired()
protected final boolean isGlobal()
isGlobal in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected final boolean isOwnProperty()
isOwnProperty in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected boolean isMethod()
protected void setMethod()
protected boolean isPropertyAssumptionCheckEnabled()
isPropertyAssumptionCheckEnabled in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected void setPropertyAssumptionCheckEnabled(boolean value)
setPropertyAssumptionCheckEnabled in class PropertyCacheNode<PropertyGetNode.GetCacheNode>protected PropertyGetNode.GetCacheNode createTruffleObjectPropertyNode()
createTruffleObjectPropertyNode in class PropertyCacheNode<PropertyGetNode.GetCacheNode>