Class JSOverloadedOperatorsObject
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
com.oracle.truffle.js.runtime.objects.JSNonProxyObject
com.oracle.truffle.js.runtime.objects.JSOrdinaryObject
com.oracle.truffle.js.runtime.builtins.JSOverloadedOperatorsObject
- All Implemented Interfaces:
com.oracle.truffle.api.interop.TruffleObject, JSCopyableObject
This is the type of JavaScript objects that have overloaded operator semantics. This class
replicates JSOrdinaryObject.DefaultLayout, while adding an internal slot for the operator
information.
-
Nested Class Summary
Nested classes/interfaces inherited from class JSOrdinaryObject
JSOrdinaryObject.BareLayout, JSOrdinaryObject.DefaultLayout, JSOrdinaryObject.InternalFieldLayoutNested classes/interfaces inherited from class JSDynamicObject
JSDynamicObject.IsIdenticalOrUndefined, JSDynamicObject.ToBoolean, JSDynamicObject.ToNumber, JSDynamicObject.ToStringNested classes/interfaces inherited from class com.oracle.truffle.api.object.DynamicObject
com.oracle.truffle.api.object.DynamicObject.DynamicField -
Field Summary
Fields inherited from class 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
ConstructorsModifierConstructorDescriptionprotectedJSOverloadedOperatorsObject(com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto, OperatorSet operatorSet) -
Method Summary
Modifier and TypeMethodDescriptionprotected JSObjectcopyWithoutProperties(com.oracle.truffle.api.object.Shape shape) static JSOverloadedOperatorsObjectcreate(JSContext context, com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto, OperatorSet operatorSet) intstatic booleanhasOverloadedOperators(Object value) booleanmatchesOperatorCounter(int operatorCounter) Methods inherited from class JSOrdinaryObject
create, createWithDefaultLayout, getClassName, getValue, hasOnlyShapeProperties, toDisplayStringImplMethods inherited from class JSNonProxyObject
getMetaObject, getMetaObjectImpl, hasMetaObject, isExtensible, preventExtensions, setIntegrityLevel, testIntegrityLevelMethods inherited from class JSClassObject
defineOwnProperty, delete, delete, getHelper, getHelper, getMethodHelper, getOwnHelper, getOwnHelper, getOwnProperty, getOwnPropertyKeys, getPrototypeOf, hasOwnProperty, hasOwnProperty, hasProperty, hasProperty, set, set, setPrototypeOfMethods inherited from class JSObject
defaultToString, defineOwnProperty, defineOwnProperty, delete, delete, delete, delete, delete, delete, enumerableOwnNames, filterEnumerableNames, get, get, get, get, getArray, getBuiltinToStringTag, getClassName, getIterator, getJSClass, getJSContext, getLanguage, getMembers, 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 JSDynamicObject
defaultToString, getDynamicType, getJSClass, getJSContext, getJSSharedData, getObjectFlags, getOrDefault, getOrNull, getPropertyArray, getPropertyFlags, getValue, identityHashCode, isJSDynamicObject, ownPropertyKeys, setJSClass, setObjectFlags, setPropertyFlags, testProperties, updatePropertyFlagsMethods inherited from class com.oracle.truffle.api.object.DynamicObject
clone, getShapeMethods inherited from class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface JSCopyableObject
copy
-
Constructor Details
-
JSOverloadedOperatorsObject
protected JSOverloadedOperatorsObject(com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto, OperatorSet operatorSet)
-
-
Method Details
-
getOperatorSet
-
getOperatorCounter
public int getOperatorCounter() -
matchesOperatorCounter
public boolean matchesOperatorCounter(int operatorCounter) -
hasOverloadedOperators
-
create
public static JSOverloadedOperatorsObject create(JSContext context, com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto, OperatorSet operatorSet) -
copyWithoutProperties
- Overrides:
copyWithoutPropertiesin classJSObject
-