![]() |
v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
Public Member Functions | |
StringHasher (int length, uint32_t seed) | |
bool | has_trivial_hash () |
void | AddCharacter (uint32_t c) |
void | AddCharacterNoIndex (uint32_t c) |
void | AddSurrogatePair (uc32 c) |
void | AddSurrogatePairNoIndex (uc32 c) |
uint32_t | GetHashField () |
bool | is_array_index () |
bool | is_valid () |
void | invalidate () |
Static Public Member Functions | |
static uint32_t | MakeArrayIndexHash (uint32_t value, int length) |
Static Public Attributes | |
static const int | kZeroHash = 27 |
Friends | |
class | TwoCharHashTableKey |
|
inlineexplicit |
Definition at line 4657 of file objects-inl.h.
References ASSERT.
|
inline |
Definition at line 4673 of file objects-inl.h.
References StringHasher::AddSurrogatePair(), Utf16::kMaxNonSurrogateCharCode, and v8::internal::U.
Referenced by StringHasher::AddSurrogatePair(), String::ComputeHashField(), v8::internal::HashSequentialString(), and TwoCharHashTableKey::TwoCharHashTableKey().
|
inline |
Definition at line 4706 of file objects-inl.h.
References StringHasher::AddSurrogatePairNoIndex(), ASSERT, StringHasher::is_array_index(), and Utf16::kMaxNonSurrogateCharCode.
Referenced by StringHasher::AddSurrogatePairNoIndex(), String::ComputeHashField(), and v8::internal::HashSequentialString().
void AddSurrogatePair | ( | uc32 | c | ) |
Definition at line 7236 of file objects.cc.
References StringHasher::AddCharacter(), Utf16::LeadSurrogate(), and Utf16::TrailSurrogate().
Referenced by StringHasher::AddCharacter().
void AddSurrogatePairNoIndex | ( | uc32 | c | ) |
Definition at line 7244 of file objects.cc.
References StringHasher::AddCharacterNoIndex(), Utf16::LeadSurrogate(), and Utf16::TrailSurrogate().
Referenced by StringHasher::AddCharacterNoIndex().
uint32_t GetHashField | ( | ) |
Definition at line 7252 of file objects.cc.
References ASSERT, StringHasher::is_array_index(), StringHasher::is_valid(), String::kHashShift, String::kIsNotArrayIndexMask, String::kMaxHashCalcLength, and StringHasher::MakeArrayIndexHash().
Referenced by String::ComputeHashField(), SequentialSymbolKey< char >::Hash(), SubStringAsciiSymbolKey::Hash(), and v8::internal::HashSequentialString().
|
inline |
Definition at line 4668 of file objects-inl.h.
References String::kMaxHashCalcLength.
Referenced by String::ComputeHashField(), and v8::internal::HashSequentialString().
|
inline |
Definition at line 6802 of file objects.h.
Referenced by StringHasher::AddCharacterNoIndex(), String::ComputeHashField(), StringHasher::GetHashField(), and v8::internal::HashSequentialString().
|
inline |
Definition at line 6804 of file objects.h.
Referenced by StringHasher::GetHashField().
|
static |
Definition at line 7218 of file objects.cc.
References ASSERT, String::kArrayIndexHashLengthShift, String::kArrayIndexValueBits, String::kContainsCachedArrayIndexMask, String::kHashShift, String::kIsNotArrayIndexMask, String::kMaxArrayIndexSize, String::kMaxCachedArrayIndexLength, and v8::internal::TenToThe().
Referenced by StringHasher::GetHashField(), and v8::internal::RUNTIME_FUNCTION().
|
friend |