public abstract class JSGetOwnPropertyNode extends JavaScriptBaseNode
| Modifier and Type | Class and Description |
|---|---|
static class |
JSGetOwnPropertyNode.GetPropertyProxyValueNode |
static class |
JSGetOwnPropertyNode.UsesOrdinaryGetOwnPropertyNode |
| Modifier | Constructor and Description |
|---|---|
protected |
JSGetOwnPropertyNode(boolean needValue,
boolean needEnumerability,
boolean needConfigurability,
boolean needWritability,
boolean allowCaching) |
| Modifier and Type | Method and Description |
|---|---|
static JSGetOwnPropertyNode |
create() |
static JSGetOwnPropertyNode |
create(boolean needValue) |
static JSGetOwnPropertyNode |
create(boolean needValue,
boolean needEnumerability,
boolean needConfigurability,
boolean needWritability,
boolean allowCaching) |
abstract PropertyDescriptor |
execute(JSDynamicObject object,
Object key) |
protected PropertyDescriptor |
getOwnPropertyString(JSDynamicObject thisObj,
Object key,
com.oracle.truffle.api.profiles.InlinedConditionProfile stringCaseProfile) |
copy, getLanguage, getRealm, hasOverloadedOperators, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected JSGetOwnPropertyNode(boolean needValue,
boolean needEnumerability,
boolean needConfigurability,
boolean needWritability,
boolean allowCaching)
public static JSGetOwnPropertyNode create()
public static JSGetOwnPropertyNode create(boolean needValue)
public static JSGetOwnPropertyNode create(boolean needValue, boolean needEnumerability, boolean needConfigurability, boolean needWritability, boolean allowCaching)
public abstract PropertyDescriptor execute(JSDynamicObject object, Object key)
protected PropertyDescriptor getOwnPropertyString(JSDynamicObject thisObj, Object key, com.oracle.truffle.api.profiles.InlinedConditionProfile stringCaseProfile)