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
JSObject Class Reference

#include <objects.h>

Inheritance diagram for JSObject:
Collaboration diagram for JSObject:

Data Structures

class  BodyDescriptor
 

Public Types

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

 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)
 

Static Public Member Functions

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 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
 

Friends

class DictionaryElementsAccessor
 
class JSReceiver
 
class Object
 

Additional Inherited Members

- 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 2158 of file objects.h.

Member Enumeration Documentation

Enumerator
kNoHints 
kObjectIsShallowArray 

Definition at line 2654 of file objects.h.

Enumerator
kAllowSmiElements 
kForceSmiElements 
kDontAllowSmiElements 

Definition at line 2502 of file objects.h.

Member Function Documentation

static JSObject* cast ( Object obj)
inlinestatic
Handle< JSObject > Copy ( Handle< JSObject object)
static
DECL_ACCESSORS ( properties  ,
FixedArray   
)
Handle< JSObject > DeepCopy ( Handle< JSObject object,
AllocationSiteUsageContext site_context,
DeepCopyHints  hints = kNoHints 
)
static
void DeleteHiddenProperty ( Handle< JSObject object,
Handle< Name key 
)
static
SeededNumberDictionary * element_dictionary ( )
inline
void EnsureCanContainElements ( Handle< JSObject object,
Arguments *  arguments,
uint32_t  first_arg,
uint32_t  arg_count,
EnsureElementsMode  mode 
)
static

Definition at line 11796 of file objects.cc.

Handle< FixedArray > EnsureWritableFastElements ( Handle< JSObject object)
static

Definition at line 384 of file objects.cc.

References CALL_HEAP_FUNCTION.

Handle< Map > ExpectedTransitionTarget ( Handle< Map map)
inlinestatic
MaybeObject * FastPropertyAt ( Representation  representation,
int  index 
)
inline
void FastPropertyAtPut ( int  index,
Object value 
)
inline
void GeneralizeFieldRepresentation ( Handle< JSObject object,
int  modify_index,
Representation  new_representation,
StoreMode  store_mode 
)
static
ElementsAccessor * GetElementsAccessor ( )
inline
MaybeObject * GetElementsTransitionMap ( Isolate isolate,
ElementsKind  elements_kind 
)
inline
Handle< Object > GetElementWithInterceptor ( Handle< JSObject object,
Handle< Object receiver,
uint32_t  index 
)
static
int GetEnumElementKeys ( FixedArray storage)

Definition at line 13597 of file objects.cc.

References DONT_ENUM.

InterceptorInfo * GetIndexedInterceptor ( )

Definition at line 13158 of file objects.cc.

References ASSERT, JSFunction::cast(), InterceptorInfo::cast(), and HeapObject::map().

int GetInObjectPropertyOffset ( int  index)
inline
Object * GetInternalField ( int  index)
inline
int GetInternalFieldOffset ( int  index)
inline
AccessorPair * GetLocalElementAccessorPair ( uint32_t  index)
AccessorPair * GetLocalPropertyAccessorPair ( Name name)
MaybeObject * GetLocalPropertyPostInterceptor ( Object receiver,
Name name,
PropertyAttributes attributes 
)
InterceptorInfo * GetNamedInterceptor ( )

Definition at line 13148 of file objects.cc.

References ASSERT, JSFunction::cast(), InterceptorInfo::cast(), and HeapObject::map().

