v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JSMap Class Reference

#include <objects.h>

Inheritance diagram for JSMap:
Collaboration diagram for JSMap:

Static Public Member Functions

static JSMapcast (Object *obj)
 
- Static Public Member Functions inherited from JSObject
static Handle< FixedArrayEnsureWritableFastElements (Handle< JSObject > object)
 
static Handle< ObjectPrepareElementsForSort (Handle< JSObject > object, uint32_t limit)
 
static Handle< ObjectPrepareSlowElementsForSort (Handle< JSObject > object, uint32_t limit)
 
static Handle< ObjectGetPropertyWithCallback (Handle< JSObject > object, Handle< Object > receiver, Handle< Object > structure, Handle< Name > name)
 
static Handle< ObjectSetPropertyWithCallback (Handle< JSObject > object, Handle< Object > structure, Handle< Name > name, Handle< Object > value, Handle< JSObject > holder, StrictMode strict_mode)
 
static Handle< ObjectSetPropertyWithInterceptor (Handle< JSObject > object, Handle< Name > name, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode)
 
static Handle< ObjectSetPropertyForResult (Handle< JSObject > object, LookupResult *result, Handle< Name > name, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode, StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED)
 
static Handle< ObjectSetLocalPropertyIgnoreAttributes (Handle< JSObject > object, Handle< Name > key, Handle< Object > value, PropertyAttributes attributes, ValueType value_type=OPTIMAL_REPRESENTATION, StoreMode mode=ALLOW_AS_CONSTANT, ExtensibilityCheck extensibility_check=PERFORM_EXTENSIBILITY_CHECK)
 
static Handle< StringExpectedTransitionKey (Handle< Map > map)
 
static Handle< MapExpectedTransitionTarget (Handle< Map > map)
 
static Handle< MapFindTransitionToField (Handle< Map > map, Handle< Name > key)
 
static void AllocateStorageForMap (Handle< JSObject > object, Handle< Map > map)
 
static void MigrateInstance (Handle< JSObject > instance)
 
static Handle< ObjectTryMigrateInstance (Handle< JSObject > instance)
 
static void SetNormalizedProperty (Handle< JSObject > object, const LookupResult *result, Handle< Object > value)
 
static void SetNormalizedProperty (Handle< JSObject > object, Handle< Name > key, Handle< Object > value, PropertyDetails details)
 
static void OptimizeAsPrototype (Handle< JSObject > object)
 
static PropertyAttributes GetPropertyAttributePostInterceptor (Handle< JSObject > object, Handle< JSObject > receiver, Handle< Name > name, bool continue_search)
 
static PropertyAttributes GetPropertyAttributeWithInterceptor (Handle< JSObject > object, Handle< JSObject > receiver, Handle< Name > name, bool continue_search)
 
static PropertyAttributes GetPropertyAttributeWithFailedAccessCheck (Handle< JSObject > object, LookupResult *result, Handle< Name > name, bool continue_search)
 
static PropertyAttributes GetElementAttributeWithReceiver (Handle< JSObject > object, Handle< JSReceiver > receiver, uint32_t index, bool continue_search)
 
static Handle< ObjectGetAccessor (Handle< JSObject > object, Handle< Name > name, AccessorComponent component)
 
static void DefineAccessor (Handle< JSObject > object, Handle< Name > name, Handle< Object > getter, Handle< Object > setter, PropertyAttributes attributes, v8::AccessControl access_control=v8::DEFAULT)
 
static Handle< ObjectSetAccessor (Handle< JSObject > object, Handle< AccessorInfo > info)
 
static Handle< ObjectGetPropertyWithInterceptor (Handle< JSObject > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes)
 
static Handle< ObjectGetPropertyPostInterceptor (Handle< JSObject > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes)
 
static Handle< ObjectSetHiddenProperty (Handle< JSObject > object, Handle< Name > key, Handle< Object > value)
 
static void DeleteHiddenProperty (Handle< JSObject > object, Handle< Name > key)
 
static bool HasHiddenProperties (Handle< JSObject > object)
 
static void SetIdentityHash (Handle< JSObject > object, Handle< Smi > hash)
 
static void EnsureCanContainHeapObjectElements (Handle< JSObject > obj)
 
