webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
JSC::AbstractModuleRecord Class Reference

#include <AbstractModuleRecord.h>

Inheritance diagram for JSC::AbstractModuleRecord:
JSC::JSDestructibleObject JSC::JSDestructibleObject JSC::JSNonFinalObject JSC::JSNonFinalObject JSC::JSNonFinalObject JSC::JSNonFinalObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSObject JSC::JSModuleRecord JSC::JSModuleRecord

Classes

struct  ExportEntry
 
struct  ImportEntry
 
struct  Resolution
 
struct  ResolveQuery
 

Public Types

typedef JSDestructibleObject Base
 
typedef WTF::ListHashSet< RefPtr< UniquedStringImpl >, IdentifierRepHashOrderedIdentifierSet
 
typedef HashMap< RefPtr< UniquedStringImpl >, ImportEntry, IdentifierRepHash, HashTraits< RefPtr< UniquedStringImpl > > > ImportEntries
 
typedef HashMap< RefPtr< UniquedStringImpl >, ExportEntry, IdentifierRepHash, HashTraits< RefPtr< UniquedStringImpl > > > ExportEntries
 
typedef JSDestructibleObject Base
 
typedef WTF::ListHashSet< RefPtr< UniquedStringImpl >, IdentifierRepHashOrderedIdentifierSet
 
typedef HashMap< RefPtr< UniquedStringImpl >, ImportEntry, IdentifierRepHash, HashTraits< RefPtr< UniquedStringImpl > > > ImportEntries
 
typedef HashMap< RefPtr< UniquedStringImpl >, ExportEntry, IdentifierRepHash, HashTraits< RefPtr< UniquedStringImpl > > > ExportEntries
 
- Public Types inherited from JSC::JSDestructibleObject
typedef JSNonFinalObject Base
 
typedef JSNonFinalObject Base
 
- Public Types inherited from JSC::JSNonFinalObject
typedef JSObject Base
 
typedef JSObject Base
 
- Public Types inherited from JSC::JSObject
typedef JSCell Base
 
typedef JSCell Base
 
- Public Types inherited from JSC::JSCell
enum  CreatingEarlyCellTag { CreatingEarlyCell, CreatingEarlyCell }
 
enum  CreatingEarlyCellTag { CreatingEarlyCell, CreatingEarlyCell }
 
- Public Types inherited from JSC::HeapCell
enum  Kind : int8_t { JSCell, Auxiliary, JSCell, Auxiliary }
 
enum  Kind : int8_t { JSCell, Auxiliary, JSCell, Auxiliary }
 

Public Member Functions

void appendRequestedModule (const Identifier &)
 
void addStarExportEntry (const Identifier &)
 
void addImportEntry (const ImportEntry &)
 
void addExportEntry (const ExportEntry &)
 
std::optional< ImportEntrytryGetImportEntry (UniquedStringImpl *localName)
 
std::optional< ExportEntrytryGetExportEntry (UniquedStringImpl *exportName)
 
const IdentifiermoduleKey () const
 
const OrderedIdentifierSetrequestedModules () const
 
const ExportEntriesexportEntries () const
 
const ImportEntriesimportEntries () const
 
const OrderedIdentifierSetstarExportEntries () const
 
void dump ()
 
Resolution resolveExport (ExecState *, const Identifier &exportName)
 
Resolution resolveImport (ExecState *, const Identifier &localName)
 
AbstractModuleRecordhostResolveImportedModule (ExecState *, const Identifier &moduleName)
 
JSModuleNamespaceObjectgetModuleNamespace (ExecState *)
 
JSModuleEnvironmentmoduleEnvironment ()
 
void appendRequestedModule (const Identifier &)
 
void addStarExportEntry (const Identifier &)
 
void addImportEntry (const ImportEntry &)
 
void addExportEntry (const ExportEntry &)
 
std::optional< ImportEntrytryGetImportEntry (UniquedStringImpl *localName)
 
std::optional< ExportEntrytryGetExportEntry (UniquedStringImpl *exportName)
 
const IdentifiermoduleKey () const
 
const OrderedIdentifierSetrequestedModules () const
 
const ExportEntriesexportEntries () const
 
const ImportEntriesimportEntries () const
 
const OrderedIdentifierSetstarExportEntries () const
 
void dump ()
 
Resolution resolveExport (ExecState *, const Identifier &exportName)
 
Resolution resolveImport (ExecState *, const Identifier &localName)
 
AbstractModuleRecordhostResolveImportedModule (ExecState *, const Identifier &moduleName)
 
JSModuleNamespaceObjectgetModuleNamespace (ExecState *)
 
JSModuleEnvironmentmoduleEnvironment ()
 
- Public Member Functions inherited from JSC::JSDestructibleObject
const ClassInfoclassInfo () const
 
const ClassInfoclassInfo () const
 
- Public Member Functions inherited from JSC::JSObject
JSValue getPrototype (VM &, ExecState *)
 
JSValue getPrototypeDirect () const
 
JS_EXPORT_PRIVATE void setPrototypeDirect (VM &, JSValue prototype)
 
bool setPrototype (VM &, ExecState *, JSValue prototype, bool shouldThrowIfCantSet=false)
 
bool mayInterceptIndexedAccesses ()
 
JSValue get (ExecState *, PropertyName) const
 
JSValue get (ExecState *, unsigned propertyName) const
 
bool getPropertySlot (ExecState *, PropertyName, PropertySlot &)
 
bool getPropertySlot (ExecState *, unsigned propertyName, PropertySlot &)
 
template<typename CallbackWhenNoException >
std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *, PropertyName, CallbackWhenNoException) const
 
template<typename CallbackWhenNoException >
std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *, PropertyName, PropertySlot &, CallbackWhenNoException) const
 
JS_EXPORT_PRIVATE bool getOwnPropertyDescriptor (ExecState *, PropertyName, PropertyDescriptor &)
 
unsigned getArrayLength () const
 
unsigned getVectorLength ()
 
ALWAYS_INLINE bool putByIndexInline (ExecState *exec, unsigned propertyName, JSValue value, bool shouldThrow)
 
bool putDirectIndex (ExecState *exec, unsigned propertyName, JSValue value, unsigned attributes, PutDirectIndexMode mode)
 
bool putDirectIndex (ExecState *exec, unsigned propertyName, JSValue value)
 
JS_EXPORT_PRIVATE bool putDirectMayBeIndex (ExecState *, PropertyName, JSValue)
 
bool hasIndexingHeader () const
 
