Class JSNonProxyObject

All Implemented Interfaces:
com.oracle.truffle.api.interop.TruffleObject
Direct Known Subclasses:
JavaImporterObject, JavaPackageObject, JSArrayBase, JSArrayBufferObject, JSArrayBufferViewBase, JSArrayIteratorObject, JSAsyncContextSnapshotObject, JSAsyncContextVariableObject, JSAsyncFromSyncIteratorObject, JSAsyncGeneratorObject, JSAsyncIteratorObject, JSBigIntObject, JSBooleanObject, JSCollatorObject, JSCollectionIteratorObject, JSDateObject, JSDateTimeFormatObject, JSDisplayNamesObject, JSErrorObject, JSFinalizationRegistryObject, JSForInIteratorObject, JSFunctionObject, JSGeneratorObject, JSGlobalObject, JSIteratorHelperObject, JSIteratorObject, JSIteratorRecordObject, JSListFormatObject, JSLocaleObject, JSMapObject, JSModuleNamespaceObject, JSNumberFormatObject, JSNumberObject, JSOrdinaryObject, JSPluralRulesObject, JSPromiseObject, JSRawJSONObject, JSRegExpGroupsObject, JSRegExpObject, JSRelativeTimeFormatObject, JSSegmenterObject, JSSegmentIteratorObject, JSSegmentsObject, JSSetObject, JSShadowRealmObject, JSStringIteratorObject, JSStringObject, JSSymbolObject, JSTemporalCalendarHolder, JSTemporalDurationObject, JSTemporalInstantObject, JSTextDecoderObject, JSTextEncoderObject, JSUncheckedProxyHandlerObject, JSWeakMapObject, JSWeakRefObject, JSWeakSetObject, JSWebAssemblyGlobalObject, JSWebAssemblyInstanceObject, JSWebAssemblyMemoryObject, JSWebAssemblyModuleObject, JSWebAssemblyTableObject, JSWorkerObject

public abstract class JSNonProxyObject extends JSClassObject
Basic non-proxy JS object.
See Also:
  • Constructor Details

    • JSNonProxyObject

      protected JSNonProxyObject(com.oracle.truffle.api.object.Shape shape, JSDynamicObject proto)
  • Method Details

    • hasMetaObject

      public final boolean hasMetaObject()
    • getMetaObject

      public final Object getMetaObject() throws com.oracle.truffle.api.interop.UnsupportedMessageException
      Throws:
      com.oracle.truffle.api.interop.UnsupportedMessageException
    • getMetaObjectImpl

      public final Object getMetaObjectImpl()
    • isExtensible

      public final boolean isExtensible()
      Description copied from class: JSDynamicObject
      [IsExtensible]] ().
      Specified by:
      isExtensible in class JSDynamicObject
    • preventExtensions

      public boolean preventExtensions(boolean doThrow)
      Description copied from class: JSDynamicObject
      [[PreventExtensions]] ().
      Specified by:
      preventExtensions in class JSDynamicObject
    • testIntegrityLevel

      public boolean testIntegrityLevel(boolean frozen)
      Description copied from class: JSDynamicObject
      TestIntegrityLevel(O, level).
      Overrides:
      testIntegrityLevel in class JSDynamicObject
    • setIntegrityLevel

      public boolean setIntegrityLevel(boolean freeze, boolean doThrow)
      Description copied from class: JSDynamicObject
      SetIntegrityLevel(O, level).
      Overrides:
      setIntegrityLevel in class JSDynamicObject
    • getClassName

      public com.oracle.truffle.api.strings.TruffleString getClassName()
      Description copied from class: JSDynamicObject
      The [[Class]] internal property. For ES5, this is the second part of what Object.prototype.toString.call(myObj) returns, e.g. "[object Array]".
      Specified by:
      getClassName in class JSDynamicObject
    • toDisplayStringImpl

      public com.oracle.truffle.api.strings.TruffleString toDisplayStringImpl(boolean allowSideEffects, ToDisplayStringFormat format, int depth)
      Description copied from class: JSDynamicObject
      A more informative toString variant, mainly used for error messages.
      Specified by:
      toDisplayStringImpl in class JSDynamicObject
      Parameters:
      format - formatting parameters
      depth - current nesting depth