static void EnsureCanContainElements (Handle< JSObject > object, Object **elements, uint32_t count, EnsureElementsMode mode)
 
static void EnsureCanContainElements (Handle< JSObject > object, Handle< FixedArrayBase > elements, uint32_t length, EnsureElementsMode mode)
 
static void EnsureCanContainElements (Handle< JSObject > object, Arguments *arguments, uint32_t first_arg, uint32_t arg_count, EnsureElementsMode mode)
 
static int NewElementsCapacity (int old_capacity)
 
static Handle< ObjectSetFastElement (Handle< JSObject > object, uint32_t index, Handle< Object > value, StrictMode strict_mode, bool check_prototype)
 
static Handle< ObjectSetOwnElement (Handle< JSObject > object, uint32_t index, Handle< Object > value, StrictMode strict_mode)
 
static Handle< ObjectSetElement (Handle< JSObject > object, uint32_t index, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode, bool check_prototype=true, SetPropertyMode set_mode=SET_PROPERTY)
 
static Handle< ObjectGetElementWithInterceptor (Handle< JSObject > object, Handle< Object > receiver, uint32_t index)
 
static Handle< FixedArraySetFastElementsCapacityAndLength (Handle< JSObject > object, int capacity, int length, SetFastElementsCapacitySmiMode smi_mode)
 
static void SetFastDoubleElementsCapacityAndLength (Handle< JSObject > object, int capacity, int length)
 
static bool HasRealNamedProperty (Handle< JSObject > object, Handle< Name > key)
 
static bool HasRealElementProperty (Handle< JSObject > object, uint32_t index)
 
static bool HasRealNamedCallbackProperty (Handle< JSObject > object, Handle< Name > key)
 
static Handle< MapGetElementsTransitionMap (Handle< JSObject > object, ElementsKind to_kind)
 
static void TransitionElementsKind (Handle< JSObject > object, ElementsKind to_kind)
 
static void MigrateToMap (Handle< JSObject > object, Handle< Map > new_map)
 
static void GeneralizeFieldRepresentation (Handle< JSObject > object, int modify_index, Representation new_representation, StoreMode store_mode)
 
static void NormalizeProperties (Handle< JSObject > object, PropertyNormalizationMode mode, int expected_additional_properties)
 
static Handle
< SeededNumberDictionary
NormalizeElements (Handle< JSObject > object)
 
static void TransformToFastProperties (Handle< JSObject > object, int unused_property_fields)
 
static Handle< ObjectSetPrototype (Handle< JSObject > object, Handle< Object > value, bool skip_hidden_prototypes=false)
 
static Handle< ObjectPreventExtensions (Handle< JSObject > object)
 
static Handle< ObjectFreeze (Handle< JSObject > object)
 
static void SetObserved (Handle< JSObject > object)
 
static Handle< JSObjectCopy (Handle< JSObject > object)
 
static Handle< JSObjectDeepCopy (Handle< JSObject > object, AllocationSiteUsageContext *site_context, DeepCopyHints hints=kNoHints)
 
static Handle< JSObjectDeepWalk (Handle< JSObject > object, AllocationSiteCreationContext *site_context)
 
static JSObjectcast (Object *obj)
 
static void PrintElementsTransition (FILE *file, Handle< JSObject > object, ElementsKind from_kind, Handle< FixedArrayBase > from_elements, ElementsKind to_kind, Handle< FixedArrayBase > to_elements)
 
static void EnqueueChangeRecord (Handle< JSObject > object, const char *type, Handle< Name > name, Handle< Object > old_value)
 
- Static Public Member Functions inherited from JSReceiver
static JSReceivercast (Object *obj)
 
static Handle< ObjectSetProperty (Handle< JSReceiver > object, Handle< Name > key, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode, StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED)
 
static Handle< ObjectSetElement (Handle< JSReceiver > object, uint32_t index, Handle< Object > value, PropertyAttributes attributes, StrictMode strict_mode)
 
static bool HasProperty (Handle< JSReceiver > object, Handle< Name > name)
 
static bool HasLocalProperty (Handle< JSReceiver >, Handle< Name > name)
 
static bool HasElement (Handle< JSReceiver > object, uint32_t index)
 
static bool HasLocalElement (Handle< JSReceiver > object, uint32_t index)
 