bool canGetIndexQuickly (unsigned i)
 
JSValue getIndexQuickly (unsigned i)
 
JSValue tryGetIndexQuickly (unsigned i) const
 
JSValue getDirectIndex (ExecState *exec, unsigned i)
 
JSValue getIndex (ExecState *exec, unsigned i) const
 
bool canSetIndexQuickly (unsigned i)
 
bool canSetIndexQuicklyForPutDirect (unsigned i)
 
void setIndexQuickly (VM &vm, unsigned i, JSValue v)
 
void initializeIndex (VM &vm, unsigned i, JSValue v)
 
ALWAYS_INLINE void initializeIndex (VM &vm, unsigned i, JSValue v, IndexingType indexingType)
 
void initializeIndexWithoutBarrier (unsigned i, JSValue v)
 
ALWAYS_INLINE void initializeIndexWithoutBarrier (unsigned i, JSValue v, IndexingType indexingType)
 
bool hasSparseMap ()
 
bool inSparseIndexingMode ()
 
void enterDictionaryIndexingMode (VM &)
 
bool putDirect (VM &, PropertyName, JSValue, unsigned attributes=0)
 
bool putDirect (VM &, PropertyName, JSValue, PutPropertySlot &)
 
void putDirectWithoutTransition (VM &, PropertyName, JSValue, unsigned attributes=0)
 
bool putDirectNonIndexAccessor (VM &, PropertyName, JSValue, unsigned attributes)
 
bool putDirectAccessor (ExecState *, PropertyName, JSValue, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectCustomAccessor (VM &, PropertyName, JSValue, unsigned attributes)
 
bool putGetter (ExecState *, PropertyName, JSValue, unsigned attributes)
 
bool putSetter (ExecState *, PropertyName, JSValue, unsigned attributes)
 
JS_EXPORT_PRIVATE bool hasProperty (ExecState *, PropertyName) const
 
JS_EXPORT_PRIVATE bool hasProperty (ExecState *, unsigned propertyName) const
 
bool hasPropertyGeneric (ExecState *, PropertyName, PropertySlot::InternalMethodType) const
 
bool hasPropertyGeneric (ExecState *, unsigned propertyName, PropertySlot::InternalMethodType) const
 
bool hasOwnProperty (ExecState *, PropertyName, PropertySlot &) const
 
bool hasOwnProperty (ExecState *, PropertyName) const
 
bool hasOwnProperty (ExecState *, unsigned) const
 
JSValue ordinaryToPrimitive (ExecState *, PreferredPrimitiveType) const
 
JS_EXPORT_PRIVATE bool hasInstance (ExecState *, JSValue value, JSValue hasInstanceValue)
 
JS_EXPORT_PRIVATE bool hasInstance (ExecState *, JSValue)
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType=NoPreference) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JS_EXPORT_PRIVATE JSStringtoString (ExecState *) const
 
JSValue getDirect (VM &vm, PropertyName propertyName) const
 
JSValue getDirect (VM &vm, PropertyName propertyName, unsigned &attributes) const
 
PropertyOffset getDirectOffset (VM &vm, PropertyName propertyName)
 
PropertyOffset getDirectOffset (VM &vm, PropertyName propertyName, unsigned &attributes)
 
bool hasInlineStorage () const
 
ConstPropertyStorage inlineStorageUnsafe () const
 
PropertyStorage inlineStorageUnsafe ()
 
ConstPropertyStorage inlineStorage () const
 
PropertyStorage inlineStorage ()
 
const Butterflybutterfly () const
 
Butterflybutterfly ()
 
ConstPropertyStorage outOfLineStorage () const
 
PropertyStorage outOfLineStorage ()
 
const WriteBarrierBase< Unknown > * locationForOffset (PropertyOffset offset) const
 
WriteBarrierBase< Unknown > * locationForOffset (PropertyOffset offset)
 
void transitionTo (VM &, Structure *)
 
bool hasCustomProperties ()
 
bool hasGetterSetterProperties ()
 
bool hasCustomGetterSetterProperties ()
 
bool putOwnDataProperty (VM &, PropertyName, JSValue, PutPropertySlot &)
 
