public abstract class JSNonProxy extends JSClass
JSNonProxyObject| Type | Property and Description |
|---|---|
boolean |
usesOrdinaryGetOwn |
| Modifier and Type | Field and Description |
|---|---|
static com.oracle.truffle.api.strings.TruffleString |
GET_SYMBOL_SPECIES_NAME |
| Modifier | Constructor and Description |
|---|---|
protected |
JSNonProxy() |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
checkProtoCycle(JSDynamicObject thisObj,
JSDynamicObject newPrototype) |
protected static JSDynamicObject |
createSymbolSpeciesGetterFunction(JSRealm realm) |
boolean |
defineOwnProperty(JSDynamicObject thisObj,
Object key,
PropertyDescriptor desc,
boolean doThrow)
9.1.6 [[DefineOwnProperty]] (P, Desc).
|
boolean |
delete(JSDynamicObject thisObj,
long index,
boolean isStrict) |
boolean |
delete(JSDynamicObject thisObj,
Object key,
boolean isStrict)
9.1.10 [[Delete]] (P).
|
protected static boolean |
deletePropertyDefault(JSDynamicObject object,
Object key,
boolean isStrict) |
com.oracle.truffle.api.strings.TruffleString |
getBuiltinToStringTag(JSDynamicObject object)
Returns builtinTag from step 14 of ES6+ 19.1.3.6.
|
Object |
getHelper(JSDynamicObject store,
Object thisObj,
long index,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
Object |
getHelper(JSDynamicObject store,
Object thisObj,
Object key,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
Object |
getMethodHelper(JSDynamicObject store,
Object thisObj,
Object name,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
Object |
getOwnHelper(JSDynamicObject store,
Object thisObj,
long index,
com.oracle.truffle.api.nodes.Node encapsulatingNode)
Like getOwnProperty, but returns
null if value is not present instead of undefined. |
Object |
getOwnHelper(JSDynamicObject store,
Object thisObj,
Object key,
com.oracle.truffle.api.nodes.Node encapsulatingNode)
Like getOwnProperty, but returns
null if value is not present instead of undefined. |
PropertyDescriptor |
getOwnProperty(JSDynamicObject thisObj,
Object key)
9.1.5 [[GetOwnProperty]] (P).
|
List<Object> |
getOwnPropertyKeys(JSDynamicObject thisObj,
boolean strings,
boolean symbols)
GetOwnPropertyKeys (O, type).
|
JSDynamicObject |
getPrototypeOf(JSDynamicObject thisObj)
9.1.1 [[GetPrototypeOf]] ().
|
boolean |
hasOnlyShapeProperties(JSDynamicObject obj)
If true,
JSClass.ownPropertyKeys(com.oracle.truffle.js.runtime.objects.JSDynamicObject) and JSShape.getProperties(com.oracle.truffle.api.object.Shape) enumerate the same keys. |
boolean |
hasOwnProperty(JSDynamicObject thisObj,
long index) |
boolean |
hasOwnProperty(JSDynamicObject thisObj,
Object key) |
boolean |
hasProperty(JSDynamicObject thisObj,
long index) |
boolean |
hasProperty(JSDynamicObject thisObj,
Object key)
9.1.7 [[HasProperty]] (P).
|
protected static boolean |
invokeAccessorPropertySetter(PropertyDescriptor desc,
JSDynamicObject thisObj,
Object key,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
boolean |
isExtensible(JSDynamicObject thisObj)
9.1.3 [[IsExtensible]] ().
|
static PropertyDescriptor |
ordinaryGetOwnProperty(JSDynamicObject thisObj,
Object key)
9.1.5.1 OrdinaryGetOwnProperty (O, P).
|
static PropertyDescriptor |
ordinaryGetOwnPropertyIntl(JSDynamicObject thisObj,
Object key,
com.oracle.truffle.api.object.Property prop) |
static boolean |
ordinaryIsExtensible(JSDynamicObject thisObj) |
static List<Object> |
ordinaryOwnPropertyKeys(JSDynamicObject thisObj) |
protected static List<Object> |
ordinaryOwnPropertyKeys(JSDynamicObject thisObj,
boolean strings,
boolean symbols) |
protected static List<Object> |
ordinaryOwnPropertyKeysSlow(JSDynamicObject thisObj,
boolean strings,
boolean symbols) |
protected static boolean |
ordinarySet(JSDynamicObject thisObj,
Object key,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
protected static boolean |
ordinarySetIndex(JSDynamicObject thisObj,
long index,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
protected static boolean |
ordinarySetWithReceiver(JSDynamicObject target,
Object key,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
protected static boolean |
performOrdinarySetWithOwnDescriptor(JSDynamicObject target,
Object key,
Object value,
Object receiver,
PropertyDescriptor desc,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
boolean |
preventExtensions(JSDynamicObject thisObj,
boolean doThrow)
9.1.4 [[PreventExtensions]] ().
|
protected boolean |
preventExtensionsImpl(JSDynamicObject thisObj,
int extraFlags) |
protected static void |
putConstructorSpeciesGetter(JSRealm realm,
JSDynamicObject constructor) |
boolean |
set(JSDynamicObject thisObj,
long index,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
boolean |
set(JSDynamicObject thisObj,
Object key,
Object value,
Object receiver,
boolean isStrict,
com.oracle.truffle.api.nodes.Node encapsulatingNode)
9.1.9 [[Set]] (P, V, Receiver).
|
boolean |
setIntegrityLevel(JSDynamicObject thisObj,
boolean freeze,
boolean doThrow)
ES2015 7.3.14 SetIntegrityLevel(O, level).
|
protected boolean |
setIntegrityLevelFast(JSDynamicObject thisObj,
boolean freeze) |
protected static boolean |
setPropertySlow(JSDynamicObject thisObj,
Object key,
Object value,
Object receiver,
boolean isStrict,
boolean isIndex,
com.oracle.truffle.api.nodes.Node encapsulatingNode) |
boolean |
setPrototypeOf(JSDynamicObject thisObj,
JSDynamicObject newPrototype)
9.1.2 [[SetPrototypeOf]] (V).
|
boolean |
testIntegrityLevel(JSDynamicObject obj,
boolean frozen)
ES2015 7.3.15 TestIntegrityLevel(O, level).
|
protected static boolean |
testIntegrityLevelFast(JSDynamicObject obj,
boolean frozen) |
com.oracle.truffle.api.strings.TruffleString |
toDisplayStringImpl(JSDynamicObject obj,
boolean allowSideEffects,
ToDisplayStringFormat format,
int depth)
A more informative toString variant, mainly used for error messages.
|
String |
toString() |
boolean |
usesOrdinaryGetOwnProperty() |
boolean |
usesOrdinaryIsExtensible() |
defaultToString, filterOwnPropertyKeys, formatToString, get, get, getClassName, getIntrinsicDefaultProto, getToStringTag, isInstance, isInstance, isInstance, isInstance, makeInitialShape, ownPropertyKeys, testIntegrityLevelDefaultpublic boolean usesOrdinaryGetOwnProperty
usesOrdinaryGetOwnProperty in class JSClasspublic static final com.oracle.truffle.api.strings.TruffleString GET_SYMBOL_SPECIES_NAME
public boolean defineOwnProperty(JSDynamicObject thisObj, Object key, PropertyDescriptor desc, boolean doThrow)
JSClassdefineOwnProperty in class JSClasspublic Object getOwnHelper(JSDynamicObject store, Object thisObj, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode)
null if value is not present instead of undefined.getOwnHelper in class JSClasspublic Object getOwnHelper(JSDynamicObject store, Object thisObj, long index, com.oracle.truffle.api.nodes.Node encapsulatingNode)
null if value is not present instead of undefined.getOwnHelper in class JSClasspublic Object getHelper(JSDynamicObject store, Object thisObj, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode)
public Object getHelper(JSDynamicObject store, Object thisObj, long index, com.oracle.truffle.api.nodes.Node encapsulatingNode)
public Object getMethodHelper(JSDynamicObject store, Object thisObj, Object name, com.oracle.truffle.api.nodes.Node encapsulatingNode)
getMethodHelper in class JSClasspublic List<Object> getOwnPropertyKeys(JSDynamicObject thisObj, boolean strings, boolean symbols)
JSClassgetOwnPropertyKeys in class JSClasspublic static List<Object> ordinaryOwnPropertyKeys(JSDynamicObject thisObj)
protected static List<Object> ordinaryOwnPropertyKeys(JSDynamicObject thisObj, boolean strings, boolean symbols)
protected static List<Object> ordinaryOwnPropertyKeysSlow(JSDynamicObject thisObj, boolean strings, boolean symbols)
public boolean hasOnlyShapeProperties(JSDynamicObject obj)
JSClassJSClass.ownPropertyKeys(com.oracle.truffle.js.runtime.objects.JSDynamicObject) and JSShape.getProperties(com.oracle.truffle.api.object.Shape) enumerate the same keys.hasOnlyShapeProperties in class JSClasspublic boolean delete(JSDynamicObject thisObj, Object key, boolean isStrict)
JSClassprotected static boolean deletePropertyDefault(JSDynamicObject object, Object key, boolean isStrict)
public boolean delete(JSDynamicObject thisObj, long index, boolean isStrict)
public boolean hasOwnProperty(JSDynamicObject thisObj, Object key)
hasOwnProperty in class JSClasspublic boolean hasOwnProperty(JSDynamicObject thisObj, long index)
hasOwnProperty in class JSClasspublic boolean hasProperty(JSDynamicObject thisObj, long index)
hasProperty in class JSClasspublic boolean hasProperty(JSDynamicObject thisObj, Object key)
JSClasshasProperty in class JSClasspublic boolean set(JSDynamicObject thisObj, long index, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
public boolean set(JSDynamicObject thisObj, Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
JSClassprotected static boolean ordinarySetIndex(JSDynamicObject thisObj, long index, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
protected static boolean ordinarySet(JSDynamicObject thisObj, Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
protected static boolean ordinarySetWithReceiver(JSDynamicObject target, Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
protected static boolean performOrdinarySetWithOwnDescriptor(JSDynamicObject target, Object key, Object value, Object receiver, PropertyDescriptor desc, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
protected static boolean setPropertySlow(JSDynamicObject thisObj, Object key, Object value, Object receiver, boolean isStrict, boolean isIndex, com.oracle.truffle.api.nodes.Node encapsulatingNode)
protected static boolean invokeAccessorPropertySetter(PropertyDescriptor desc, JSDynamicObject thisObj, Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode)
public PropertyDescriptor getOwnProperty(JSDynamicObject thisObj, Object key)
JSClassgetOwnProperty in class JSClasspublic static PropertyDescriptor ordinaryGetOwnProperty(JSDynamicObject thisObj, Object key)
public static PropertyDescriptor ordinaryGetOwnPropertyIntl(JSDynamicObject thisObj, Object key, com.oracle.truffle.api.object.Property prop)
public boolean setIntegrityLevel(JSDynamicObject thisObj, boolean freeze, boolean doThrow)
JSClasssetIntegrityLevel in class JSClassprotected final boolean setIntegrityLevelFast(JSDynamicObject thisObj, boolean freeze)
public boolean testIntegrityLevel(JSDynamicObject obj, boolean frozen)
testIntegrityLevel in class JSClassprotected static boolean testIntegrityLevelFast(JSDynamicObject obj, boolean frozen)
public boolean preventExtensions(JSDynamicObject thisObj, boolean doThrow)
JSClasspreventExtensions in class JSClassprotected final boolean preventExtensionsImpl(JSDynamicObject thisObj, int extraFlags)
public final boolean isExtensible(JSDynamicObject thisObj)
JSClassisExtensible in class JSClasspublic static boolean ordinaryIsExtensible(JSDynamicObject thisObj)
public com.oracle.truffle.api.strings.TruffleString toDisplayStringImpl(JSDynamicObject obj, boolean allowSideEffects, ToDisplayStringFormat format, int depth)
JSClasstoDisplayStringImpl in class JSClassformat - formatting parametersdepth - current nesting depthpublic final JSDynamicObject getPrototypeOf(JSDynamicObject thisObj)
JSClassgetPrototypeOf in class JSClasspublic boolean setPrototypeOf(JSDynamicObject thisObj, JSDynamicObject newPrototype)
JSClasssetPrototypeOf in class JSClasspublic static boolean checkProtoCycle(JSDynamicObject thisObj, JSDynamicObject newPrototype)
protected static void putConstructorSpeciesGetter(JSRealm realm, JSDynamicObject constructor)
protected static JSDynamicObject createSymbolSpeciesGetterFunction(JSRealm realm)
public com.oracle.truffle.api.strings.TruffleString getBuiltinToStringTag(JSDynamicObject object)
JSClassgetBuiltinToStringTag in class JSClassobject - object to be usedJSClass.defaultToString(JSDynamicObject)public boolean usesOrdinaryGetOwnProperty()
usesOrdinaryGetOwnProperty in class JSClasspublic final boolean usesOrdinaryIsExtensible()
usesOrdinaryIsExtensible in class JSClass