Object * GetNormalizedProperty ( const LookupResult *  result)
PropertyAttributes GetPropertyAttributePostInterceptor ( 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 GetPropertyAttributeWithInterceptor ( Handle< JSObject object,
Handle< JSObject receiver,
Handle< Name name,
bool  continue_search 
)
static
Handle< Object > GetPropertyPostInterceptor ( Handle< JSObject object,
Handle< Object receiver,
Handle< Name name,
PropertyAttributes attributes 
)
static
Handle< Object > GetPropertyWithInterceptor ( Handle< JSObject object,
Handle< Object receiver,
Handle< Name name,
PropertyAttributes attributes 
)
static
bool HasDictionaryArgumentsElements ( )
bool HasDictionaryElements ( )
inline
bool HasExternalArrayElements ( )
inline

Definition at line 6072 of file objects-inl.h.

References ASSERT, and v8::internal::NULL.

Referenced by JSArray::AllowsSetElementsLength().

bool HasExternalFloat32Elements ( )
inline
bool HasExternalFloat64Elements ( )
inline
bool HasExternalInt16Elements ( )
inline
bool HasExternalInt32Elements ( )
inline
bool HasExternalInt8Elements ( )
inline
bool HasExternalUint16Elements ( )
inline
bool HasExternalUint32Elements ( )
inline
bool HasExternalUint8ClampedElements ( )
inline
bool HasExternalUint8Elements ( )
inline
bool HasFastArgumentsElements ( )
bool HasFastDoubleElements ( )
inline
bool HasFastElements ( )
inline
bool HasFastHoleyElements ( )
inline
bool HasFastObjectElements ( )
inline
bool HasFastSmiElements ( )
inline
bool HasFastSmiOrObjectElements ( )
inline
bool HasFixedArrayElements ( )
inline
bool HasFixedFloat32Elements ( )
inline
bool HasFixedFloat64Elements ( )
inline
bool HasFixedInt16Elements ( )
inline
bool HasFixedInt32Elements ( )
inline
bool HasFixedInt8Elements ( )
inline
bool HasFixedTypedArrayElements ( )
inline

Definition at line 6093 of file objects-inl.h.

References ASSERT, and v8::internal::NULL.

bool HasFixedUint16Elements ( )
inline
bool HasFixedUint32Elements ( )
inline
bool HasFixedUint8ClampedElements ( )
inline
bool HasFixedUint8Elements ( )
inline
bool HasHiddenProperties ( Handle< JSObject object)
static

Definition at line 4925 of file objects.cc.

References ABSENT, and JSObject::GetPropertyAttributePostInterceptor().

Referenced by v8::internal::RUNTIME_FUNCTION().

bool HasIndexedInterceptor ( )
inline
bool HasNamedInterceptor ( )
inline
bool HasRealElementProperty ( Handle< JSObject object,
uint32_t  index 
)
static
bool HasRealNamedCallbackProperty ( Handle< JSObject object,
Handle< Name key 
)
static
bool HasRealNamedProperty ( Handle< JSObject object,
Handle< Name key 
)
static
bool HasSloppyArgumentsElements ( )
inline
void InitializeBody ( Map map,
Object pre_allocated_value,
Object filler_value 
)
inline
Object * InObjectPropertyAt ( int  index)
inline

Definition at line 1996 of file objects-inl.h.

References JSObject::GetInObjectPropertyOffset(), and READ_FIELD.

void LookupCallbackProperty ( Name name,
LookupResult *  result 
)
void LookupRealNamedProperty ( Name name,
LookupResult *  result 
)
void LookupRealNamedPropertyInPrototypes ( Name name,
LookupResult *  result 
)
int NumberOfEnumElements ( )
int NumberOfLocalElements ( PropertyAttributes  filter)

Definition at line 13452 of file objects.cc.

References v8::internal::NULL.

void OptimizeAsPrototype ( Handle< JSObject object)
static
Handle< Object > PrepareSlowElementsForSort ( Handle< JSObject object,
uint32_t  limit 
)
static

Definition at line 14232 of file objects.cc.

References CALL_HEAP_FUNCTION, and v8::internal::Object.

Referenced by JSObject::PrepareElementsForSort().

void PrintElementsTransition ( FILE *  file,
Handle< JSObject object,
ElementsKind  from_kind,
Handle< FixedArrayBase from_elements,
ElementsKind  to_kind,
Handle< FixedArrayBase to_elements 
)
static
MUST_USE_RESULT MaybeObject* SetFastDoubleElementsCapacityAndLength ( int  capacity,
int  length 
)
void SetIdentityHash ( Handle< JSObject object,
Handle< Smi hash 
)
static

Definition at line 4781 of file objects.cc.

References Isolate::factory(), and JSObject::SetHiddenProperty().

Referenced by JSProxy::Fix(), and TEST().

void SetInternalField ( int  index,
Object value 
)
inline
void SetInternalField ( int  index,
Smi value 
)
inline
void SetNormalizedProperty ( Handle< JSObject object,
const LookupResult *  result,
Handle< Object value 
)
static
void SetObserved ( Handle< JSObject object)
static
Handle< Object > SetOwnElement ( Handle< JSObject object,
uint32_t  index,
Handle< Object value,
StrictMode  strict_mode 
)
static

Definition at line 12401 of file objects.cc.

References ASSERT, NONE, and JSObject::SetElement().

Handle< Object > SetPropertyWithInterceptor ( Handle< JSObject object,
Handle< Name name,
Handle< Object value,
PropertyAttributes  attributes,
StrictMode  strict_mode 
)
static
bool ShouldConvertToFastDoubleElements ( bool *  has_smi_only_elements)
void TransformToFastProperties ( Handle< JSObject object,
int  unused_property_fields 
)
static

Definition at line 4663 of file objects.cc.

References ASSERT, and CALL_HEAP_FUNCTION_VOID.

Referenced by JSObject::OptimizeAsPrototype(), and v8::internal::RUNTIME_FUNCTION().

Handle< Object > TryMigrateInstance ( Handle< JSObject instance)
static
void ValidateElements ( )
inline
bool WouldConvertToSlowElements ( Handle< Object key)

Definition at line 13008 of file objects.cc.

References FixedArrayBase::cast(), and Value::ToArrayIndex().

Friends And Related Function Documentation

friend class DictionaryElementsAccessor
friend

Definition at line 2773 of file objects.h.

friend class JSReceiver
friend

Definition at line 2774 of file objects.h.

friend class Object
friend

Definition at line 2775 of file objects.h.

Referenced by JSObject::GetPropertyWithCallback().

Field Documentation

const int kFastPropertiesSoftLimit = 12
static

Definition at line 2746 of file objects.h.

Referenced by JSObject::TooManyFastProperties().

const int kFieldsAdded = 3
static
const int kInitialMaxFastElementArray = 100000
static
const uint32_t kMaxElementCount = 0xffffffffu
static
const int kMaxFastProperties = 64
static

Definition at line 2747 of file objects.h.

Referenced by JSObject::TooManyFastProperties().

const uint32_t kMaxGap = 1024
static

Definition at line 2732 of file objects.h.

const int kMaxInstanceSize = 255 * kPointerSize
static

Definition at line 2748 of file objects.h.

Referenced by SharedFunctionInfo::CalculateInstanceSize(), and Factory::CopyMap().

const int kMaxUncheckedFastElementsLength = 5000
static

Definition at line 2736 of file objects.h.

const int kMaxUncheckedOldFastElementsLength = 500
static

Definition at line 2740 of file objects.h.


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