bool putOwnDataPropertyMayBeIndex (ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
JSValue getDirect (PropertyOffset offset) const
 
void putDirect (VM &vm, PropertyOffset offset, JSValue value)
 
void putDirectWithoutBarrier (PropertyOffset offset, JSValue value)
 
void putDirectUndefined (PropertyOffset offset)
 
JS_EXPORT_PRIVATE bool putDirectNativeIntrinsicGetter (VM &, JSGlobalObject *, Identifier, NativeFunction, Intrinsic, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectNativeFunction (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectNativeFunction (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, const DOMJIT::Signature *, unsigned attributes)
 
JS_EXPORT_PRIVATE JSFunctionputDirectBuiltinFunction (VM &, JSGlobalObject *, const PropertyName &, FunctionExecutable *, unsigned attributes)
 
JSFunctionputDirectBuiltinFunctionWithoutTransition (VM &, JSGlobalObject *, const PropertyName &, FunctionExecutable *, unsigned attributes)
 
JS_EXPORT_PRIVATE void putDirectNativeFunctionWithoutTransition (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes)
 
bool isEnvironmentRecord () const
 
bool isGlobalObject () const
 
bool isJSLexicalEnvironment () const
 
bool isGlobalLexicalEnvironment () const
 
bool isStrictEvalActivation () const
 
bool isWithScope () const
 
bool isErrorInstance () const
 
JS_EXPORT_PRIVATE void seal (VM &)
 
JS_EXPORT_PRIVATE void freeze (VM &)
 
bool isSealed (VM &vm)
 
bool isFrozen (VM &vm)
 
ALWAYS_INLINE bool isStructureExtensible ()
 
bool isExtensible (ExecState *)
 
bool indexingShouldBeSparse ()
 
bool staticPropertiesReified ()
 
void reifyAllStaticProperties (ExecState *)
 
JS_EXPORT_PRIVATE ButterflyallocateMoreOutOfLineStorage (VM &, size_t oldSize, size_t newSize)
 
void setButterfly (VM &, Butterfly *)
 
void nukeStructureAndSetButterfly (VM &, StructureID, Butterfly *)
 
void setStructure (VM &, Structure *)
 
JS_EXPORT_PRIVATE void convertToDictionary (VM &)
 
void flattenDictionaryObject (VM &vm)
 
void shiftButterflyAfterFlattening (const GCSafeConcurrentJSLocker &, VM &, Structure *structure, size_t outOfLineCapacityAfter)
 
JSGlobalObjectglobalObject () const
 
JSGlobalObjectglobalObject (VM &vm) const
 
void switchToSlowPutArrayStorage (VM &)
 
bool attemptToInterceptPutByIndexOnHoleForPrototype (ExecState *, JSValue thisValue, unsigned propertyName, JSValue, bool shouldThrow, bool &putResult)
 
ContiguousJSValues ensureInt32 (VM &vm)
 
ContiguousDoubles ensureDouble (VM &vm)
 
ContiguousJSValues ensureContiguous (VM &vm)
 
ArrayStorageensureArrayStorage (VM &vm)
 
voidbutterflyAddress ()
 
JS_EXPORT_PRIVATE JSValue getMethod (ExecState *, CallData &, CallType &, const Identifier &, const String &errorMessage)
 
JSValue getPrototype (VM &, ExecState *)
 
JSValue getPrototypeDirect () const
 
JS_EXPORT_PRIVATE void setPrototypeDirect (VM &, JSValue prototype)
 
bool setPrototype (VM &, ExecState *, JSValue prototype, bool shouldThrowIfCantSet=false)
 
bool mayInterceptIndexedAccesses ()
 
JSValue get (ExecState *, PropertyName) const
 
JSValue get (ExecState *, unsigned propertyName) const
 
bool getPropertySlot (ExecState *, PropertyName, PropertySlot &)
 
bool getPropertySlot (ExecState *, unsigned propertyName, PropertySlot &)
 
template<typename CallbackWhenNoException >
std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *, PropertyName, CallbackWhenNoException) const
 
template<typename CallbackWhenNoException >
std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *, PropertyName, PropertySlot &, CallbackWhenNoException) const
 
JS_EXPORT_PRIVATE bool getOwnPropertyDescriptor (ExecState *, PropertyName, PropertyDescriptor &)
 
unsigned getArrayLength () const
 
unsigned getVectorLength ()
 
ALWAYS_INLINE bool putByIndexInline (ExecState *exec, unsigned propertyName, JSValue value, bool shouldThrow)
 
bool putDirectIndex (ExecState *exec, unsigned propertyName, JSValue value, unsigned attributes, PutDirectIndexMode mode)
 
bool putDirectIndex (ExecState *exec, unsigned propertyName, JSValue value)
 
JS_EXPORT_PRIVATE bool putDirectMayBeIndex (ExecState *, PropertyName, JSValue)
 
bool hasIndexingHeader () const
 
bool canGetIndexQuickly (unsigned i)
 
JSValue getIndexQuickly (unsigned i)
 
JSValue tryGetIndexQuickly (unsigned i) const
 
JSValue getDirectIndex (ExecState *exec, unsigned i)
 
JSValue getIndex (ExecState *exec, unsigned i) const
 
bool canSetIndexQuickly (unsigned i)
 
bool canSetIndexQuicklyForPutDirect (unsigned i)
 
void setIndexQuickly (VM &vm, unsigned i, JSValue v)
 
void initializeIndex (VM &vm, unsigned i, JSValue v)
 
ALWAYS_INLINE void initializeIndex (VM &vm, unsigned i, JSValue v, IndexingType indexingType)
 
void initializeIndexWithoutBarrier (unsigned i, JSValue v)
 
ALWAYS_INLINE void initializeIndexWithoutBarrier (unsigned i, JSValue v, IndexingType indexingType)
 
bool hasSparseMap ()
 
bool inSparseIndexingMode ()
 
void enterDictionaryIndexingMode (VM &)
 
bool putDirect (VM &, PropertyName, JSValue, unsigned attributes=0)
 
bool putDirect (VM &, PropertyName, JSValue, PutPropertySlot &)
 
void putDirectWithoutTransition (VM &, PropertyName, JSValue, unsigned attributes=0)
 
bool putDirectNonIndexAccessor (VM &, PropertyName, JSValue, unsigned attributes)
 
bool putDirectAccessor (ExecState *, PropertyName, JSValue, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectCustomAccessor (VM &, PropertyName, JSValue, unsigned attributes)
 
bool putGetter (ExecState *, PropertyName, JSValue, unsigned attributes)
 
bool putSetter (ExecState *, PropertyName, JSValue, unsigned attributes)
 
JS_EXPORT_PRIVATE bool hasProperty (ExecState *, PropertyName) const
 
JS_EXPORT_PRIVATE bool hasProperty (ExecState *, unsigned propertyName) const
 
bool hasPropertyGeneric (ExecState *, PropertyName, PropertySlot::InternalMethodType) const
 
bool hasPropertyGeneric (ExecState *, unsigned propertyName, PropertySlot::InternalMethodType) const
 
bool hasOwnProperty (ExecState *, PropertyName, PropertySlot &) const
 
bool hasOwnProperty (ExecState *, PropertyName) const
 
bool hasOwnProperty (ExecState *, unsigned) const
 
JSValue ordinaryToPrimitive (ExecState *, PreferredPrimitiveType) const
 
JS_EXPORT_PRIVATE bool hasInstance (ExecState *, JSValue value, JSValue hasInstanceValue)
 
JS_EXPORT_PRIVATE bool hasInstance (ExecState *, JSValue)
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType=NoPreference) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JS_EXPORT_PRIVATE JSStringtoString (ExecState *) const
 
JSValue getDirect (VM &vm, PropertyName propertyName) const
 
JSValue getDirect (VM &vm, PropertyName propertyName, unsigned &attributes) const
 
PropertyOffset getDirectOffset (VM &vm, PropertyName propertyName)
 
PropertyOffset getDirectOffset (VM &vm, PropertyName propertyName, unsigned &attributes)
 
bool hasInlineStorage () const
 
ConstPropertyStorage inlineStorageUnsafe () const
 
PropertyStorage inlineStorageUnsafe ()
 
ConstPropertyStorage inlineStorage () const
 
PropertyStorage inlineStorage ()
 
const Butterflybutterfly () const
 
Butterflybutterfly ()
 
ConstPropertyStorage outOfLineStorage () const
 
PropertyStorage outOfLineStorage ()
 
const WriteBarrierBase< Unknown > * locationForOffset (PropertyOffset offset) const
 
WriteBarrierBase< Unknown > * locationForOffset (PropertyOffset offset)
 
void transitionTo (VM &, Structure *)
 
bool hasCustomProperties ()
 
bool hasGetterSetterProperties ()
 
bool hasCustomGetterSetterProperties ()
 
bool putOwnDataProperty (VM &, PropertyName, JSValue, PutPropertySlot &)
 
bool putOwnDataPropertyMayBeIndex (ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
JSValue getDirect (PropertyOffset offset) const
 
void putDirect (VM &vm, PropertyOffset offset, JSValue value)
 
void putDirectWithoutBarrier (PropertyOffset offset, JSValue value)
 
void putDirectUndefined (PropertyOffset offset)
 
JS_EXPORT_PRIVATE bool putDirectNativeIntrinsicGetter (VM &, JSGlobalObject *, Identifier, NativeFunction, Intrinsic, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectNativeFunction (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes)
 
JS_EXPORT_PRIVATE bool putDirectNativeFunction (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, const DOMJIT::Signature *, unsigned attributes)
 
JS_EXPORT_PRIVATE JSFunctionputDirectBuiltinFunction (VM &, JSGlobalObject *, const PropertyName &, FunctionExecutable *, unsigned attributes)
 
JSFunctionputDirectBuiltinFunctionWithoutTransition (VM &, JSGlobalObject *, const PropertyName &, FunctionExecutable *, unsigned attributes)
 
JS_EXPORT_PRIVATE void putDirectNativeFunctionWithoutTransition (VM &, JSGlobalObject *, const PropertyName &, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes)
 
bool isEnvironmentRecord () const
 
bool isGlobalObject () const
 
bool isJSLexicalEnvironment () const
 
bool isGlobalLexicalEnvironment () const
 
bool isStrictEvalActivation () const
 
bool isWithScope () const
 
bool isErrorInstance () const
 
JS_EXPORT_PRIVATE void seal (VM &)
 
JS_EXPORT_PRIVATE void freeze (VM &)
 
bool isSealed (VM &vm)
 
bool isFrozen (VM &vm)
 
ALWAYS_INLINE bool isStructureExtensible ()
 
bool isExtensible (ExecState *)
 
bool indexingShouldBeSparse ()
 
bool staticPropertiesReified ()
 
void reifyAllStaticProperties (ExecState *)
 
JS_EXPORT_PRIVATE ButterflyallocateMoreOutOfLineStorage (VM &, size_t oldSize, size_t newSize)
 
void setButterfly (VM &, Butterfly *)
 
void nukeStructureAndSetButterfly (VM &, StructureID, Butterfly *)
 
void setStructure (VM &, Structure *)
 
JS_EXPORT_PRIVATE void convertToDictionary (VM &)
 
void flattenDictionaryObject (VM &vm)
 
void shiftButterflyAfterFlattening (const GCSafeConcurrentJSLocker &, VM &, Structure *structure, size_t outOfLineCapacityAfter)
 
JSGlobalObjectglobalObject () const
 
JSGlobalObjectglobalObject (VM &vm) const
 
void switchToSlowPutArrayStorage (VM &)
 
bool attemptToInterceptPutByIndexOnHoleForPrototype (ExecState *, JSValue thisValue, unsigned propertyName, JSValue, bool shouldThrow, bool &putResult)
 
ContiguousJSValues ensureInt32 (VM &vm)
 
ContiguousDoubles ensureDouble (VM &vm)
 
ContiguousJSValues ensureContiguous (VM &vm)
 
ArrayStorageensureArrayStorage (VM &vm)
 
voidbutterflyAddress ()
 
JS_EXPORT_PRIVATE JSValue getMethod (ExecState *, CallData &, CallType &, const Identifier &, const String &errorMessage)
 
template<typename CallbackWhenNoException >
ALWAYS_INLINE std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *exec, PropertyName propertyName, CallbackWhenNoException callback) const
 
template<typename CallbackWhenNoException >
ALWAYS_INLINE std::result_of< CallbackWhenNoException(bool, PropertySlot &)>::type getPropertySlot (ExecState *exec, PropertyName propertyName, PropertySlot &slot, CallbackWhenNoException callback) const
 
template<JSObject::PutMode mode>
ALWAYS_INLINE bool putDirectInternal (VM &vm, PropertyName propertyName, JSValue value, unsigned attributes, PutPropertySlot &slot)
 
- Public Member Functions inherited from JSC::JSCell
 JSCell (CreatingEarlyCellTag)
 
bool isString () const
 
bool isSymbol () const
 
bool isObject () const
 
bool isAnyWasmCallee (VM &) const
 
bool isGetterSetter () const
 
bool isCustomGetterSetter () const
 
bool isProxy () const
 
bool inherits (VM &, const ClassInfo *) const
 
bool isAPIValueWrapper () const
 
void lock ()
 
bool tryLock ()
 
void unlock ()
 
bool isLocked () const
 
JSType type () const
 
IndexingType indexingTypeAndMisc () const
 
IndexingType indexingType () const
 
StructureID structureID () const
 
Structurestructure () const
 
Structurestructure (VM &) const
 
void setStructure (VM &, Structure *)
 
void setStructureIDDirectly (StructureID id)
 
void clearStructure ()
 
TypeInfo::InlineTypeFlags inlineTypeFlags () const
 
const char * className (VM &) const
 
JS_EXPORT_PRIVATE bool getString (ExecState *, String &) const
 
JS_EXPORT_PRIVATE String getString (ExecState *) const
 
JS_EXPORT_PRIVATE JSObjectgetObject ()
 
const JSObjectgetObject () const
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
bool toBoolean (ExecState *) const
 
TriState pureToBoolean () const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JSObjecttoObject (ExecState *, JSGlobalObject *) const
 
void dump (PrintStream &) const
 
size_t estimatedSizeInBytes () const
 
const ClassInfoclassInfo (VM &) const
 
const MethodTablemethodTable () const
 
const MethodTablemethodTable (VM &) const
 
JSValue fastGetOwnProperty (VM &, Structure &, PropertyName)
 
CellState cellState () const
 
void setCellState (CellState data) const
 
bool atomicCompareExchangeCellStateWeakRelaxed (CellState oldState, CellState newState)
 
CellState atomicCompareExchangeCellStateStrong (CellState oldState, CellState newState)
 
void callDestructor (VM &)
 
 JSCell (CreatingEarlyCellTag)
 
bool isString () const
 
bool isSymbol () const
 
bool isObject () const
 
bool isAnyWasmCallee (VM &) const
 
bool isGetterSetter () const
 
bool isCustomGetterSetter () const
 
bool isProxy () const
 
bool inherits (VM &, const ClassInfo *) const
 
bool isAPIValueWrapper () const
 
void lock ()
 
bool tryLock ()
 
void unlock ()
 
bool isLocked () const
 
JSType type () const
 
IndexingType indexingTypeAndMisc () const
 
IndexingType indexingType () const
 
StructureID structureID () const
 
Structurestructure () const
 
Structurestructure (VM &) const
 
void setStructure (VM &, Structure *)
 
void setStructureIDDirectly (StructureID id)
 
void clearStructure ()
 
TypeInfo::InlineTypeFlags inlineTypeFlags () const
 
const char * className (VM &) const
 
JS_EXPORT_PRIVATE bool getString (ExecState *, String &) const
 
JS_EXPORT_PRIVATE String getString (ExecState *) const
 
JS_EXPORT_PRIVATE JSObjectgetObject ()
 
const JSObjectgetObject () const
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
bool toBoolean (ExecState *) const
 
TriState pureToBoolean () const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JSObjecttoObject (ExecState *, JSGlobalObject *) const
 
void dump (PrintStream &) const
 
size_t estimatedSizeInBytes () const
 
const ClassInfoclassInfo (VM &) const
 
const MethodTablemethodTable () const
 
const MethodTablemethodTable (VM &) const
 
JSValue fastGetOwnProperty (VM &, Structure &, PropertyName)
 
CellState cellState () const
 
void setCellState (CellState data) const
 
bool atomicCompareExchangeCellStateWeakRelaxed (CellState oldState, CellState newState)
 
CellState atomicCompareExchangeCellStateStrong (CellState oldState, CellState newState)
 
void callDestructor (VM &)
 
- Public Member Functions inherited from JSC::HeapCell
 HeapCell ()
 
void zap ()
 
bool isZapped () const
 
bool isLargeAllocation () const
 
CellContainer cellContainer () const
 
MarkedBlockmarkedBlock () const
 
LargeAllocationlargeAllocation () const
 
Heapheap () const
 
VMvm () const
 
size_t cellSize () const
 
AllocatorAttributes allocatorAttributes () const
 
DestructionMode destructionMode () const
 
Kind cellKind () const
 
 HeapCell ()
 
void zap ()
 
bool isZapped () const
 
bool isLargeAllocation () const
 
CellContainer cellContainer () const
 
MarkedBlockmarkedBlock () const
 
LargeAllocationlargeAllocation () const
 
Heapheap () const
 
VMvm () const
 
size_t cellSize () const
 
AllocatorAttributes allocatorAttributes () const
 
DestructionMode destructionMode () const
 
Kind cellKind () const
 

Public Attributes

 DECLARE_EXPORT_INFO
 
- Public Attributes inherited from JSC::JSObject
 DECLARE_EXPORT_INFO
 

Protected Member Functions

 AbstractModuleRecord (VM &, Structure *, const Identifier &)
 
void finishCreation (ExecState *, VM &)
 
 AbstractModuleRecord (VM &, Structure *, const Identifier &)
 
void finishCreation (ExecState *, VM &)
 
- Protected Member Functions inherited from JSC::JSDestructibleObject
 JSDestructibleObject (VM &vm, Structure *structure, Butterfly *butterfly=0)
 
 JSDestructibleObject (VM &vm, Structure *structure, Butterfly *butterfly=0)
 
- Protected Member Functions inherited from JSC::JSNonFinalObject
 JSNonFinalObject (VM &vm, Structure *structure, Butterfly *butterfly=0)
 
void finishCreation (VM &vm)
 
 JSNonFinalObject (VM &vm, Structure *structure, Butterfly *butterfly=0)
 
void finishCreation (VM &vm)
 
- Protected Member Functions inherited from JSC::JSObject
void finishCreation (VM &vm)
 
 JSObject (VM &, Structure *, Butterfly *=0)
 
StructurevisitButterfly (SlotVisitor &)
 
StructurevisitButterflyImpl (SlotVisitor &)
 
void markAuxiliaryAndVisitOutOfLineProperties (SlotVisitor &, Butterfly *, Structure *, PropertyOffset lastOffset)
 
ArrayStoragearrayStorage ()
 
ArrayStoragearrayStorageOrNull ()
 
size_t butterflyTotalSize ()
 
size_t butterflyPreCapacity ()
 
ButterflycreateInitialUndecided (VM &, unsigned length)
 
ContiguousJSValues createInitialInt32 (VM &, unsigned length)
 
ContiguousDoubles createInitialDouble (VM &, unsigned length)
 
ContiguousJSValues createInitialContiguous (VM &, unsigned length)
 
void convertUndecidedForValue (VM &, JSValue)
 
void createInitialForValueAndSet (VM &, unsigned index, JSValue)
 
void convertInt32ForValue (VM &, JSValue)
 
ArrayStoragecreateArrayStorage (VM &, unsigned length, unsigned vectorLength)
 
ArrayStoragecreateInitialArrayStorage (VM &)
 
ContiguousJSValues convertUndecidedToInt32 (VM &)
 
ContiguousDoubles convertUndecidedToDouble (VM &)
 
ContiguousJSValues convertUndecidedToContiguous (VM &)
 
ArrayStorageconvertUndecidedToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertUndecidedToArrayStorage (VM &)
 
ContiguousDoubles convertInt32ToDouble (VM &)
 
ContiguousJSValues convertInt32ToContiguous (VM &)
 
ArrayStorageconvertInt32ToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertInt32ToArrayStorage (VM &)
 
ContiguousJSValues convertDoubleToContiguous (VM &)
 
ArrayStorageconvertDoubleToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertDoubleToArrayStorage (VM &)
 
ArrayStorageconvertContiguousToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertContiguousToArrayStorage (VM &)
 
ArrayStorageensureArrayStorageExistsAndEnterDictionaryIndexingMode (VM &)
 
bool defineOwnNonIndexProperty (ExecState *, PropertyName, const PropertyDescriptor &, bool throwException)
 
template<IndexingType indexingShape>
bool putByIndexBeyondVectorLengthWithoutAttributes (ExecState *, unsigned propertyName, JSValue)
 
bool putByIndexBeyondVectorLengthWithArrayStorage (ExecState *, unsigned propertyName, JSValue, bool shouldThrow, ArrayStorage *)
 
bool increaseVectorLength (VM &, unsigned newLength)
 
void deallocateSparseIndexMap ()
 
bool defineOwnIndexedProperty (ExecState *, unsigned, const PropertyDescriptor &, bool throwException)
 
SparseArrayValueMapallocateSparseIndexMap (VM &)
 
void notifyPresenceOfIndexedAccessors (VM &)
 
bool attemptToInterceptPutByIndexOnHole (ExecState *, unsigned index, JSValue, bool shouldThrow, bool &putResult)
 
bool WARN_UNUSED_RETURN ensureLength (VM &vm, unsigned length)
 
void reallocateAndShrinkButterfly (VM &, unsigned length)
 
template<IndexingType indexingShape>
unsigned countElements (Butterfly *)
 
unsigned countElements ()
 
void finishCreation (VM &vm)
 
 JSObject (VM &, Structure *, Butterfly *=0)
 
StructurevisitButterfly (SlotVisitor &)
 
StructurevisitButterflyImpl (SlotVisitor &)
 
void markAuxiliaryAndVisitOutOfLineProperties (SlotVisitor &, Butterfly *, Structure *, PropertyOffset lastOffset)
 
ArrayStoragearrayStorage ()
 
ArrayStoragearrayStorageOrNull ()
 
size_t butterflyTotalSize ()
 
size_t butterflyPreCapacity ()
 
ButterflycreateInitialUndecided (VM &, unsigned length)
 
ContiguousJSValues createInitialInt32 (VM &, unsigned length)
 
ContiguousDoubles createInitialDouble (VM &, unsigned length)
 
ContiguousJSValues createInitialContiguous (VM &, unsigned length)
 
void convertUndecidedForValue (VM &, JSValue)
 
void createInitialForValueAndSet (VM &, unsigned index, JSValue)
 
void convertInt32ForValue (VM &, JSValue)
 
ArrayStoragecreateArrayStorage (VM &, unsigned length, unsigned vectorLength)
 
ArrayStoragecreateInitialArrayStorage (VM &)
 
ContiguousJSValues convertUndecidedToInt32 (VM &)
 
ContiguousDoubles convertUndecidedToDouble (VM &)
 
ContiguousJSValues convertUndecidedToContiguous (VM &)
 
ArrayStorageconvertUndecidedToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertUndecidedToArrayStorage (VM &)
 
ContiguousDoubles convertInt32ToDouble (VM &)
 
ContiguousJSValues convertInt32ToContiguous (VM &)
 
ArrayStorageconvertInt32ToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertInt32ToArrayStorage (VM &)
 
ContiguousJSValues convertDoubleToContiguous (VM &)
 
ArrayStorageconvertDoubleToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertDoubleToArrayStorage (VM &)
 
ArrayStorageconvertContiguousToArrayStorage (VM &, NonPropertyTransition)
 
ArrayStorageconvertContiguousToArrayStorage (VM &)
 
ArrayStorageensureArrayStorageExistsAndEnterDictionaryIndexingMode (VM &)
 
bool defineOwnNonIndexProperty (ExecState *, PropertyName, const PropertyDescriptor &, bool throwException)
 
template<IndexingType indexingShape>
bool putByIndexBeyondVectorLengthWithoutAttributes (ExecState *, unsigned propertyName, JSValue)
 
bool putByIndexBeyondVectorLengthWithArrayStorage (ExecState *, unsigned propertyName, JSValue, bool shouldThrow, ArrayStorage *)
 
bool increaseVectorLength (VM &, unsigned newLength)
 
void deallocateSparseIndexMap ()
 
bool defineOwnIndexedProperty (ExecState *, unsigned, const PropertyDescriptor &, bool throwException)
 
SparseArrayValueMapallocateSparseIndexMap (VM &)
 
void notifyPresenceOfIndexedAccessors (VM &)
 
bool attemptToInterceptPutByIndexOnHole (ExecState *, unsigned index, JSValue, bool shouldThrow, bool &putResult)
 
bool WARN_UNUSED_RETURN ensureLength (VM &vm, unsigned length)
 
void reallocateAndShrinkButterfly (VM &, unsigned length)
 
template<IndexingType indexingShape>
unsigned countElements (Butterfly *)
 
unsigned countElements ()
 
- Protected Member Functions inherited from JSC::JSCell
 JSCell (VM &, Structure *)
 
void finishCreation (VM &)
 
void finishCreation (VM &, Structure *, CreatingEarlyCellTag)
 
 JSCell (VM &, Structure *)
 
void finishCreation (VM &)
 
void finishCreation (VM &, Structure *, CreatingEarlyCellTag)
 

Static Protected Member Functions

static void visitChildren (JSCell *, SlotVisitor &)
 
static void destroy (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void destroy (JSCell *)
 
- Static Protected Member Functions inherited from JSC::JSObject
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue prototype)
 
static ButterflycreateArrayStorageButterfly (VM &, JSCell *intendedOwner, Structure *, unsigned length, unsigned vectorLength, Butterfly *oldButterfly=nullptr)
 
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue prototype)
 
static ButterflycreateArrayStorageButterfly (VM &, JSCell *intendedOwner, Structure *, unsigned length, unsigned vectorLength, Butterfly *oldButterfly=nullptr)
 
- Static Protected Member Functions inherited from JSC::JSCell
static JS_EXPORT_PRIVATE void destroy (JSCell *)
 
static JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static NO_RETURN_DUE_TO_CRASH void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static NO_RETURN_DUE_TO_CRASH void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH bool preventExtensions (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool isExtensible (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool setPrototype (JSObject *, ExecState *, JSValue, bool)
 
static NO_RETURN_DUE_TO_CRASH JSValue getPrototype (JSObject *, ExecState *)
 
static String className (const JSObject *)
 
static String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool customHasInstance (JSObject *, ExecState *, JSValue)
 
static bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE ArrayBufferslowDownAndWasteMemory (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE RefPtr< ArrayBufferViewgetTypedArrayImpl (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE void destroy (JSCell *)
 
static JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static NO_RETURN_DUE_TO_CRASH void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static NO_RETURN_DUE_TO_CRASH void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH bool preventExtensions (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool isExtensible (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool setPrototype (JSObject *, ExecState *, JSValue, bool)
 
static NO_RETURN_DUE_TO_CRASH JSValue getPrototype (JSObject *, ExecState *)
 
static String className (const JSObject *)
 
static String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool customHasInstance (JSObject *, ExecState *, JSValue)
 
static bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE ArrayBufferslowDownAndWasteMemory (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE RefPtr< ArrayBufferViewgetTypedArrayImpl (JSArrayBufferView *)
 

Protected Attributes

WriteBarrier< JSModuleEnvironmentm_moduleEnvironment
 
- Protected Attributes inherited from JSC::JSObject
AuxiliaryBarrier< Butterfly * > m_butterfly
 

Friends

class LLIntOffsetsExtractor
 

Additional Inherited Members

- Static Public Member Functions inherited from JSC::JSDestructibleObject
template<typename CellType >
static SubspacesubspaceFor (VM &vm)
 
static ptrdiff_t classInfoOffset ()
 
template<typename CellType >
static SubspacesubspaceFor (VM &vm)
 
static ptrdiff_t classInfoOffset ()
 
- Static Public Member Functions inherited from JSC::JSNonFinalObject
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue prototype)
 
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue prototype)
 
- Static Public Member Functions inherited from JSC::JSObject
static JSObjectcreateRawObject (ExecState *exec, Structure *structure, Butterfly *=nullptr)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static JS_EXPORT_PRIVATE void visitChildren (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static JS_EXPORT_PRIVATE String className (const JSObject *)
 
static JS_EXPORT_PRIVATE String calculatedClassName (JSObject *)
 
static JS_EXPORT_PRIVATE String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE JSValue getPrototype (JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool setPrototype (JSObject *, ExecState *, JSValue prototype, bool shouldThrowIfCantSet)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static bool putInline (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static JS_EXPORT_PRIVATE bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static JS_EXPORT_PRIVATE bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static JS_EXPORT_PRIVATE bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static JS_EXPORT_PRIVATE bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JS_EXPORT_PRIVATE JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static bool defaultHasInstance (ExecState *, JSValue, JSValue prototypeProperty)
 
static JS_EXPORT_PRIVATE void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static JS_EXPORT_PRIVATE void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static JS_EXPORT_PRIVATE bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static JS_EXPORT_PRIVATE bool preventExtensions (JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool isExtensible (JSObject *, ExecState *)
 
static size_t offsetOfInlineStorage ()
 
static ptrdiff_t butterflyOffset ()
 
static JSObjectcreateRawObject (ExecState *exec, Structure *structure, Butterfly *=nullptr)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static JS_EXPORT_PRIVATE void visitChildren (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static JS_EXPORT_PRIVATE String className (const JSObject *)
 
static JS_EXPORT_PRIVATE String calculatedClassName (JSObject *)
 
static JS_EXPORT_PRIVATE String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE JSValue getPrototype (JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool setPrototype (JSObject *, ExecState *, JSValue prototype, bool shouldThrowIfCantSet)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static bool putInline (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static JS_EXPORT_PRIVATE bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static JS_EXPORT_PRIVATE bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static JS_EXPORT_PRIVATE bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static JS_EXPORT_PRIVATE bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JS_EXPORT_PRIVATE JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static bool defaultHasInstance (ExecState *, JSValue, JSValue prototypeProperty)
 
static JS_EXPORT_PRIVATE void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static JS_EXPORT_PRIVATE void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static JS_EXPORT_PRIVATE JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static JS_EXPORT_PRIVATE bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static JS_EXPORT_PRIVATE bool preventExtensions (JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool isExtensible (JSObject *, ExecState *)
 
static size_t offsetOfInlineStorage ()
 
static ptrdiff_t butterflyOffset ()
 
- Static Public Member Functions inherited from JSC::JSCell
template<typename CellType >
static SubspacesubspaceFor (VM &)
 
static JSCellseenMultipleCalleeObjects ()
 
static JS_EXPORT_PRIVATE CallType getCallData (JSCell *, CallData &)
 
static JS_EXPORT_PRIVATE ConstructType getConstructData (JSCell *, ConstructData &)
 
static JS_EXPORT_PRIVATE void dumpToStream (const JSCell *, PrintStream &)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void visitOutputConstraints (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static bool canUseFastGetOwnProperty (const Structure &)
 
static ptrdiff_t structureIDOffset ()
 
static ptrdiff_t typeInfoFlagsOffset ()
 
static ptrdiff_t typeInfoTypeOffset ()
 
static ptrdiff_t indexingTypeAndMiscOffset ()
 
static ptrdiff_t cellStateOffset ()
 
template<typename CellType >
static SubspacesubspaceFor (VM &)
 
static JSCellseenMultipleCalleeObjects ()
 
static JS_EXPORT_PRIVATE CallType getCallData (JSCell *, CallData &)
 
static JS_EXPORT_PRIVATE ConstructType getConstructData (JSCell *, ConstructData &)
 
static JS_EXPORT_PRIVATE void dumpToStream (const JSCell *, PrintStream &)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void visitOutputConstraints (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static bool canUseFastGetOwnProperty (const Structure &)
 
static ptrdiff_t structureIDOffset ()
 
static ptrdiff_t typeInfoFlagsOffset ()
 
static ptrdiff_t typeInfoTypeOffset ()
 
static ptrdiff_t indexingTypeAndMiscOffset ()
 
static ptrdiff_t cellStateOffset ()
 
- Static Public Attributes inherited from JSC::JSDestructibleObject
static const bool needsDestruction = true
 
- Static Public Attributes inherited from JSC::JSCell
static const unsigned StructureFlags = 0
 
static const bool needsDestruction = false
 
static const TypedArrayType TypedArrayStorageType = NotTypedArray
 

Member Typedef Documentation

◆ Base [1/2]

◆ Base [2/2]

◆ ExportEntries [1/2]

typedef HashMap<RefPtr<UniquedStringImpl>, ExportEntry, IdentifierRepHash, HashTraits<RefPtr<UniquedStringImpl> > > JSC::AbstractModuleRecord::ExportEntries

◆ ExportEntries [2/2]

typedef HashMap<RefPtr<UniquedStringImpl>, ExportEntry, IdentifierRepHash, HashTraits<RefPtr<UniquedStringImpl> > > JSC::AbstractModuleRecord::ExportEntries

◆ ImportEntries [1/2]

typedef HashMap<RefPtr<UniquedStringImpl>, ImportEntry, IdentifierRepHash, HashTraits<RefPtr<UniquedStringImpl> > > JSC::AbstractModuleRecord::ImportEntries

◆ ImportEntries [2/2]

typedef HashMap<RefPtr<UniquedStringImpl>, ImportEntry, IdentifierRepHash, HashTraits<RefPtr<UniquedStringImpl> > > JSC::AbstractModuleRecord::ImportEntries

◆ OrderedIdentifierSet [1/2]

◆ OrderedIdentifierSet [2/2]

Constructor & Destructor Documentation

◆ AbstractModuleRecord() [1/2]

JSC::AbstractModuleRecord::AbstractModuleRecord ( VM vm,
Structure structure,
const Identifier moduleKey 
)
protected

◆ AbstractModuleRecord() [2/2]

JSC::AbstractModuleRecord::AbstractModuleRecord ( VM ,
Structure ,
const Identifier  
)
protected

Member Function Documentation

◆ addExportEntry() [1/2]

void JSC::AbstractModuleRecord::addExportEntry ( const ExportEntry entry)

◆ addExportEntry() [2/2]

void JSC::AbstractModuleRecord::addExportEntry ( const ExportEntry )

◆ addImportEntry() [1/2]

void JSC::AbstractModuleRecord::addImportEntry ( const ImportEntry entry)

◆ addImportEntry() [2/2]

void JSC::AbstractModuleRecord::addImportEntry ( const ImportEntry )

◆ addStarExportEntry() [1/2]

void JSC::AbstractModuleRecord::addStarExportEntry ( const Identifier )

◆ addStarExportEntry() [2/2]

void JSC::AbstractModuleRecord::addStarExportEntry ( const Identifier moduleName)

◆ appendRequestedModule() [1/2]

void JSC::AbstractModuleRecord::appendRequestedModule ( const Identifier moduleName)

◆ appendRequestedModule() [2/2]

void JSC::AbstractModuleRecord::appendRequestedModule ( const Identifier )

◆ destroy() [1/2]

void JSC::AbstractModuleRecord::destroy ( JSCell cell)
staticprotected

◆ destroy() [2/2]

static void JSC::AbstractModuleRecord::destroy ( JSCell )
staticprotected

◆ dump() [1/2]

void JSC::AbstractModuleRecord::dump ( )

◆ dump() [2/2]

void JSC::AbstractModuleRecord::dump ( )

◆ exportEntries() [1/2]

const ExportEntries& JSC::AbstractModuleRecord::exportEntries ( ) const
inline

◆ exportEntries() [2/2]

const ExportEntries& JSC::AbstractModuleRecord::exportEntries ( ) const
inline

◆ finishCreation() [1/2]

void JSC::AbstractModuleRecord::finishCreation ( ExecState exec,
VM vm 
)
protected

◆ finishCreation() [2/2]

void JSC::AbstractModuleRecord::finishCreation ( ExecState ,
VM  
)
protected

◆ getModuleNamespace() [1/2]

JSModuleNamespaceObject * JSC::AbstractModuleRecord::getModuleNamespace ( ExecState exec)

◆ getModuleNamespace() [2/2]

JSModuleNamespaceObject* JSC::AbstractModuleRecord::getModuleNamespace ( ExecState )

◆ hostResolveImportedModule() [1/2]

AbstractModuleRecord* JSC::AbstractModuleRecord::hostResolveImportedModule ( ExecState ,
const Identifier moduleName 
)

◆ hostResolveImportedModule() [2/2]

AbstractModuleRecord * JSC::AbstractModuleRecord::hostResolveImportedModule ( ExecState exec,
const Identifier moduleName 
)

◆ importEntries() [1/2]

const ImportEntries& JSC::AbstractModuleRecord::importEntries ( ) const
inline

◆ importEntries() [2/2]

const ImportEntries& JSC::AbstractModuleRecord::importEntries ( ) const
inline

◆ moduleEnvironment() [1/2]

JSModuleEnvironment* JSC::AbstractModuleRecord::moduleEnvironment ( )
inline

◆ moduleEnvironment() [2/2]

JSModuleEnvironment* JSC::AbstractModuleRecord::moduleEnvironment ( )
inline

◆ moduleKey() [1/2]

const Identifier& JSC::AbstractModuleRecord::moduleKey ( ) const
inline

◆ moduleKey() [2/2]

const Identifier& JSC::AbstractModuleRecord::moduleKey ( ) const
inline

◆ requestedModules() [1/2]

const OrderedIdentifierSet& JSC::AbstractModuleRecord::requestedModules ( ) const
inline

◆ requestedModules() [2/2]

const OrderedIdentifierSet& JSC::AbstractModuleRecord::requestedModules ( ) const
inline

◆ resolveExport() [1/2]

Resolution JSC::AbstractModuleRecord::resolveExport ( ExecState ,
const Identifier exportName 
)

◆ resolveExport() [2/2]

auto JSC::AbstractModuleRecord::resolveExport ( ExecState exec,
const Identifier exportName 
)

◆ resolveImport() [1/2]

auto JSC::AbstractModuleRecord::resolveImport ( ExecState exec,
const Identifier localName 
)

◆ resolveImport() [2/2]

Resolution JSC::AbstractModuleRecord::resolveImport ( ExecState ,
const Identifier localName 
)

◆ starExportEntries() [1/2]

const OrderedIdentifierSet& JSC::AbstractModuleRecord::starExportEntries ( ) const
inline

◆ starExportEntries() [2/2]

const OrderedIdentifierSet& JSC::AbstractModuleRecord::starExportEntries ( ) const
inline

◆ tryGetExportEntry() [1/2]

auto JSC::AbstractModuleRecord::tryGetExportEntry ( UniquedStringImpl *  exportName)

◆ tryGetExportEntry() [2/2]

std::optional<ExportEntry> JSC::AbstractModuleRecord::tryGetExportEntry ( UniquedStringImpl *  exportName)

◆ tryGetImportEntry() [1/2]

auto JSC::AbstractModuleRecord::tryGetImportEntry ( UniquedStringImpl *  localName)

◆ tryGetImportEntry() [2/2]

std::optional<ImportEntry> JSC::AbstractModuleRecord::tryGetImportEntry ( UniquedStringImpl *  localName)

◆ visitChildren() [1/2]

void JSC::AbstractModuleRecord::visitChildren ( JSCell cell,
SlotVisitor visitor 
)
staticprotected

◆ visitChildren() [2/2]

static void JSC::AbstractModuleRecord::visitChildren ( JSCell ,
SlotVisitor  
)
staticprotected

Friends And Related Function Documentation

◆ LLIntOffsetsExtractor

Member Data Documentation

◆ DECLARE_EXPORT_INFO

JSC::AbstractModuleRecord::DECLARE_EXPORT_INFO

◆ m_moduleEnvironment

WriteBarrier< JSModuleEnvironment > JSC::AbstractModuleRecord::m_moduleEnvironment
protected

The documentation for this class was generated from the following files: