v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
Static Public Member Functions | |
static Name * | cast (Object *obj) |
Static Public Member Functions inherited from HeapObject | |
static HeapObject * | FromAddress (Address address) |
static Object ** | RawField (HeapObject *obj, int offset) |
static void | UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code) |
static HeapObject * | cast (Object *obj) |
Static Public Member Functions inherited from Object | |
static MUST_USE_RESULT Handle < Object > | ToSmi (Isolate *isolate, Handle< Object > object) |
static Handle< Object > | GetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes) |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Name > key) |
static Handle< Object > | GetProperty (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< Object > | GetElement (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index) |
static Handle< Object > | GetOrCreateHash (Handle< Object > object, Isolate *isolate) |
static Object * | cast (Object *value) |
Static Public Attributes | |
static const int | kHashFieldOffset = HeapObject::kHeaderSize |
static const int | kSize = kHashFieldOffset + kPointerSize |
static const int | kHashNotComputedMask = 1 |
static const int | kIsNotArrayIndexMask = 1 << 1 |
static const int | kNofHashBitFields = 2 |
static const int | kHashShift = kNofHashBitFields |
static const uint32_t | kHashBitMask = 0xffffffffu >> kHashShift |
static const int | kMaxCachedArrayIndexLength = 7 |
static const int | kArrayIndexValueBits = 24 |
static const int | kArrayIndexLengthBits |
static const int | kArrayIndexHashLengthShift |
static const int | kArrayIndexHashMask = (1 << kArrayIndexHashLengthShift) - 1 |
static const int | kArrayIndexValueMask |
static const unsigned int | kContainsCachedArrayIndexMask |
static const int | kEmptyHashField |
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 |
Static Protected Member Functions | |
static bool | IsHashFieldComputed (uint32_t field) |
Additional Inherited Members | |
Public Types inherited from Object | |
enum | ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED } |
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) |
|
inline |
Definition at line 6267 of file objects-inl.h.
References String::AsArrayIndex(), and String::cast().
Referenced by JSObject::GetLocalPropertyAccessorPair(), and v8::internal::RUNTIME_FUNCTION().
Referenced by CodeEventLogger::CodeCreateEvent(), NameDictionary::FindEntry(), Code::FindFirstName(), Object::GetHash(), CodeCache::GetIndex(), TransitionArray::GetKey(), DescriptorArray::GetKey(), NameDictionaryShape::HashForObject(), CodeCacheHashTableKey::HashForObject(), NameDictionaryShape::IsMatch(), CodeCacheHashTableKey::IsMatch(), Logger::LogAccessorCallbacks(), CodeCache::RemoveByIndex(), v8::internal::RUNTIME_FUNCTION(), and JSObject::SetAccessor().
|
inline |
Definition at line 2954 of file objects-inl.h.
References String::cast().
Referenced by v8::internal::BinarySearch(), Map::FindAccessor(), NameDictionary::FindEntry(), NameDictionaryShape::IsMatch(), CodeCacheHashTableKey::IsMatch(), v8::internal::LinearSearch(), and TransitionArray::Search().
|
inline |
Definition at line 6164 of file objects-inl.h.
References String::cast(), Name::hash_field(), Name::IsHashFieldComputed(), and Name::kHashShift.
Referenced by Logger::ApiNamedPropertyAccess(), Logger::ApiNamedSecurityCheck(), DescriptorArray::Append(), CodeEventLogger::NameBuffer::AppendName(), v8::internal::BinarySearch(), RegExpResultsCache::Enter(), NameDictionary::FindEntry(), Object::GetHash(), NameDictionaryShape::Hash(), SequentialStringKey< uc16 >::HashForObject(), SubStringKey< Char >::HashForObject(), Utf8StringKey::HashForObject(), NameDictionaryShape::HashForObject(), StringKey::HashForObject(), InternalizedStringKey::HashForObject(), TwoCharHashTableKey::HashForObject(), HeapObject::HeapObjectShortPrint(), NameDictionaryShape::IsMatch(), v8::internal::LinearSearch(), RegExpResultsCache::Lookup(), CodeCacheHashTableKey::NameFlagsHashHelper(), v8::internal::RUNTIME_FUNCTION(), DescriptorArray::Sort(), InternalizedStringKey::StringHash(), and StringSharedKey::StringSharedHashHelper().
|
inline |
Definition at line 2941 of file objects-inl.h.
References READ_UINT32_FIELD.
Referenced by String::AsArrayIndex(), Name::Hash(), Name::HasHashCode(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 6159 of file objects-inl.h.
References Name::hash_field(), and Name::IsHashFieldComputed().
Referenced by v8::internal::RUNTIME_FUNCTION().
bool IsCacheable | ( | Isolate * | isolate | ) |
Definition at line 8218 of file objects.cc.
References Isolate::unicode_cache().
|
inlinestaticprotected |
Definition at line 6154 of file objects-inl.h.
References Name::kHashNotComputedMask.
Referenced by String::AsArrayIndex(), Name::Hash(), and Name::HasHashCode().
|
inline |
Definition at line 2946 of file objects-inl.h.
References v8::internal::kIntSize, and WRITE_UINT32_FIELD.
Referenced by Heap::AllocateExternalStringFromAscii(), Heap::AllocateExternalStringFromTwoByte(), Heap::AllocateInternalizedStringImpl(), Heap::AllocateOneByteInternalizedString(), Heap::AllocateRawOneByteString(), Heap::AllocateRawTwoByteString(), Heap::AllocateSymbol(), Heap::AllocateTwoByteInternalizedString(), and v8::internal::RUNTIME_FUNCTION().
STATIC_CHECK | ( | (kArrayIndexLengthBits > 0) | ) |
STATIC_CHECK | ( | IS_POWER_OF_TWO(kMaxCachedArrayIndexLength+1) | ) |
|
static |
Definition at line 8660 of file objects.h.
Referenced by StringHasher::MakeArrayIndexHash().
|
static |
|
static |
|
static |
Definition at line 8654 of file objects.h.
Referenced by StringHasher::MakeArrayIndexHash().
|
static |
|
static |
Definition at line 8673 of file objects.h.
Referenced by StringHasher::MakeArrayIndexHash().
|
static |
Definition at line 8678 of file objects.h.
Referenced by Heap::AllocateExternalStringFromAscii(), Heap::AllocateExternalStringFromTwoByte(), Heap::AllocateRawOneByteString(), Heap::AllocateRawTwoByteString(), check(), Factory::NewConsString(), and Factory::NewProperSubString().
|
static |
Definition at line 8646 of file objects.h.
Referenced by Heap::AllocateSymbol(), Heap::SetUp(), and TwoCharHashTableKey::TwoCharHashTableKey().
|
static |
Definition at line 8629 of file objects.h.
Referenced by V8_FINAL< kOperandKind, kNumCachedOperands >::ForStringHashField().
|
static |
Definition at line 8637 of file objects.h.
Referenced by Name::IsHashFieldComputed().
|
static |
Definition at line 8642 of file objects.h.
Referenced by Heap::AllocateSymbol(), StringHasher::GetHashField(), SequentialStringKey< uc16 >::Hash(), SubStringKey< Char >::Hash(), Utf8StringKey::Hash(), Name::Hash(), StringHasher::MakeArrayIndexHash(), and TwoCharHashTableKey::TwoCharHashTableKey().
|
static |
Definition at line 8638 of file objects.h.
Referenced by Heap::AllocateSymbol(), String::AsArrayIndex(), StringHasher::GetHashField(), StringHasher::MakeArrayIndexHash(), and TwoCharHashTableKey::TwoCharHashTableKey().
|
static |
Definition at line 8649 of file objects.h.
Referenced by StringHasher::MakeArrayIndexHash().
|
static |