#include <objects.h>
v8::internal::FixedArrayを継承しています。
Public メソッド | |
bool | IsEmpty () |
int | number_of_descriptors () |
int | NextEnumerationIndex () |
void | SetNextEnumerationIndex (int value) |
bool | HasEnumCache () |
Object * | GetEnumCache () |
void | SetEnumCache (FixedArray *bridge_storage, FixedArray *new_cache) |
String * | GetKey (int descriptor_number) |
Object * | GetValue (int descriptor_number) |
Smi * | GetDetails (int descriptor_number) |
void | Get (int descriptor_number, Descriptor *desc) |
void | Set (int descriptor_number, Descriptor *desc) |
Object * | CopyInsert (Descriptor *descriptor, TransitionFlag transition_flag) |
Object * | RemoveTransitions () |
void | Sort () |
int | Search (String *name) |
bool | Contains (String *name) |
int | BinarySearch (String *name, int low, int high) |
int | LinearSearch (String *name, int len) |
Static Public メソッド | |
static Object * | Allocate (int number_of_descriptors) |
static DescriptorArray * | cast (Object *obj) |
Static Public 変数 | |
static const int | kNotFound = -1 |
static const int | kContentArrayIndex = 0 |
static const int | kEnumerationIndexIndex = 1 |
static const int | kFirstIndex = 2 |
static const int | kEnumCacheBridgeLength = 2 |
static const int | kEnumCacheBridgeEnumIndex = 0 |
static const int | kEnumCacheBridgeCacheIndex = 1 |
static const int | kContentArrayOffset = FixedArray::kHeaderSize |
static const int | kEnumerationIndexOffset = kContentArrayOffset + kPointerSize |
static const int | kFirstOffset = kEnumerationIndexOffset + kPointerSize |
static const int | kEnumCacheBridgeEnumOffset = FixedArray::kHeaderSize |
static const int | kEnumCacheBridgeCacheOffset |
static const int | kMaxNumberOfDescriptors = 1024 + 512 |
Private メソッド | |
void | Swap (int first, int second) |
FixedArray * | GetContentArray () |
DISALLOW_IMPLICIT_CONSTRUCTORS (DescriptorArray) | |
Static Private メソッド | |
static int | ToKeyIndex (int descriptor_number) |
static int | ToValueIndex (int descriptor_number) |
static int | ToDetailsIndex (int descriptor_number) |
static void | fast_swap (FixedArray *array, int first, int second) |
Object * v8::internal::DescriptorArray::Allocate | ( | int | number_of_descriptors | ) | [static] |
objects.cc の 2636 行で定義されています。
参照先 v8::internal::Heap::AllocateFixedArray(), cast(), v8::internal::Smi::FromInt(), kContentArrayIndex, kEnumerationIndexIndex, v8::internal::FixedArray::set(), v8::internal::SKIP_WRITE_BARRIER, と ToKeyIndex().
参照元 CopyInsert(), v8::internal::Factory::NewDescriptorArray(), と RemoveTransitions().
int v8::internal::DescriptorArray::BinarySearch | ( | String * | name, | |
int | low, | |||
int | high | |||
) |
objects.cc の 2849 行で定義されています。
参照先 ASSERT, v8::internal::String::Equals(), GetKey(), v8::internal::Hash(), v8::internal::String::Hash(), と kNotFound.
参照元 Search().
static DescriptorArray* v8::internal::DescriptorArray::cast | ( | Object * | obj | ) | [inline, static] |
v8::internal::FixedArrayを再定義しています。
参照元 v8::internal::JSObject::AddConstantFunctionProperty(), v8::internal::JSObject::AddFastProperty(), Allocate(), v8::internal::JSObject::ConvertDescriptorToFieldAndMapTransition(), v8::internal::Map::CopyDropTransitions(), CopyInsert(), GetContentArray(), GetDetails(), GetEnumCache(), GetKey(), NextEnumerationIndex(), RemoveTransitions(), と SetEnumCache().
bool v8::internal::DescriptorArray::Contains | ( | String * | name | ) | [inline] |
Object * v8::internal::DescriptorArray::CopyInsert | ( | Descriptor * | descriptor, | |
TransitionFlag | transition_flag | |||
) |
objects.cc の 2675 行で定義されています。
参照先 Allocate(), ASSERT, v8::internal::CALLBACKS, cast(), v8::internal::CONSTANT_FUNCTION, v8::internal::FIELD, GetDetails(), v8::internal::DescriptorReader::GetKey(), v8::internal::String::Hash(), v8::internal::INTERCEPTOR, v8::internal::DescriptorReader::IsNullDescriptor(), v8::internal::DescriptorReader::IsTransition(), kNotFound, NextEnumerationIndex(), v8::internal::NULL_DESCRIPTOR, number_of_descriptors(), Search(), SetNextEnumerationIndex(), v8::internal::DescriptorWriter::Write(), と v8::internal::DescriptorWriter::WriteFrom().
参照元 v8::internal::JSObject::AddFastProperty(), と v8::internal::DoCopyInsert().
v8::internal::DescriptorArray::DISALLOW_IMPLICIT_CONSTRUCTORS | ( | DescriptorArray | ) | [private] |
void v8::internal::DescriptorArray::fast_swap | ( | FixedArray * | array, | |
int | first, | |||
int | second | |||
) | [inline, static, private] |
objects-inl.h の 1121 行で定義されています。
参照先 v8::internal::FixedArray::fast_set(), と v8::internal::FixedArray::get().
参照元 Swap().
void v8::internal::DescriptorArray::Get | ( | int | descriptor_number, | |
Descriptor * | desc | |||
) | [inline] |
objects-inl.h の 1165 行で定義されています。
参照先 GetDetails(), GetKey(), と GetValue().
FixedArray* v8::internal::DescriptorArray::GetContentArray | ( | ) | [inline, private] |
参照先 cast(), と kContentArrayIndex.
参照元 GetDetails(), GetValue(), Set(), と Swap().
Smi * v8::internal::DescriptorArray::GetDetails | ( | int | descriptor_number | ) | [inline] |
objects-inl.h の 1159 行で定義されています。
参照先 ASSERT, cast(), GetContentArray(), number_of_descriptors(), と ToDetailsIndex().
参照元 CopyInsert(), Get(), と v8::internal::JSObject::LookupInDescriptor().
Object* v8::internal::DescriptorArray::GetEnumCache | ( | ) | [inline] |
String * v8::internal::DescriptorArray::GetKey | ( | int | descriptor_number | ) | [inline] |
objects-inl.h の 1147 行で定義されています。
参照先 ASSERT, cast(), number_of_descriptors(), と ToKeyIndex().
参照元 BinarySearch(), Get(), LinearSearch(), と Sort().
Object * v8::internal::DescriptorArray::GetValue | ( | int | descriptor_number | ) | [inline] |
bool v8::internal::DescriptorArray::HasEnumCache | ( | ) | [inline] |
参照先 IsEmpty(), と kEnumerationIndexIndex.
参照元 GetEnumCache(), と SetEnumCache().
bool v8::internal::DescriptorArray::IsEmpty | ( | ) | [inline] |
objects-inl.h の 1114 行で定義されています。
参照先 ASSERT, と v8::internal::Array::length().
参照元 HasEnumCache(), NextEnumerationIndex(), number_of_descriptors(), SetEnumCache(), と SetNextEnumerationIndex().
int v8::internal::DescriptorArray::LinearSearch | ( | String * | name, | |
int | len | |||
) |
objects.cc の 2880 行で定義されています。
参照先 v8::internal::String::Equals(), GetKey(), と kNotFound.
参照元 Search().
int v8::internal::DescriptorArray::NextEnumerationIndex | ( | ) | [inline] |
int v8::internal::DescriptorArray::number_of_descriptors | ( | ) | [inline] |
Object * v8::internal::DescriptorArray::RemoveTransitions | ( | ) |
objects.cc の 2775 行で定義されています。
参照先 Allocate(), ASSERT, cast(), number_of_descriptors(), と v8::internal::DescriptorWriter::WriteFrom().
int v8::internal::DescriptorArray::Search | ( | String * | name | ) | [inline] |
objects-inl.h の 1128 行で定義されています。
参照先 BinarySearch(), kNotFound, LinearSearch(), number_of_descriptors(), と SLOW_ASSERT.
参照元 Contains(), CopyInsert(), と v8::internal::JSObject::LookupInDescriptor().
void v8::internal::DescriptorArray::Set | ( | int | descriptor_number, | |
Descriptor * | desc | |||
) | [inline] |
void v8::internal::DescriptorArray::SetEnumCache | ( | FixedArray * | bridge_storage, | |
FixedArray * | new_cache | |||
) |
void v8::internal::DescriptorArray::SetNextEnumerationIndex | ( | int | value | ) | [inline] |
void v8::internal::DescriptorArray::Sort | ( | ) |
objects.cc の 2801 行で定義されています。
参照先 GetKey(), v8::internal::String::Hash(), number_of_descriptors(), SLOW_ASSERT, と Swap().
参照元 v8::internal::Dictionary::TransformPropertiesToFastFor().
void v8::internal::DescriptorArray::Swap | ( | int | first, | |
int | second | |||
) | [inline, private] |
v8::internal::FixedArrayを再定義しています。
objects-inl.h の 1188 行で定義されています。
参照先 fast_swap(), GetContentArray(), ToDetailsIndex(), ToKeyIndex(), と ToValueIndex().
参照元 Sort().
static int v8::internal::DescriptorArray::ToDetailsIndex | ( | int | descriptor_number | ) | [inline, static, private] |
参照元 GetDetails(), Set(), と Swap().
static int v8::internal::DescriptorArray::ToKeyIndex | ( | int | descriptor_number | ) | [inline, static, private] |
static int v8::internal::DescriptorArray::ToValueIndex | ( | int | descriptor_number | ) | [inline, static, private] |
参照元 GetValue(), Set(), と Swap().
const int v8::internal::DescriptorArray::kContentArrayIndex = 0 [static] |
const int v8::internal::DescriptorArray::kContentArrayOffset = FixedArray::kHeaderSize [static] |
const int v8::internal::DescriptorArray::kEnumCacheBridgeCacheIndex = 1 [static] |
参照元 GetEnumCache(), と SetEnumCache().
const int v8::internal::DescriptorArray::kEnumCacheBridgeCacheOffset [static] |
const int v8::internal::DescriptorArray::kEnumCacheBridgeEnumIndex = 0 [static] |
参照元 NextEnumerationIndex(), と SetEnumCache().
const int v8::internal::DescriptorArray::kEnumCacheBridgeEnumOffset = FixedArray::kHeaderSize [static] |
const int v8::internal::DescriptorArray::kEnumCacheBridgeLength = 2 [static] |
参照元 SetEnumCache().
const int v8::internal::DescriptorArray::kEnumerationIndexIndex = 1 [static] |
const int v8::internal::DescriptorArray::kEnumerationIndexOffset = kContentArrayOffset + kPointerSize [static] |
const int v8::internal::DescriptorArray::kFirstIndex = 2 [static] |
参照元 number_of_descriptors(), と ToKeyIndex().
const int v8::internal::DescriptorArray::kFirstOffset = kEnumerationIndexOffset + kPointerSize [static] |
const int v8::internal::DescriptorArray::kMaxNumberOfDescriptors = 1024 + 512 [static] |
const int v8::internal::DescriptorArray::kNotFound = -1 [static] |