v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
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 } |
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 | |
Smi * | GenerateIdentityHash () |
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< Object > | SetPropertyWithDefinedSetter (Handle< JSReceiver > object, Handle< JSReceiver > setter, Handle< Object > value) |
enum DeepCopyHints |
Definition at line 3831 of file objects.cc.
References ASSERT, v8::internal::IsDictionaryElementsKind(), v8::internal::IsMoreGeneralElementsKindTransition(), JSObject::MigrateToMap(), JSObject::NormalizeElements(), and JSObject::TransitionElementsKind().
Referenced by Heap::AllocateArgumentsObject(), Heap::AllocateJSObjectFromMap(), HGraphBuilder::BuildCheckPrototypeMaps(), v8::internal::BUILTIN(), Array::CloneElementAt(), Map::constructor_name(), Heap::CopyJSObject(), Heap::CreateApiObjects(), Map::CurrentMapForDeprecated(), Map::DictionaryElementsInPrototypeChainOnly(), Isolate::DoThrow(), Object::FindInstanceInPrototypeChain(), JSObject::GetAccessor(), IC::GetCodeCacheHolder(), JSObject::GetHiddenProperty(), JSReceiver::GetIdentityHash(), v8::internal::GetKeysInFixedArrayFor(), JSObject::GetLocalElementAccessorPair(), Object::GetProperty(), Object::HasSpecificClassOf(), HeapObject::HeapObjectShortPrint(), BASE_EMBEDDED< Visitor >::holder(), Execution::InstantiateObject(), Value::IsNativeError(), JSReceiver::IsSimpleEnum(), JSReceiver::LocalLookup(), JSObject::LocalLookupRealNamedProperty(), JSReceiver::Lookup(), JSObject::LookupCallbackProperty(), JSObject::LookupRealNamedPropertyInPrototypes(), MarkCompactMarkingVisitor::ObjectStatsVisitBase(), StringStream::PrintMentionedObjectCache(), StringStream::PrintPrototype(), JSObject::ReferencesObject(), Heap::ReinitializeJSReceiver(), V8::RemoveMessageListeners(), MessageHandler::ReportMessage(), v8::internal::RUNTIME_FUNCTION(), JSReceiver::SetProperty(), JSObject::SetPropertyWithCallback(), JSObject::SetPrototype(), TryCatch::StackTrace(), KeyedStoreIC::Store(), JSObjectWalkVisitor< ContextObject >::StructureWalk(), Logger::SuspectReadEvent(), and TEST().
Definition at line 5636 of file objects.cc.
References CALL_HEAP_FUNCTION, Heap::CopyJSObject(), and Isolate::heap().
Referenced by Object::Clone(), Array::CloneElementAt(), Isolate::StackOverflow(), and TEST().
DECL_ACCESSORS | ( | properties | , |
FixedArray | |||
) |
|
static |
Definition at line 5861 of file objects.cc.
References ASSERT, and JSObjectWalkVisitor< ContextObject >::StructureWalk().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 5850 of file objects.cc.
References ASSERT, Handle< T >::is_null(), JSObject::kNoHints, and JSObjectWalkVisitor< ContextObject >::StructureWalk().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 6288 of file objects.cc.
References v8::ACCESS_SET, ASSERT, String::cast(), CHECK_NOT_EMPTY_HANDLE, JSObject::EnqueueChangeRecord(), Isolate::factory(), Object::GetElementNoExceptionThrown(), Object::GetProperty(), JSReceiver::HasLocalElement(), Isolate::heap(), Heap::hidden_string(), Isolate::MayNamedAccessWrapper(), v8::internal::NULL, Isolate::ReportFailedAccessCheckWrapper(), and String::TryFlatten().
Referenced by v8::internal::RUNTIME_FUNCTION(), and Object::SetAccessorProperty().
Definition at line 4903 of file objects.cc.
References ASSERT, ObjectHashTable::cast(), Isolate::factory(), and ObjectHashTable::Put().
Referenced by Object::DeleteHiddenValue(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 6148 of file objects-inl.h.
References ASSERT, SeededNumberDictionary::cast(), and JSObject::HasDictionaryElements().
Referenced by JSObject::GetAccessor().
|
static |
Definition at line 2184 of file objects.cc.
References ASSERT, Execution::Call(), JSGlobalObject::cast(), Isolate::factory(), v8::internal::handle(), Factory::InternalizeUtf8String(), Handle< T >::is_null(), and v8::internal::name.
Referenced by JSObject::DefineAccessor(), JSObject::PreventExtensions(), v8::internal::RUNTIME_FUNCTION(), JSArray::SetElementsLength(), JSObject::SetLocalPropertyIgnoreAttributes(), and JSObject::SetPropertyForResult().
|
inlinestatic |
Definition at line 1603 of file objects-inl.h.
References v8::internal::ALLOW_CONVERTED_DOUBLE_ELEMENTS, v8::internal::ALLOW_COPIED_DOUBLE_ELEMENTS, ASSERT, v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::GetHoleyElementsKind(), v8::internal::IsFastHoleyElementsKind(), v8::internal::IsFastSmiElementsKind(), and JSObject::TransitionElementsKind().
Referenced by v8::internal::ArrayConstructInitializeElements(), v8::internal::BUILTIN(), JSObject::EnsureCanContainElements(), and JSArray::SetContent().
|
inlinestatic |
Definition at line 1645 of file objects-inl.h.
References v8::internal::ALLOW_COPIED_DOUBLE_ELEMENTS, ASSERT, Handle< T >::cast(), v8::internal::DONT_ALLOW_DOUBLE_ELEMENTS, JSObject::EnsureCanContainElements(), v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_SMI_ELEMENTS, v8::internal::FAST_SMI_ELEMENTS, and JSObject::TransitionElementsKind().
|
static |
Definition at line 11796 of file objects.cc.
Definition at line 1590 of file objects-inl.h.
References v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::IsFastHoleyElementsKind(), v8::internal::IsFastObjectElementsKind(), and JSObject::TransitionElementsKind().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 384 of file objects.cc.
References CALL_HEAP_FUNCTION.
|
inline |
Definition at line 6124 of file objects-inl.h.
References ASSERT, FixedArray::cast(), Heap::CopyFixedArrayWithMap(), Isolate::counters(), HeapObject::GetIsolate(), JSObject::HasFastSmiOrObjectElements(), Isolate::heap(), and HeapObject::map().
Referenced by FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::DeleteCommon(), and FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::SetLengthWithoutNormalize().
Definition at line 1783 of file objects-inl.h.
References String::cast(), v8::internal::FIELD, TransitionArray::GetKey(), TransitionArray::GetTargetDetails(), TransitionArray::IsSimpleTransition(), TransitionArray::kSimpleTransitionIndex, v8::internal::name, and NONE.
Referenced by JSObject::ExpectedTransitionTarget().
Definition at line 1798 of file objects-inl.h.
References ASSERT, JSObject::ExpectedTransitionKey(), and TransitionArray::kSimpleTransitionIndex.
|
inline |
Definition at line 1954 of file objects-inl.h.
References Object::AllocateNewStorageFor(), HeapObject::GetHeap(), and JSObject::RawFastPropertyAt().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 1977 of file objects-inl.h.
References ASSERT, HeapObject::GetHeap(), Map::inobject_properties(), Map::instance_size(), v8::internal::kPointerSize, HeapObject::map(), WRITE_BARRIER, and WRITE_FIELD.
Definition at line 1805 of file objects-inl.h.
References v8::internal::FIELD, TransitionArray::GetTarget(), TransitionArray::GetTargetDetails(), TransitionArray::kNotFound, NONE, Handle< T >::null(), and TransitionArray::Search().
Definition at line 5498 of file objects.cc.
References v8::ACCESS_KEYS, ASSERT, Smi::cast(), v8::internal::CLEAR_INOBJECT_PROPERTIES, Map::Copy(), Map::CopyReplaceDescriptors(), DescriptorArray::CopyUpToAddAttributes(), v8::internal::DICTIONARY_ELEMENTS, Isolate::factory(), FROZEN, v8::internal::handle(), v8::internal::HandleVector(), Isolate::heap(), v8::internal::INSERT_TRANSITION, Handle< T >::is_null(), Isolate::MayNamedAccessWrapper(), JSObject::MigrateToMap(), Factory::NewSeededNumberDictionary(), Factory::NewTypeError(), JSObject::NormalizeProperties(), Isolate::ReportFailedAccessCheckWrapper(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, SeededNumberDictionary::set_requires_slow_elements(), Isolate::Throw(), and Smi::value().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 2468 of file objects.cc.
References Map::GeneralizeRepresentation(), v8::internal::handle(), and JSObject::MigrateToMap().
Referenced by JSObject::MigrateInstance().
|
static |
Definition at line 6565 of file objects.cc.
References v8::ACCESS_HAS, v8::internal::CALLBACKS, JSReceiver::cast(), JSObject::cast(), AccessorPair::cast(), Dictionary< Shape, Key >::DetailsAt(), JSObject::element_dictionary(), Isolate::factory(), HashTable< Shape, Key >::FindEntry(), JSReceiver::GetPrototype(), v8::internal::handle(), JSObject::HasDictionaryElements(), Value::IsNull(), HashTable< SeededNumberDictionaryShape, uint32_t >::kNotFound, JSReceiver::LocalLookup(), Isolate::MayNamedAccessWrapper(), Isolate::ReportFailedAccessCheckWrapper(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, and Dictionary< Shape, Key >::ValueAt().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 4398 of file objects.cc.
References ABSENT, v8::ACCESS_HAS, ASSERT, Isolate::bootstrapper(), Bootstrapper::IsActive(), Isolate::MayIndexedAccessWrapper(), and Isolate::ReportFailedAccessCheckWrapper().
Referenced by JSReceiver::GetElementAttribute(), JSReceiver::GetLocalElementAttribute(), JSReceiver::GetPropertyAttributeWithReceiver(), JSReceiver::HasElement(), and JSReceiver::HasLocalElement().
|
inline |
Definition at line 6027 of file objects-inl.h.
References ElementsAccessor::ForKind(), and JSObject::GetElementsKind().
Referenced by FixedArray::AddKeysFromJSArray(), and JSObject::ValidateElements().
|
inline |
Definition at line 5999 of file objects-inl.h.
References ASSERT, v8::internal::DICTIONARY_ELEMENTS, Map::elements_kind(), HeapObject::GetHeap(), v8::internal::IsFastDoubleElementsKind(), v8::internal::IsFastSmiOrObjectElementsKind(), JSObject::kElementsOffset, HeapObject::map(), READ_FIELD, and v8::internal::SLOPPY_ARGUMENTS_ELEMENTS.
Referenced by Heap::AllocateJSArrayStorage(), Heap::CopyJSObject(), DictionaryElementsAccessor::DeleteCommon(), JSObject::GetElementsAccessor(), JSObject::HasDictionaryElements(), JSObject::HasFastDoubleElements(), JSObject::HasFastElements(), JSObject::HasFastHoleyElements(), JSObject::HasFastObjectElements(), JSObject::HasFastSmiElements(), JSObject::HasFastSmiOrObjectElements(), JSObject::HasSloppyArgumentsElements(), and JSObject::ReferencesObject().
|
static |
Definition at line 3313 of file objects.cc.
References CALL_HEAP_FUNCTION.
Referenced by v8::NewTypedArray(), JSObject::NormalizeElements(), JSObject::PrepareElementsForSort(), JSObject::ResetElements(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetFastDoubleElementsCapacityAndLength(), JSObject::SetFastElementsCapacityAndLength(), and ArrayConcatVisitor::ToArray().
|
inline |
Definition at line 1679 of file objects-inl.h.
References FixedArray::cast(), Map::cast(), Isolate::context(), Map::elements_kind(), FixedArray::get(), JSObject::GetElementsTransitionMapSlow(), HeapObject::map(), and Context::native_context().
MaybeObject * GetElementsTransitionMapSlow | ( | ElementsKind | elements_kind | ) |
Definition at line 3322 of file objects.cc.
References Map::AsElementsKind(), Map::CopyAsElementsKind(), Map::elements_kind(), Map::is_shared(), v8::internal::IsFastElementsKind(), v8::internal::IsMoreGeneralElementsKindTransition(), v8::internal::IsTransitionableFastElementsKind(), v8::internal::IsTransitionElementsKind(), HeapObject::map(), and v8::internal::OMIT_TRANSITION.
Referenced by JSObject::GetElementsTransitionMap().
|
static |
Definition at line 12887 of file objects.cc.
References Isolate::factory(), ElementsAccessor::Get(), Object::GetElementWithReceiver(), LOG, Utils::OpenHandle(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, and RETURN_IF_EMPTY_HANDLE_VALUE.
Referenced by Object::GetElementWithReceiver().
int GetEnumElementKeys | ( | FixedArray * | storage | ) |
Definition at line 13597 of file objects.cc.
References DONT_ENUM.
|
inline |
Definition at line 1855 of file objects-inl.h.
References Map::instance_type(), v8::internal::JS_ARRAY_BUFFER_TYPE, v8::internal::JS_ARRAY_TYPE, v8::internal::JS_BUILTINS_OBJECT_TYPE, v8::internal::JS_CONTEXT_EXTENSION_OBJECT_TYPE, v8::internal::JS_DATA_VIEW_TYPE, v8::internal::JS_DATE_TYPE, v8::internal::JS_FUNCTION_TYPE, v8::internal::JS_GENERATOR_OBJECT_TYPE, v8::internal::JS_GLOBAL_OBJECT_TYPE, v8::internal::JS_GLOBAL_PROXY_TYPE, v8::internal::JS_MAP_TYPE, v8::internal::JS_MESSAGE_OBJECT_TYPE, v8::internal::JS_MODULE_TYPE, v8::internal::JS_OBJECT_TYPE, v8::internal::JS_REGEXP_TYPE, v8::internal::JS_SET_TYPE, v8::internal::JS_TYPED_ARRAY_TYPE, v8::internal::JS_VALUE_TYPE, v8::internal::JS_WEAK_MAP_TYPE, v8::internal::JS_WEAK_SET_TYPE, JSObject::kHeaderSize, JSGeneratorObject::kSize, JSModule::kSize, JSFunction::kSize, JSGlobalProxy::kSize, JSGlobalObject::kSize, JSBuiltinsObject::kSize, JSValue::kSize, JSDate::kSize, JSMessageObject::kSize, JSRegExp::kSize, JSSet::kSize, JSMap::kSize, JSWeakCollection::kSize, JSArrayBuffer::kSize, JSTypedArray::kSize, JSDataView::kSize, JSArray::kSize, and HeapObject::map().
Referenced by JSObject::GetInternalField(), JSObject::GetInternalFieldCount(), JSObject::GetInternalFieldOffset(), and JSObject::SetInternalField().
Definition at line 4831 of file objects.cc.
References ASSERT, JSObject::cast(), ObjectHashTable::cast(), HeapObject::GetHeap(), JSObject::GetHiddenProperty(), JSReceiver::GetPrototype(), and ObjectHashTable::Lookup().
Referenced by Isolate::DoThrow(), and JSObject::GetHiddenProperty().
InterceptorInfo * GetIndexedInterceptor | ( | ) |
Definition at line 13158 of file objects.cc.
References ASSERT, JSFunction::cast(), InterceptorInfo::cast(), and HeapObject::map().
|
inline |
Definition at line 1991 of file objects-inl.h.
References Map::GetInObjectPropertyOffset(), and HeapObject::map().
Referenced by JSObject::InObjectPropertyAt(), and JSObject::InObjectPropertyAtPut().
|
inline |
Definition at line 1924 of file objects-inl.h.
References ASSERT, JSObject::GetHeaderSize(), JSObject::GetInternalFieldCount(), v8::internal::kPointerSize, and READ_FIELD.
|
inline |
Definition at line 1909 of file objects-inl.h.
References ASSERT, JSObject::GetHeaderSize(), Map::inobject_properties(), v8::internal::kPointerSize, v8::internal::kPointerSizeLog2, HeapObject::map(), and HeapObject::Size().
Referenced by JSObject::GetInternalField(), JSObject::GetInternalFieldOffset(), and JSObject::SetInternalField().
|
inline |
Definition at line 1918 of file objects-inl.h.
References ASSERT, JSObject::GetHeaderSize(), JSObject::GetInternalFieldCount(), and v8::internal::kPointerSize.
AccessorPair * GetLocalElementAccessorPair | ( | uint32_t | index | ) |
Definition at line 11826 of file objects.cc.
References ASSERT, JSObject::cast(), JSObject::GetLocalElementAccessorPair(), Object::GetPrototype(), and v8::internal::NULL.
Referenced by JSObject::GetLocalElementAccessorPair().
int GetLocalElementKeys | ( | FixedArray * | storage, |
PropertyAttributes | filter | ||
) |
Definition at line 13471 of file objects.cc.
References ASSERT, Smi::cast(), FixedArrayBase::cast(), FixedArray::cast(), FixedDoubleArray::cast(), SeededNumberDictionary::cast(), JSValue::cast(), String::cast(), JSArray::cast(), Dictionary< Shape, Key >::CopyKeysTo(), v8::internal::DICTIONARY_ELEMENTS, v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::FAST_HOLEY_SMI_ELEMENTS, v8::internal::FAST_SMI_ELEMENTS, Smi::FromInt(), FixedArray::get(), FixedArray::is_the_hole(), FixedArrayBase::length(), String::length(), v8::internal::NULL, Dictionary< Shape, Key >::NumberOfElementsFilterAttributes(), FixedArray::set(), v8::internal::SLOPPY_ARGUMENTS_ELEMENTS, Dictionary< SeededNumberDictionaryShape, uint32_t >::SORTED, FixedArray::SortPairs(), TYPED_ARRAY_CASE, TYPED_ARRAYS, Dictionary< SeededNumberDictionaryShape, uint32_t >::UNSORTED, and Smi::value().
AccessorPair * GetLocalPropertyAccessorPair | ( | Name * | name | ) |
Definition at line 11809 of file objects.cc.
References Name::AsArrayIndex(), AccessorPair::cast(), HeapObject::GetIsolate(), and v8::internal::NULL.
void GetLocalPropertyNames | ( | FixedArray * | storage, |
int | index, | ||
PropertyAttributes | filter = NONE |
||
) |
Definition at line 13431 of file objects.cc.
References ASSERT, DescriptorArray::GetDetails(), DescriptorArray::GetKey(), FixedArrayBase::length(), HeapObject::map(), Map::NumberOfOwnDescriptors(), FixedArray::set(), and Dictionary< NameDictionaryShape, Name * >::UNSORTED.
MaybeObject * GetLocalPropertyPostInterceptor | ( | Object * | receiver, |
Name * | name, | ||
PropertyAttributes * | attributes | ||
) |
Definition at line 13191 of file objects.cc.
References HeapObject::GetHeap(), HeapObject::GetIsolate(), and Object::GetProperty().
InterceptorInfo * GetNamedInterceptor | ( | ) |
Definition at line 13148 of file objects.cc.
References ASSERT, JSFunction::cast(), InterceptorInfo::cast(), and HeapObject::map().
Object * GetNormalizedProperty | ( | const LookupResult * | result | ) |
Definition at line 680 of file objects.cc.
References ASSERT, PropertyCell::cast(), JSObject::HasFastProperties(), JSObject::property_dictionary(), and Dictionary< Shape, Key >::ValueAt().
|
static |
Definition at line 4261 of file objects.cc.
References ABSENT, and JSReceiver::GetPropertyAttributeWithReceiver().
Referenced by JSObject::GetPropertyAttributeWithInterceptor(), and JSObject::HasHiddenProperties().
|
static |
Definition at line 616 of file objects.cc.
References ABSENT, v8::ACCESS_HAS, v8::internal::CALLBACKS, Handle< T >::cast(), v8::internal::CONSTANT, v8::internal::FIELD, v8::internal::HANDLER, v8::internal::INTERCEPTOR, v8::internal::NONEXISTENT, v8::internal::NORMAL, obj, v8::internal::TRANSITION, and UNREACHABLE.
|
static |
Definition at line 4284 of file objects.cc.
References ABSENT, ASSERT, DONT_ENUM, JSObject::GetPropertyAttributePostInterceptor(), Value::Int32Value(), Handle< T >::IsEmpty(), Value::IsInt32(), LOG, and Utils::ToLocal().
|
static |
Definition at line 13168 of file objects.cc.
References ABSENT, Isolate::factory(), Object::GetProperty(), and Object::GetPropertyWithReceiver().
|
static |
Definition at line 392 of file objects.cc.
References ARRAY_SIZE, CALL_HEAP_FUNCTION, Handle< T >::cast(), JSReceiver::cast(), DeclaredAccessorInfo::cast(), HandleScope::CloseAndEscape(), AccessorDescriptor::data, Isolate::factory(), AccessorDescriptor::getter, v8::internal::HandleVector(), LOG, v8::internal::name, Factory::NewTypeError(), Handle< T >::null(), v8::internal::NULL, JSObject::Object, Utils::OpenHandle(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, Isolate::Throw(), and Utils::ToLocal().
Referenced by Object::GetProperty().
|
static |
Definition at line 13205 of file objects.cc.
References Handle< T >::cast(), Isolate::factory(), v8::internal::handle(), LOG, NONE, Utils::OpenHandle(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, and Utils::ToLocal().
Referenced by Object::GetProperty().
bool HasDictionaryArgumentsElements | ( | ) |
Definition at line 12003 of file objects.cc.
References FixedArray::cast(), FixedArray::get(), HeapObject::GetHeap(), and HeapObject::map().
|
inline |
Definition at line 6062 of file objects-inl.h.
References v8::internal::DICTIONARY_ELEMENTS, and JSObject::GetElementsKind().
Referenced by JSObject::element_dictionary(), and JSObject::GetAccessor().
|
inline |
Definition at line 6072 of file objects-inl.h.
References ASSERT, and v8::internal::NULL.
Referenced by JSArray::AllowsSetElementsLength().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
bool HasFastArgumentsElements | ( | ) |
Definition at line 11991 of file objects.cc.
References FixedArray::cast(), FixedArray::get(), HeapObject::GetHeap(), and HeapObject::map().
|
inline |
Definition at line 6047 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastDoubleElementsKind().
Referenced by Heap::CopyJSObject().
|
inline |
Definition at line 6057 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastElementsKind().
|
inline |
Definition at line 6052 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastHoleyElementsKind().
|
inline |
Definition at line 6032 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastObjectElementsKind().
Referenced by JSObject::IsDirty(), and StringStream::PrintMentionedObjectCache().
|
inline |
Definition at line 2038 of file objects-inl.h.
References ASSERT, and HeapObject::map().
Referenced by JSObject::GetNormalizedProperty(), JSObject::IsDirty(), JSObject::LocalLookupRealNamedProperty(), JSObject::property_dictionary(), v8::internal::RUNTIME_FUNCTION(), JSObject::SlowReverseLookup(), and NameDictionary::TransformPropertiesToFastFor().
|
inline |
Definition at line 6037 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastSmiElementsKind().
|
inline |
Definition at line 6042 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::IsFastSmiOrObjectElementsKind().
Referenced by JSObject::EnsureWritableFastElements().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 6093 of file objects-inl.h.
References ASSERT, and v8::internal::NULL.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 4925 of file objects.cc.
References ABSENT, and JSObject::GetPropertyAttributePostInterceptor().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 6119 of file objects-inl.h.
References Map::has_indexed_interceptor(), and HeapObject::map().
Referenced by JSReceiver::IsSimpleEnum(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 6114 of file objects-inl.h.
References Map::has_named_interceptor(), and HeapObject::map().
Referenced by JSReceiver::IsSimpleEnum(), and JSReceiver::LocalLookup().
Definition at line 13259 of file objects.cc.
References ABSENT, v8::ACCESS_HAS, ASSERT, Isolate::MayIndexedAccessWrapper(), and Isolate::ReportFailedAccessCheckWrapper().
Referenced by Object::HasRealIndexedProperty().
Definition at line 13283 of file objects.cc.
References v8::ACCESS_HAS, Isolate::MayNamedAccessWrapper(), and Isolate::ReportFailedAccessCheckWrapper().
Referenced by Object::HasRealNamedCallbackProperty().
Definition at line 13241 of file objects.cc.
References v8::ACCESS_HAS, Isolate::MayNamedAccessWrapper(), and Isolate::ReportFailedAccessCheckWrapper().
Referenced by Object::HasRealNamedProperty(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 6067 of file objects-inl.h.
References JSObject::GetElementsKind(), and v8::internal::SLOPPY_ARGUMENTS_ELEMENTS.
|
inline |
Definition at line 1735 of file objects-inl.h.
References ASSERT, Heap::EmptyExternalArrayForMap(), Heap::EmptyFixedTypedArrayForMap(), HeapObject::GetHeap(), JSObject::kElementsOffset, HeapObject::map(), UNREACHABLE, and WRITE_FIELD.
Referenced by Heap::AllocateJSMessageObject(), and JSObject::ResetElements().
Definition at line 2014 of file objects-inl.h.
References ASSERT, HeapObject::GetHeap(), Heap::InNewSpace(), Map::instance_size(), JSObject::kHeaderSize, v8::internal::kPointerSize, Map::pre_allocated_property_fields(), v8::internal::size, and WRITE_FIELD.
|
inline |
Definition at line 1996 of file objects-inl.h.
References JSObject::GetInObjectPropertyOffset(), and READ_FIELD.
|
inline |
Definition at line 2002 of file objects-inl.h.
References CONDITIONAL_WRITE_BARRIER, HeapObject::GetHeap(), JSObject::GetInObjectPropertyOffset(), and WRITE_FIELD.
Referenced by Heap::AllocateArgumentsObject(), v8::internal::RUNTIME_FUNCTION(), and NameDictionary::TransformPropertiesToFastFor().
bool IsDirty | ( | ) |
Definition at line 814 of file objects.cc.
References JSFunction::cast(), JSObject::HasFastObjectElements(), JSObject::HasFastProperties(), JSFunction::initial_map(), and HeapObject::map().
void JSObjectShortPrint | ( | StringStream * | accumulator | ) |
Definition at line 1436 of file objects.cc.
References StringStream::Add(), HeapObject::cast(), JSFunction::cast(), JSValue::cast(), String::cast(), JSArray::cast(), JSReceiver::constructor_name(), Heap::Contains(), HeapObject::GetHeap(), Map::is_deprecated(), v8::internal::JS_ARRAY_TYPE, v8::internal::JS_FUNCTION_TYPE, v8::internal::JS_GENERATOR_OBJECT_TYPE, v8::internal::JS_MODULE_TYPE, v8::internal::JS_REGEXP_TYPE, v8::internal::JS_WEAK_MAP_TYPE, v8::internal::JS_WEAK_SET_TYPE, String::length(), HeapObject::map(), Object::Number(), StringStream::Put(), and Object::ShortPrint().
Referenced by HeapObject::HeapObjectShortPrint().
void LocalLookupRealNamedProperty | ( | Name * | name, |
LookupResult * | result | ||
) |
Definition at line 3371 of file objects.cc.
References ASSERT, JSObject::cast(), PropertyCell::cast(), Dictionary< Shape, Key >::DetailsAt(), NameDictionary::FindEntry(), JSReceiver::GetPrototype(), JSObject::HasFastProperties(), HashTable< NameDictionaryShape, Name * >::kNotFound, JSObject::LocalLookupRealNamedProperty(), Map::LookupDescriptor(), HeapObject::map(), JSObject::property_dictionary(), JSObject::RawFastPropertyAt(), and Dictionary< Shape, Key >::ValueAt().
Referenced by JSReceiver::LocalLookup(), JSObject::LocalLookupRealNamedProperty(), JSObject::LookupCallbackProperty(), JSObject::LookupRealNamedProperty(), JSObject::LookupRealNamedPropertyInPrototypes(), and IC::TryRemoveInvalidPrototypeDependentStub().
void LookupCallbackProperty | ( | Name * | name, |
LookupResult * | result | ||
) |
Definition at line 6016 of file objects.cc.
References JSObject::cast(), HeapObject::GetHeap(), JSReceiver::GetPrototype(), and JSObject::LocalLookupRealNamedProperty().
void LookupRealNamedProperty | ( | Name * | name, |
LookupResult * | result | ||
) |
Definition at line 3419 of file objects.cc.
References JSObject::LocalLookupRealNamedProperty(), and JSObject::LookupRealNamedPropertyInPrototypes().
void LookupRealNamedPropertyInPrototypes | ( | Name * | name, |
LookupResult * | result | ||
) |
Definition at line 3427 of file objects.cc.
References ASSERT, JSObject::cast(), JSProxy::cast(), HeapObject::GetIsolate(), JSReceiver::GetPrototype(), Isolate::heap(), v8::internal::INTERCEPTOR, and JSObject::LocalLookupRealNamedProperty().
Referenced by JSObject::LookupRealNamedProperty().
Definition at line 3852 of file objects.cc.
References v8::internal::ALLOW_AS_CONSTANT, JSObject::GeneralizeFieldRepresentation(), and Representation::None().
Referenced by JSObjectWalkVisitor< ContextObject >::StructureWalk().
Definition at line 2364 of file objects.cc.
References HeapObject::address(), ASSERT, v8::internal::CALLBACKS, v8::internal::CONSTANT, Heap::CreateFillerObjectAt(), Isolate::factory(), v8::internal::FIELD, Smi::FromInt(), v8::internal::handle(), Isolate::heap(), v8::internal::Min(), Factory::NewFixedArray(), and Factory::NewHeapNumber().
Referenced by JSObject::AllocateStorageForMap(), JSObject::Freeze(), JSObject::GeneralizeFieldRepresentation(), JSObject::NormalizeElements(), JSObject::PreventExtensions(), JSObject::SetFastElement(), JSObject::SetObserved(), JSObject::SetPrototype(), JSFunction::SetPrototype(), and JSObject::TryMigrateInstance().
|
inlinestatic |
Definition at line 2467 of file objects.h.
Referenced by Isolate::CaptureSimpleStackTrace(), and FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::SetLengthWithoutNormalize().
|
static |
Definition at line 4704 of file objects.cc.
References ASSERT, Smi::cast(), FixedArrayBase::cast(), FixedArray::cast(), v8::internal::DICTIONARY_ELEMENTS, JSObject::GetElementsTransitionMap(), v8::internal::handle(), JSObject::MigrateToMap(), Factory::NewSeededNumberDictionary(), v8::internal::PrintF(), and Smi::value().
Referenced by JSObject::AllocateStorageForMap(), FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::DeleteCommon(), JSObject::PreventExtensions(), and ElementsAccessorBase< ElementsAccessorSubclass, ElementsTraitsParam >::SetLengthImpl().
|
static |
Definition at line 4560 of file objects.cc.
References Heap::AdjustLiveBytes(), ASSERT, v8::internal::CALLBACKS, v8::internal::CONSTANT, Heap::CreateFillerObjectAt(), v8::internal::FIELD, Heap::FROM_MUTATOR, NormalizedMapCache::Get(), v8::internal::HANDLER, v8::internal::INTERCEPTOR, HeapObject::map(), v8::internal::NONEXISTENT, v8::internal::NORMAL, v8::internal::PrintF(), v8::internal::TRANSITION, and UNREACHABLE.
Referenced by JSObject::Freeze(), and v8::internal::RUNTIME_FUNCTION().
int NumberOfEnumElements | ( | ) |
Definition at line 13457 of file objects.cc.
References Smi::cast(), FixedArray::cast(), JSArray::cast(), DONT_ENUM, FixedArrayBase::length(), and Smi::value().
Referenced by JSReceiver::IsSimpleEnum().
int NumberOfLocalElements | ( | PropertyAttributes | filter | ) |
Definition at line 13452 of file objects.cc.
References v8::internal::NULL.
int NumberOfLocalProperties | ( | PropertyAttributes | filter = NONE | ) |
Definition at line 13301 of file objects.cc.
References DONT_ENUM, Map::EnumLength(), HeapObject::map(), NONE, Map::NumberOfDescribedProperties(), Map::NumberOfOwnDescriptors(), and v8::internal::OWN_DESCRIPTORS.
Definition at line 9649 of file objects.cc.
References JSObject::TransformToFastProperties().
Referenced by JSFunction::SetInstancePrototype(), and JSObject::SetPrototype().
Definition at line 14342 of file objects.cc.
References ASSERT, FixedArrayBase::cast(), FixedArray::cast(), FixedDoubleArray::cast(), Isolate::factory(), v8::internal::FAST_HOLEY_ELEMENTS, Smi::FromInt(), FixedArray::get(), FixedDoubleArray::get_scalar(), JSObject::GetElementsTransitionMap(), HeapObject::GetWriteBarrierMode(), v8::internal::handle(), Isolate::heap(), Heap::InNewSpace(), FixedDoubleArray::is_the_hole(), FixedArrayBase::length(), Factory::NewFixedArray(), Factory::NewNumberFromUint(), v8::internal::NOT_TENURED, JSObject::PrepareSlowElementsForSort(), FixedArray::set(), FixedDoubleArray::set(), FixedArray::set_the_hole(), FixedDoubleArray::set_the_hole(), FixedArray::set_undefined(), and v8::internal::TENURED.
Referenced by v8::internal::RUNTIME_FUNCTION().
Definition at line 14232 of file objects.cc.
References CALL_HEAP_FUNCTION, and v8::internal::Object.
Referenced by JSObject::PrepareElementsForSort().
MaybeObject * PrepareSlowElementsForSort | ( | uint32_t | limit | ) |
Definition at line 14242 of file objects.cc.
References SeededNumberDictionary::AddNumberEntry(), Dictionary< SeededNumberDictionaryShape, uint32_t >::Allocate(), Heap::AllocateHeapNumber(), ASSERT, ASSERT_NE, v8::internal::CALLBACKS, HashTable< Shape, Key >::Capacity(), Smi::cast(), HeapNumber::cast(), SeededNumberDictionary::cast(), Dictionary< Shape, Key >::DetailsAt(), Smi::FromInt(), HeapObject::GetHeap(), HashTable< Shape, Key >::IsKey(), HashTable< Shape, Key >::KeyAt(), v8::internal::kMaxUInt32, Smi::kMaxValue, NONE, v8::internal::NORMAL, v8::internal::NULL, HashTable< Shape, Key >::NumberOfElements(), v8::internal::NumberToUint32(), obj, HeapNumber::set_value(), Smi::value(), HeapNumber::value(), and Dictionary< Shape, Key >::ValueAt().
Definition at line 5420 of file objects.cc.
References v8::ACCESS_KEYS, ASSERT, Map::Copy(), JSObject::EnqueueChangeRecord(), Isolate::factory(), v8::internal::handle(), v8::internal::HandleVector(), Isolate::MayNamedAccessWrapper(), JSObject::MigrateToMap(), Factory::NewTypeError(), JSObject::NormalizeElements(), Isolate::ReportFailedAccessCheckWrapper(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, and Isolate::Throw().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 1534 of file objects.cc.
References v8::internal::PrintElementsKind(), v8::internal::PrintF(), and JavaScriptFrame::PrintTop().
Referenced by JSObject::SetFastDoubleElementsCapacityAndLength(), and JSObject::SetFastElementsCapacityAndLength().
Definition at line 1592 of file objects.cc.
References String::cast(), v8::internal::CONSTANT, Map::constructor_name(), Representation::Equals(), v8::internal::FIELD, DescriptorArray::GetDetails(), DescriptorArray::GetKey(), HeapObject::map(), Representation::Mnemonic(), Map::NumberOfOwnDescriptors(), v8::internal::PrintF(), and String::PrintOn().
|
inline |
Definition at line 6142 of file objects-inl.h.
References ASSERT, NameDictionary::cast(), and JSObject::HasFastProperties().
Referenced by BASE_EMBEDDED< Visitor >::DictionaryResult(), JSObject::GetNormalizedProperty(), JSObject::LocalLookupRealNamedProperty(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetNormalizedProperty(), and JSObject::SlowReverseLookup().
|
inline |
Definition at line 1964 of file objects-inl.h.
References ASSERT, Map::inobject_properties(), Map::instance_size(), v8::internal::kPointerSize, HeapObject::map(), and READ_FIELD.
Referenced by JSObject::FastPropertyAt(), JSObject::LocalLookupRealNamedProperty(), StringStream::PrintUsingMap(), v8::internal::RUNTIME_FUNCTION(), JSObject::SlowReverseLookup(), and TEST().
bool ReferencesObject | ( | Object * | obj | ) |
Definition at line 5307 of file objects.cc.
References JSObject::cast(), FixedArray::cast(), JSFunction::cast(), Isolate::context(), v8::internal::DICTIONARY_ELEMENTS, Context::extension(), v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::FAST_HOLEY_SMI_ELEMENTS, v8::internal::FAST_SMI_ELEMENTS, FixedArray::get(), JSObject::GetElementsKind(), HeapObject::GetHeap(), Context::has_extension(), Context::IsCatchContext(), Context::IsGlobalContext(), Context::IsNativeContext(), Heap::isolate(), FixedArrayBase::length(), HeapObject::map(), Context::MIN_CONTEXT_SLOTS, Context::native_context(), obj, JSObject::ReferencesObject(), v8::internal::SLOPPY_ARGUMENTS_ELEMENTS, JSObject::SlowReverseLookup(), TYPED_ARRAY_CASE, and TYPED_ARRAYS.
Referenced by JSObject::ReferencesObject().
|
inline |
Definition at line 1755 of file objects-inl.h.
References Dictionary< SeededNumberDictionaryShape, uint32_t >::Allocate(), FixedArray::cast(), v8::internal::FastSmiToObjectElementsKind(), JSObject::GetElementsTransitionMap(), HeapObject::GetHeap(), v8::internal::GetInitialFastElementsKind(), HeapObject::GetIsolate(), JSObject::initialize_elements(), HeapObject::map(), FixedArray::set(), and HeapObject::set_map().
Referenced by DictionaryElementsAccessor::SetLengthWithoutNormalize().
|
inline |
Definition at line 1701 of file objects-inl.h.
References ASSERT, CONDITIONAL_WRITE_BARRIER, HeapObject::GetHeap(), Object::HasValidElements(), JSObject::kElementsOffset, HeapObject::map(), v8::internal::NULL, HeapObject::set_map(), HeapObject::set_map_no_write_barrier(), v8::internal::SKIP_WRITE_BARRIER, v8::internal::UPDATE_WRITE_BARRIER, and WRITE_FIELD.
Definition at line 6482 of file objects.cc.
References v8::ACCESS_SET, ASSERT, Name::cast(), v8::internal::DICTIONARY_ELEMENTS, Isolate::factory(), v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::FAST_HOLEY_SMI_ELEMENTS, v8::internal::FAST_SMI_ELEMENTS, v8::internal::FlattenString(), Isolate::MayNamedAccessWrapper(), v8::internal::name, Isolate::ReportFailedAccessCheckWrapper(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, v8::internal::SLOPPY_ARGUMENTS_ELEMENTS, TYPED_ARRAY_CASE, TYPED_ARRAYS, and UNIMPLEMENTED.
Referenced by Factory::CreateApiFunction(), and v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 12410 of file objects.cc.
References ABSENT, v8::ACCESS_SET, ARRAY_SIZE, ASSERT, CHECK, v8::internal::DEFINE_PROPERTY, DONT_DELETE, DONT_ENUM, Isolate::factory(), Object::GetElementNoExceptionThrown(), JSReceiver::GetLocalElementAttribute(), v8::internal::handle(), v8::internal::HandleVector(), Value::IsNumber(), Value::IsUndefined(), FixedArrayBase::length(), Isolate::MayIndexedAccessWrapper(), Factory::NewJSArray(), Factory::NewNumberFromUint(), Factory::NewTypeError(), v8::internal::NULL, READ_ONLY, Isolate::ReportFailedAccessCheckWrapper(), RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, RETURN_IF_EMPTY_HANDLE_VALUE, Value::SameValue(), Isolate::Throw(), Value::ToArrayIndex(), Execution::ToNumber(), and Factory::Uint32ToString().
Referenced by Runtime::ForceSetObjectProperty(), FormatMessage(), Scope::ResolveVariable(), Object::Set(), JSReceiver::SetElement(), JSArray::SetElementsLength(), Runtime::SetObjectProperty(), JSObject::SetOwnElement(), StoreIC::Store(), and THREADED_TEST().
|
static |
Definition at line 11205 of file objects.cc.
References ASSERT, Handle< T >::cast(), CHECK, v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, ElementsAccessor::ForKind(), Smi::FromInt(), JSObject::GetElementsTransitionMap(), v8::internal::IsHoleyElementsKind(), JSObject::PrintElementsTransition(), and v8::internal::SLOPPY_ARGUMENTS_ELEMENTS.
MUST_USE_RESULT MaybeObject* SetFastDoubleElementsCapacityAndLength | ( | int | capacity, |
int | length | ||
) |
|
static |
Definition at line 12018 of file objects.cc.
References ASSERT, Handle< T >::cast(), FixedArray::cast(), FixedDoubleArray::cast(), CHECK, v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, Smi::FromInt(), v8::internal::GetHoleyElementsKind(), v8::internal::handle(), v8::internal::IsFastElementsKind(), v8::internal::IsFastHoleyElementsKind(), v8::internal::IsFastObjectElementsKind(), v8::internal::IsHoleyElementsKind(), Value::IsNumber(), DependentCode::kElementsCantBeAddedGroup, FixedArrayBase::length(), JSObject::MigrateToMap(), NONE, FixedArray::set(), and Object::ToArrayIndex().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 11143 of file objects.cc.
References ASSERT, Handle< T >::cast(), v8::internal::FAST_ELEMENTS, v8::internal::FAST_HOLEY_ELEMENTS, v8::internal::FAST_HOLEY_SMI_ELEMENTS, v8::internal::FAST_SMI_ELEMENTS, ElementsAccessor::ForKind(), Smi::FromInt(), JSObject::GetElementsTransitionMap(), v8::internal::handle(), v8::internal::IsHoleyElementsKind(), JSObject::kAllowSmiElements, JSObject::kForceSmiElements, JSObject::PrintElementsTransition(), and v8::internal::SLOPPY_ARGUMENTS_ELEMENTS.
|
static |
Definition at line 4861 of file objects.cc.
References ASSERT, Isolate::factory(), and ObjectHashTable::Put().
Referenced by Isolate::CaptureAndSetDetailedStackTrace(), v8::internal::RUNTIME_FUNCTION(), Object::SetHiddenValue(), JSObject::SetIdentityHash(), and Isolate::StackOverflow().
Definition at line 4781 of file objects.cc.
References Isolate::factory(), and JSObject::SetHiddenProperty().
Referenced by JSProxy::Fix(), and TEST().
|
inline |
Definition at line 1933 of file objects-inl.h.
References ASSERT, JSObject::GetHeaderSize(), HeapObject::GetHeap(), JSObject::GetInternalFieldCount(), v8::internal::kPointerSize, WRITE_BARRIER, and WRITE_FIELD.
Referenced by Heap::AllocateExternal().
|
inline |
Definition at line 1944 of file objects-inl.h.
References ASSERT, JSObject::GetHeaderSize(), JSObject::GetInternalFieldCount(), v8::internal::kPointerSize, and WRITE_FIELD.
|
static |
Definition at line 4141 of file objects.cc.
References ABSENT, v8::ACCESS_SET, ASSERT, v8::internal::CALLBACKS, CHECK_NOT_EMPTY_HANDLE, v8::internal::CONSTANT, JSObject::EnqueueChangeRecord(), Isolate::factory(), v8::internal::FIELD, Object::GetProperty(), v8::internal::handle(), v8::internal::HANDLER, Isolate::heap(), Heap::hidden_string(), v8::internal::INSERT_TRANSITION, v8::internal::INTERCEPTOR, JSReceiver::MAY_BE_STORE_FROM_KEYED, Isolate::MayNamedAccessWrapper(), v8::internal::NONEXISTENT, v8::internal::NORMAL, v8::internal::OMIT_TRANSITION, RETURN_IF_EMPTY_HANDLE_VALUE, Value::SameValue(), v8::internal::SLOPPY, v8::internal::TRANSITION, and UNREACHABLE.
Referenced by Isolate::CaptureCurrentStackTrace(), Runtime::ForceSetObjectProperty(), Factory::NewFunctionPrototype(), and v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 691 of file objects.cc.
References ASSERT, PropertyCell::cast(), JSObject::property_dictionary(), and PropertyCell::SetValueInferType().
Referenced by v8::internal::RUNTIME_FUNCTION(), and JSObject::SetPropertyForResult().
|
static |
Definition at line 717 of file objects.cc.
References ASSERT, PropertyCell::cast(), Dictionary< Shape, Key >::DetailsAt(), Dictionary< Shape, Key >::DetailsAtPut(), NameDictionary::FindEntry(), HashTable< NameDictionaryShape, Name * >::kNotFound, Dictionary< Shape, Key >::NextEnumerationIndex(), JSObject::property_dictionary(), Dictionary< Shape, Key >::SetEntry(), Dictionary< Shape, Key >::SetNextEnumerationIndex(), PropertyCell::SetValueInferType(), and Dictionary< Shape, Key >::ValueAt().
Definition at line 5611 of file objects.cc.
References ASSERT, Map::Copy(), Map::CopyForObserved(), v8::internal::handle(), Isolate::heap(), and JSObject::MigrateToMap().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 12401 of file objects.cc.
References ASSERT, NONE, and JSObject::SetElement().
|
static |
Definition at line 4004 of file objects.cc.
References v8::ACCESS_SET, ARRAY_SIZE, ASSERT, v8::internal::CALLBACKS, Handle< T >::cast(), CHECK_NOT_EMPTY_HANDLE, v8::internal::CONSTANT, JSObject::EnqueueChangeRecord(), Isolate::factory(), v8::internal::FIELD, Object::GetProperty(), v8::internal::handle(), v8::internal::HANDLER, v8::internal::HandleVector(), Isolate::heap(), Heap::hidden_string(), v8::internal::INTERCEPTOR, Factory::InternalizeString(), Isolate::MayNamedAccessWrapper(), v8::internal::name, Factory::NewTypeError(), v8::internal::NONEXISTENT, v8::internal::NORMAL, RETURN_IF_EMPTY_HANDLE_VALUE, Value::SameValue(), JSObject::SetNormalizedProperty(), JSObject::SetPropertyWithCallback(), JSObject::SetPropertyWithInterceptor(), v8::internal::STRICT, Isolate::Throw(), v8::internal::TRANSITION, and UNREACHABLE.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 2874 of file objects.cc.
References ARRAY_SIZE, ASSERT, CALL_AND_RETRY_OR_DIE, Handle< T >::cast(), JSObject::cast(), ExecutableAccessorInfo::cast(), AccessorPair::cast(), AccessorDescriptor::data, Isolate::factory(), v8::internal::HandleVector(), AccessorInfo::IsCompatibleReceiver(), LOG, v8::internal::name, Factory::NewTypeError(), v8::internal::NULL, RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, JSReceiver::SetPropertyWithDefinedSetter(), AccessorDescriptor::setter, v8::internal::SLOPPY, Isolate::Throw(), Utils::ToLocal(), and UNREACHABLE.
Referenced by v8::internal::RUNTIME_FUNCTION(), and JSObject::SetPropertyForResult().
|
static |
Definition at line 2825 of file objects.cc.
References Handle< T >::cast(), Isolate::factory(), LOG, RETURN_HANDLE_IF_SCHEDULED_EXCEPTION, and Utils::ToLocal().
Referenced by JSObject::SetPropertyForResult().
|
static |
Definition at line 11703 of file objects.cc.
References ARRAY_SIZE, ASSERT, JSReceiver::cast(), JSObject::cast(), Heap::ClearInstanceofCache(), Map::Copy(), Isolate::factory(), Object::GetPrototype(), Map::GetPrototypeTransition(), v8::internal::handle(), v8::internal::HandleVector(), Isolate::heap(), Map::is_hidden_prototype(), Handle< T >::is_null(), Value::IsNull(), HeapObject::map(), JSObject::MigrateToMap(), Factory::NewError(), Factory::NewTypeError(), v8::internal::NULL, JSObject::OptimizeAsPrototype(), Map::PutPrototypeTransition(), v8::internal::size, and Isolate::Throw().
Referenced by v8::internal::RUNTIME_FUNCTION(), Object::SetPrototype(), and TEST().
bool ShouldConvertToFastDoubleElements | ( | bool * | has_smi_only_elements | ) |
Definition at line 13079 of file objects.cc.
References ASSERT, HashTable< Shape, Key >::Capacity(), HashTable< Shape, Key >::KeyAt(), and Dictionary< Shape, Key >::ValueAt().
bool ShouldConvertToFastElements | ( | ) |
Definition at line 13043 of file objects.cc.
References ASSERT, HashTable< Shape, Key >::Capacity(), FixedArray::cast(), SeededNumberDictionary::cast(), JSArray::cast(), CHECK, FixedArray::get(), HeapObject::GetHeap(), HashTable< SeededNumberDictionaryShape, uint32_t >::kEntrySize, FixedArrayBase::length(), HeapObject::map(), SeededNumberDictionary::max_number_key(), v8::internal::NULL, SeededNumberDictionary::requires_slow_elements(), and Object::ToArrayIndex().
bool ShouldConvertToSlowElements | ( | int | new_capacity | ) |
Definition at line 13023 of file objects.cc.
References HashTable< SeededNumberDictionaryShape, uint32_t >::ComputeCapacity(), HeapObject::GetHeap(), HashTable< SeededNumberDictionaryShape, uint32_t >::kEntrySize, and v8::internal::STATIC_ASSERT().
Definition at line 6624 of file objects.cc.
References ASSERT, v8::internal::CONSTANT, v8::internal::FIELD, DescriptorArray::GetConstant(), DescriptorArray::GetDetails(), DescriptorArray::GetFieldIndex(), HeapObject::GetHeap(), DescriptorArray::GetKey(), DescriptorArray::GetType(), JSObject::HasFastProperties(), HeapObject::map(), Object::Number(), Map::NumberOfOwnDescriptors(), JSObject::property_dictionary(), JSObject::RawFastPropertyAt(), and Dictionary< Shape, Key >::SlowReverseLookup().
Referenced by StringStream::PrintPrototype(), and JSObject::ReferencesObject().
STATIC_CHECK | ( | kHeaderSize | = =Internals::kJSObjectHeaderSize | ) |
|
inline |
Definition at line 2044 of file objects-inl.h.
References JSReceiver::CERTAINLY_NOT_STORE_FROM_KEYED, Map::inobject_properties(), JSObject::kFastPropertiesSoftLimit, JSObject::kMaxFastProperties, HeapObject::map(), v8::internal::Max(), and Map::unused_property_fields().
Definition at line 4663 of file objects.cc.
References ASSERT, and CALL_HEAP_FUNCTION_VOID.
Referenced by JSObject::OptimizeAsPrototype(), and v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 12779 of file objects.cc.
References ASSERT, Handle< T >::cast(), CHECK, v8::internal::FAST_DOUBLE_ELEMENTS, v8::internal::FAST_HOLEY_DOUBLE_ELEMENTS, v8::internal::GetHoleyElementsKind(), Isolate::heap(), v8::internal::IsFastDoubleElementsKind(), v8::internal::IsFastElementsKind(), v8::internal::IsFastHoleyElementsKind(), v8::internal::IsFastObjectElementsKind(), v8::internal::IsFastSmiElementsKind(), v8::internal::IsFastSmiOrObjectElementsKind(), v8::internal::TERMINAL_FAST_ELEMENTS_KIND, Object::ToArrayIndex(), and UNREACHABLE.
Referenced by JSObject::AllocateStorageForMap(), v8::internal::ArrayConstructInitializeElements(), FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::DeleteCommon(), AllocationSite::DigestTransitionFeedback(), JSObject::EnsureCanContainElements(), JSObject::EnsureCanContainHeapObjectElements(), v8::internal::RUNTIME_FUNCTION(), FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::SetLengthWithoutNormalize(), and v8::internal::TransitionElements().
Definition at line 3866 of file objects.cc.
References Map::CurrentMapForDeprecatedInternal(), Handle< T >::is_null(), and JSObject::MigrateToMap().
Referenced by Map::CurrentMapForDeprecated(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 1447 of file objects-inl.h.
References v8::internal::FLAG_enable_slow_asserts, JSObject::GetElementsAccessor(), and ElementsAccessor::Validate().
Referenced by Heap::AllocateJSArrayWithElements().
Definition at line 13008 of file objects.cc.
References FixedArrayBase::cast(), and Value::ToArrayIndex().
|
friend |
|
friend |
|
friend |
Definition at line 2775 of file objects.h.
Referenced by JSObject::GetPropertyWithCallback().
|
static |
Definition at line 2756 of file objects.h.
Referenced by HLoadEliminationEffects::Apply(), V8_FINAL< kOperandKind, kNumCachedOperands >::ForElementsPointer(), JSObject::GetElementsKind(), JSObject::initialize_elements(), HLoadEliminationTable::Process(), and JSObject::set_map_and_elements().
|
static |
Definition at line 2746 of file objects.h.
Referenced by JSObject::TooManyFastProperties().
|
static |
Definition at line 2752 of file objects.h.
Referenced by Map::CopyGeneralizeAllRepresentations(), and Map::CopyInstallDescriptors().
|
static |
Definition at line 2757 of file objects.h.
Referenced by Heap::AllocateArgumentsObject(), Factory::BecomeJSObject(), CodeStubGraphBuilder< Stub >::BuildCodeStub(), SharedFunctionInfo::CalculateInObjectProperties(), SharedFunctionInfo::CalculateInstanceSize(), Heap::CopyJSObject(), Factory::CreateApiFunction(), Heap::CreateApiObjects(), JSObject::GetHeaderSize(), JSObject::InitializeBody(), Factory::NewFunction(), Factory::NewFunctionWithPrototype(), and TEST().
|
static |
Definition at line 2744 of file objects.h.
Referenced by v8::internal::ArrayConstructInitializeElements(), and Heap::ConfigureHeap().
|
static |
Definition at line 2725 of file objects.h.
Referenced by ArrayConcatVisitor::increase_index_offset(), v8::internal::RUNTIME_FUNCTION(), and ArrayConcatVisitor::visit().
|
static |
Definition at line 2747 of file objects.h.
Referenced by JSObject::TooManyFastProperties().
|
static |
Definition at line 2748 of file objects.h.
Referenced by SharedFunctionInfo::CalculateInstanceSize(), and Factory::CopyMap().
|
static |
|
static |
Definition at line 2755 of file objects.h.
Referenced by V8_FINAL< kOperandKind, kNumCachedOperands >::ForPropertiesPointer(), JSFunction::JSFunctionIterateBody(), StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionStrongCode(), StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionWeakCode(), and IncrementalMarkingMarkingVisitor::VisitWeakCollection().