static Handle< ObjectDeleteProperty (Handle< JSReceiver > object, Handle< Name > name, DeleteMode mode=NORMAL_DELETION)
 
static Handle< ObjectDeleteElement (Handle< JSReceiver > object, uint32_t index, DeleteMode mode=NORMAL_DELETION)
 
static PropertyAttributes GetPropertyAttribute (Handle< JSReceiver > object, Handle< Name > name)
 
static PropertyAttributes GetPropertyAttributeWithReceiver (Handle< JSReceiver > object, Handle< JSReceiver > receiver, Handle< Name > name)
 
static PropertyAttributes GetLocalPropertyAttribute (Handle< JSReceiver > object, Handle< Name > name)
 
static PropertyAttributes GetElementAttribute (Handle< JSReceiver > object, uint32_t index)
 
static PropertyAttributes GetLocalElementAttribute (Handle< JSReceiver > object, uint32_t index)
 
static Handle< ObjectGetOrCreateIdentityHash (Handle< JSReceiver > object)
 
- Static Public Member Functions inherited from HeapObject
static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static void UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code)
 
static HeapObjectcast (Object *obj)
 
- Static Public Member Functions inherited from Object
static MUST_USE_RESULT Handle
< Object
ToSmi (Isolate *isolate, Handle< Object > object)
 
static Handle< ObjectGetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Name > key)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static MUST_USE_RESULT
MaybeObject * 
GetPropertyOrFail (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static Handle< ObjectGetElement (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index)
 
static Handle< ObjectGetOrCreateHash (Handle< Object > object, Isolate *isolate)
 
static Objectcast (Object *value)
 

Static Public Attributes

static const int kTableOffset = JSObject::kHeaderSize
 
static const int kSize = kTableOffset + kPointerSize
 
- Static Public Attributes inherited from JSObject
static const uint32_t kMaxElementCount = 0xffffffffu
 
static const uint32_t kMaxGap = 1024
 
static const int kMaxUncheckedFastElementsLength = 5000
 
static const int kMaxUncheckedOldFastElementsLength = 500
 
static const int kInitialMaxFastElementArray = 100000
 
static const int kFastPropertiesSoftLimit = 12
 
static const int kMaxFastProperties = 64
 
static const int kMaxInstanceSize = 255 * kPointerSize
 
static const int kFieldsAdded = 3
 
static const int kPropertiesOffset = HeapObject::kHeaderSize
 
static const int kElementsOffset = kPropertiesOffset + kPointerSize
 
static const int kHeaderSize = kElementsOffset + kPointerSize
 
- Static Public Attributes inherited from HeapObject
static const int kMapOffset = Object::kHeaderSize
 
static const int kHeaderSize = kMapOffset + kPointerSize
 
- Static Public Attributes inherited from Object
static const int kHeaderSize = 0
 

Additional Inherited Members

- Public Types inherited from JSObject
enum  SetFastElementsCapacitySmiMode { kAllowSmiElements, kForceSmiElements, kDontAllowSmiElements }
 
enum  DeepCopyHints { kNoHints = 0, kObjectIsShallowArray = 1 }
 
- Public Types inherited from JSReceiver
enum  DeleteMode { NORMAL_DELETION, STRICT_DELETION, FORCE_DELETION }
 
enum  StoreFromKeyed { MAY_BE_STORE_FROM_KEYED, CERTAINLY_NOT_STORE_FROM_KEYED }
 
enum  ExtensibilityCheck { PERFORM_EXTENSIBILITY_CHECK, OMIT_EXTENSIBILITY_CHECK }
 
- Public Types inherited from Object
enum  ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED }
 
- Public Member Functions inherited from JSObject
 DECL_ACCESSORS (properties, FixedArray) inline void initialize_properties()
 
bool HasFastProperties ()
 
NameDictionaryproperty_dictionary ()
 
void initialize_elements ()
 
MUST_USE_RESULT MaybeObject * ResetElements ()
 
ElementsKind GetElementsKind ()
 
ElementsAccessorGetElementsAccessor ()
 
bool HasFastSmiElements ()
 
bool HasFastObjectElements ()
 
bool HasFastSmiOrObjectElements ()
 
bool HasFastElements ()
 
bool HasFastDoubleElements ()
 
bool HasFastHoleyElements ()
 
bool HasSloppyArgumentsElements ()
 
bool HasDictionaryElements ()
 
bool HasExternalUint8ClampedElements ()
 
bool HasExternalArrayElements ()
 
bool HasExternalInt8Elements ()
 
bool HasExternalUint8Elements ()
 
bool HasExternalInt16Elements ()
 
bool HasExternalUint16Elements ()
 
bool HasExternalInt32Elements ()
 
bool HasExternalUint32Elements ()
 
bool HasExternalFloat32Elements ()
 
bool HasExternalFloat64Elements ()
 
bool HasFixedTypedArrayElements ()
 
bool HasFixedUint8ClampedElements ()
 
bool HasFixedArrayElements ()
 
bool HasFixedInt8Elements ()
 
bool HasFixedUint8Elements ()
 
bool HasFixedInt16Elements ()
 
bool HasFixedUint16Elements ()
 
bool HasFixedInt32Elements ()
 
bool HasFixedUint32Elements ()
 
bool HasFixedFloat32Elements ()
 
bool HasFixedFloat64Elements ()
 
bool HasFastArgumentsElements ()
 
bool HasDictionaryArgumentsElements ()
 
SeededNumberDictionaryelement_dictionary ()
 
void set_map_and_elements (Map *map, FixedArrayBase *value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
MUST_USE_RESULT MaybeObject * EnsureWritableFastElements ()
 
MUST_USE_RESULT MaybeObject * PrepareSlowElementsForSort (uint32_t limit)
 
ObjectGetNormalizedProperty (const LookupResult *result)
 
InterceptorInfoGetNamedInterceptor ()
 
InterceptorInfoGetIndexedInterceptor ()
 
MUST_USE_RESULT MaybeObject * GetLocalPropertyPostInterceptor (Object *receiver, Name *name, PropertyAttributes *attributes)
 
bool IsDirty ()
 
ObjectGetHiddenProperty (Name *key)
 
void ValidateElements ()
 
bool WouldConvertToSlowElements (Handle< Object > key)
 
bool ShouldConvertToSlowElements (int new_capacity)
 
bool ShouldConvertToFastElements ()
 
bool ShouldConvertToFastDoubleElements (bool *has_smi_only_elements)
 
AccessorPairGetLocalPropertyAccessorPair (Name *name)
 
AccessorPairGetLocalElementAccessorPair (uint32_t index)
 
MUST_USE_RESULT MaybeObject * SetFastDoubleElementsCapacityAndLength (int capacity, int length)
 
bool HasNamedInterceptor ()
 
bool HasIndexedInterceptor ()
 
int GetHeaderSize ()
 
int GetInternalFieldCount ()
 
int GetInternalFieldOffset (int index)
 
ObjectGetInternalField (int index)
 
void SetInternalField (int index, Object *value)
 
void SetInternalField (int index, Smi *value)
 
void LocalLookupRealNamedProperty (Name *name, LookupResult *result)
 
void LookupRealNamedProperty (Name *name, LookupResult *result)
 
void LookupRealNamedPropertyInPrototypes (Name *name, LookupResult *result)
 
void LookupCallbackProperty (Name *name, LookupResult *result)
 
int NumberOfLocalProperties (PropertyAttributes filter=NONE)
 
void GetLocalPropertyNames (FixedArray *storage, int index, PropertyAttributes filter=NONE)
 
int NumberOfLocalElements (PropertyAttributes filter)
 
int NumberOfEnumElements ()
 
int GetLocalElementKeys (FixedArray *storage, PropertyAttributes filter)
 
int GetEnumElementKeys (FixedArray *storage)
 
MUST_USE_RESULT MaybeObject * GetElementsTransitionMap (Isolate *isolate, ElementsKind elements_kind)
 
MUST_USE_RESULT MaybeObject * GetElementsTransitionMapSlow (ElementsKind elements_kind)
 
MUST_USE_RESULT MaybeObject * FastPropertyAt (Representation representation, int index)
 
ObjectRawFastPropertyAt (int index)
 
void FastPropertyAtPut (int index, Object *value)
 
int GetInObjectPropertyOffset (int index)
 
ObjectInObjectPropertyAt (int index)
 
ObjectInObjectPropertyAtPut (int index, Object *value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void InitializeBody (Map *map, Object *pre_allocated_value, Object *filler_value)
 
bool ReferencesObject (Object *obj)
 
void JSObjectShortPrint (StringStream *accumulator)
 
void PrintInstanceMigration (FILE *file, Map *original_map, Map *new_map)
 
ObjectSlowReverseLookup (Object *value)
 
bool TooManyFastProperties (StoreFromKeyed store_mode=MAY_BE_STORE_FROM_KEYED)
 
 STATIC_CHECK (kHeaderSize==Internals::kJSObjectHeaderSize)
 
- Public Member Functions inherited from JSReceiver
bool IsSimpleEnum ()
 
Stringclass_name ()
 
Stringconstructor_name ()
 
ObjectGetPrototype ()
 
ObjectGetConstructor ()
 
ObjectGetIdentityHash ()
 
void LocalLookup (Name *name, LookupResult *result, bool search_hidden_prototypes=false)
 
void Lookup (Name *name, LookupResult *result)
 
- Public Member Functions inherited from HeapObject
Mapmap ()
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
MapWord map_word ()
 
void set_map_word (MapWord map_word)
 
HeapGetHeap ()
 
IsolateGetIsolate ()
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
void HeapObjectShortPrint (StringStream *accumulator)
 
 STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from Object
bool IsObject ()
 
bool IsFixedArrayBase ()
 
bool IsExternal ()
 
bool IsAccessorInfo ()
 
bool IsStruct ()
 
 INLINE (bool IsSpecObject())
 
 INLINE (bool IsSpecFunction())
 
bool IsCallable ()
 
 INLINE (bool IsUndefined())
 
 INLINE (bool IsNull())
 
 INLINE (bool IsTheHole())
 
 INLINE (bool IsUninitialized())
 
 INLINE (bool IsTrue())
 
 INLINE (bool IsFalse())
 
bool IsArgumentsMarker ()
 
bool NonFailureIsHeapObject ()
 
bool IsFiller ()
 
double Number ()
 
bool IsNaN ()
 
bool ToInt32 (int32_t *value)
 
bool ToUint32 (uint32_t *value)
 
Representation OptimalRepresentation (ValueType type=OPTIMAL_REPRESENTATION)
 
bool FitsRepresentation (Representation representation)
 
MaybeObject * AllocateNewStorageFor (Heap *heap, Representation representation)
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
MUST_USE_RESULT MaybeObject * ToObject (Isolate *isolate)
 
bool BooleanValue ()
 
MUST_USE_RESULT MaybeObject * ToObject (Context *native_context)
 
MUST_USE_RESULT MaybeObject * ToSmi ()
 
void Lookup (Name *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithReceiver (Object *receiver, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetProperty (Object *receiver, LookupResult *result, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter)
 
ObjectGetPrototype (Isolate *isolate)
 
MapGetMarkerMap (Isolate *isolate)
 
ObjectGetHash ()
 
bool SameValue (Object *other)
 
bool ToArrayIndex (uint32_t *index)
 
bool IsStringObjectWithCharacterAt (uint32_t index)
 
void VerifyApiCallResultType ()
 
void ShortPrint (FILE *out=stdout)
 
void ShortPrint (StringStream *accumulator)
 
- Protected Member Functions inherited from JSReceiver
SmiGenerateIdentityHash ()
 
- Protected Member Functions inherited from HeapObject
void IteratePointers (ObjectVisitor *v, int start, int end)
 
void IteratePointer (ObjectVisitor *v, int offset)
 
void IterateNextCodeLink (ObjectVisitor *v, int offset)
 
- Static Protected Member Functions inherited from JSReceiver
static Handle< ObjectSetPropertyWithDefinedSetter (Handle< JSReceiver > object, Handle< JSReceiver > setter, Handle< Object > value)
 

Detailed Description

Definition at line 9776 of file objects.h.

Member Function Documentation

static JSMap* cast ( Object obj)
inlinestatic

Field Documentation

const int kSize = kTableOffset + kPointerSize
static

Definition at line 9789 of file objects.h.

Referenced by JSObject::GetHeaderSize(), and StaticVisitorBase::GetVisitorId().

const int kTableOffset = JSObject::kHeaderSize
static

Definition at line 9788 of file objects.h.


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