Class JSClassObject
java.lang.Object
com.oracle.truffle.api.object.DynamicObject
com.oracle.truffle.js.runtime.objects.JSDynamicObject
com.oracle.truffle.js.runtime.objects.JSObject
com.oracle.truffle.js.runtime.objects.JSClassObject
- All Implemented Interfaces:
com.oracle.truffle.api.interop.TruffleObject
- Direct Known Subclasses:
JSAdapterObject,JSNonProxyObject,JSProxyObject
Delegates methods to JSClass.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.js.runtime.objects.JSObject
JSObject.GetMembersNested classes/interfaces inherited from class com.oracle.truffle.js.runtime.objects.JSDynamicObject
JSDynamicObject.IsIdenticalOrUndefinedNested classes/interfaces inherited from class com.oracle.truffle.api.object.DynamicObject
com.oracle.truffle.api.object.DynamicObject.DynamicField -
Field Summary
Fields inherited from class com.oracle.truffle.js.runtime.objects.JSObject
CONSTRUCTOR, EMPTY_STRING_ARRAY, GET_PROTO_NAME, HIDDEN_PROTO, NO_SUCH_METHOD_NAME, NO_SUCH_PROPERTY_NAME, PROTO, PROTOTYPE, SET_PROTO_NAME -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJSClassObject(com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto) -
Method Summary
Modifier and TypeMethodDescriptionbooleandefineOwnProperty(Object key, PropertyDescriptor value, boolean doThrow) [[DefineOwnProperty]] (P, Desc).booleandelete(long index, boolean isStrict) boolean[[Delete]] (P).getMethodHelper(Object receiver, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode) getOwnHelper(Object receiver, long index, com.oracle.truffle.api.nodes.Node encapsulatingNode) getOwnHelper(Object receiver, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode) getOwnProperty(Object propertyKey) [[GetOwnProperty]] (P).getOwnPropertyKeys(boolean strings, boolean symbols) GetOwnPropertyKeys (O, type).[[GetPrototypeOf]] ().booleanIf true,JSDynamicObject.ownPropertyKeys()andJSShape.getPropertyKeyList(com.oracle.truffle.api.object.Shape, boolean, boolean)enumerate the same keys.booleanhasOwnProperty(long index) booleanhasOwnProperty(Object key) booleanhasProperty(long index) booleanhasProperty(Object key) [[HasProperty]] (P).booleanset(long index, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode) booleanset(Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode) [[Set]] (P, V, Receiver).booleansetPrototypeOf(JSDynamicObject newPrototype) [[SetPrototypeOf]] (V).Methods inherited from class com.oracle.truffle.js.runtime.objects.JSObject
copyWithoutProperties, defaultToString, defineOwnProperty, defineOwnProperty, delete, delete, delete, delete, delete, delete, enumerableOwnNames, filterEnumerableNames, get, get, get, get, getArray, getBuiltinToStringTag, getClassName, getIterator, getJSClass, getJSContext, getLanguage, getMethod, getMethod, getOrDefault, getOrDefault, getOrDefault, getOrDefault, getOwnProperty, getOwnProperty, getPrototype, getPrototype, getUncachedRead, getUncachedWrite, getWithReceiver, hasArray, hasIterator, hasLanguage, hasMemberReadSideEffects, hasMembers, hasMemberWriteSideEffects, hasOwnProperty, hasOwnProperty, hasOwnProperty, hasOwnProperty, hasProperty, hasProperty, hasProperty, hasProperty, invokeMember, isExtensible, isExtensible, isJSObject, isMemberInsertable, isMemberInvocable, isMemberModifiable, isMemberReadable, isMemberRemovable, language, ordinaryToPrimitive, ownPropertyKeys, ownPropertyKeys, readMember, removeMember, set, set, set, set, setArray, setPrototype, setPrototype, setWithReceiver, setWithReceiver, toDisplayString, toPrimitive, toPrimitive, writeMemberMethods inherited from class com.oracle.truffle.js.runtime.objects.JSDynamicObject
defaultToString, getClassName, getDynamicType, getJSClass, getJSContext, getJSSharedData, getObjectFlags, getOrDefault, getOrNull, getPropertyArray, getPropertyFlags, getValue, getValue, identityHashCode, isExtensible, isJSDynamicObject, ownPropertyKeys, preventExtensions, setIntegrityLevel, setJSClass, setObjectFlags, setPropertyFlags, testIntegrityLevel, testProperties, toDisplayStringImpl, updatePropertyFlagsMethods inherited from class com.oracle.truffle.api.object.DynamicObject
clone, getShape
-
Constructor Details
-
JSClassObject
-
-
Method Details
-
getPrototypeOf
Description copied from class:JSDynamicObject[[GetPrototypeOf]] ().- Specified by:
getPrototypeOfin classJSDynamicObject
-
setPrototypeOf
Description copied from class:JSDynamicObject[[SetPrototypeOf]] (V).- Specified by:
setPrototypeOfin classJSDynamicObject
-
getOwnProperty
Description copied from class:JSDynamicObject[[GetOwnProperty]] (P).- Specified by:
getOwnPropertyin classJSDynamicObject
-
defineOwnProperty
Description copied from class:JSDynamicObject[[DefineOwnProperty]] (P, Desc).- Specified by:
defineOwnPropertyin classJSDynamicObject
-
hasProperty
Description copied from class:JSDynamicObject[[HasProperty]] (P).- Specified by:
hasPropertyin classJSDynamicObject
-
hasProperty
public boolean hasProperty(long index) - Specified by:
hasPropertyin classJSDynamicObject
-
hasOwnProperty
- Specified by:
hasOwnPropertyin classJSDynamicObject
-
hasOwnProperty
public boolean hasOwnProperty(long index) - Specified by:
hasOwnPropertyin classJSDynamicObject
-
getHelper
public Object getHelper(Object receiver, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
getHelperin classJSDynamicObject
-
getHelper
public Object getHelper(Object receiver, long index, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
getHelperin classJSDynamicObject
-
getOwnHelper
public Object getOwnHelper(Object receiver, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
getOwnHelperin classJSDynamicObject
-
getOwnHelper
public Object getOwnHelper(Object receiver, long index, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
getOwnHelperin classJSDynamicObject
-
getMethodHelper
public Object getMethodHelper(Object receiver, Object key, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
getMethodHelperin classJSDynamicObject
-
set
public boolean set(Object key, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode) Description copied from class:JSDynamicObject[[Set]] (P, V, Receiver).- Specified by:
setin classJSDynamicObject
-
set
public boolean set(long index, Object value, Object receiver, boolean isStrict, com.oracle.truffle.api.nodes.Node encapsulatingNode) - Specified by:
setin classJSDynamicObject
-
delete
Description copied from class:JSDynamicObject[[Delete]] (P).- Specified by:
deletein classJSDynamicObject
-
delete
public boolean delete(long index, boolean isStrict) - Specified by:
deletein classJSDynamicObject
-
getOwnPropertyKeys
Description copied from class:JSDynamicObjectGetOwnPropertyKeys (O, type).- Specified by:
getOwnPropertyKeysin classJSDynamicObject- Returns:
- a List of the keys of all own properties of that object with the specified types
-
hasOnlyShapeProperties
public boolean hasOnlyShapeProperties()Description copied from class:JSDynamicObjectIf true,JSDynamicObject.ownPropertyKeys()andJSShape.getPropertyKeyList(com.oracle.truffle.api.object.Shape, boolean, boolean)enumerate the same keys.- Specified by:
hasOnlyShapePropertiesin classJSDynamicObject
-