V8 Project
|
#include <small-pointer-list.h>
Public Member Functions | |
SmallPointerList () | |
SmallPointerList (int capacity, Zone *zone) | |
void | Reserve (int capacity, Zone *zone) |
void | Clear () |
void | Sort () |
bool | is_empty () const |
int | length () const |
void | Add (T *pointer, Zone *zone) |
T * | at (int i) const |
T * | operator[] (int i) const |
void | RemoveElement (T *pointer) |
T * | RemoveLast () |
void | Rewind (int pos) |
int | CountOccurrences (T *pointer, int start, int end) const |
Private Types | |
typedef ZoneList< T * > | PointerList |
Private Member Functions | |
STATIC_ASSERT (kTagMask+1<=kPointerAlignment) | |
T * | single_value () const |
PointerList * | list () const |
DISALLOW_COPY_AND_ASSIGN (SmallPointerList) | |
Static Private Member Functions | |
static int | compare_value (T *const *a, T *const *b) |
Private Attributes | |
intptr_t | data_ |
Static Private Attributes | |
static const intptr_t | kEmptyTag = 1 |
static const intptr_t | kSingletonTag = 0 |
static const intptr_t | kListTag = 2 |
static const intptr_t | kTagMask = 3 |
static const intptr_t | kValueMask = ~kTagMask |
Definition at line 20 of file small-pointer-list.h.
|
private |
Definition at line 143 of file small-pointer-list.h.
|
inline |
Definition at line 22 of file small-pointer-list.h.
|
inline |
Definition at line 24 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::Reserve().
|
inline |
Definition at line 63 of file small-pointer-list.h.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::IsAligned(), v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kListTag, v8::internal::kPointerAlignment, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), and v8::internal::SmallPointerList< T >::single_value().
|
inline |
Definition at line 82 of file small-pointer-list.h.
References v8::internal::List< T, AllocationPolicy >::at(), v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), and v8::internal::SmallPointerList< T >::single_value().
Referenced by v8::internal::SmallPointerList< T >::operator[]().
|
inline |
Definition at line 45 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, and v8::internal::SmallPointerList< T >::kEmptyTag.
|
inlinestaticprivate |
Definition at line 145 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Sort().
|
inline |
Definition at line 131 of file small-pointer-list.h.
References v8::internal::List< T, AllocationPolicy >::CountOccurrences(), v8::internal::SmallPointerList< T >::data_, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), and v8::internal::SmallPointerList< T >::single_value().
|
private |
|
inline |
Definition at line 55 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::length().
|
inline |
Definition at line 57 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, and v8::internal::SmallPointerList< T >::list().
Referenced by v8::internal::SmallPointerList< T >::is_empty().
|
inlineprivate |
Definition at line 163 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::SmallPointerList< T >::kListTag, v8::internal::SmallPointerList< T >::kTagMask, and v8::internal::SmallPointerList< T >::kValueMask.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::length(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), v8::internal::SmallPointerList< T >::Reserve(), v8::internal::SmallPointerList< T >::Rewind(), and v8::internal::SmallPointerList< T >::Sort().
|
inline |
Definition at line 92 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::at().
|
inline |
Definition at line 95 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), v8::internal::List< T, AllocationPolicy >::RemoveElement(), and v8::internal::SmallPointerList< T >::single_value().
|
inline |
Definition at line 106 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), v8::internal::SmallPointerList< T >::single_value(), and T.
|
inline |
Definition at line 28 of file small-pointer-list.h.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::List< T, AllocationPolicy >::AddBlock(), v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::IsAligned(), v8::internal::SmallPointerList< T >::kListTag, v8::internal::kPointerAlignment, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), NULL, and v8::internal::SmallPointerList< T >::single_value().
Referenced by v8::internal::SmallPointerList< T >::SmallPointerList().
|
inline |
Definition at line 116 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::SmallPointerList< T >::kEmptyTag, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, and v8::internal::SmallPointerList< T >::list().
|
inlineprivate |
Definition at line 157 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::data_, DCHECK, v8::internal::SmallPointerList< T >::kSingletonTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::STATIC_ASSERT(), and T.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), and v8::internal::SmallPointerList< T >::Reserve().
|
inline |
Definition at line 49 of file small-pointer-list.h.
References v8::internal::SmallPointerList< T >::compare_value(), v8::internal::SmallPointerList< T >::data_, v8::internal::SmallPointerList< T >::kListTag, v8::internal::SmallPointerList< T >::kTagMask, v8::internal::SmallPointerList< T >::list(), and v8::internal::List< T, AllocationPolicy >::Sort().
|
private |
Referenced by v8::internal::SmallPointerList< T >::single_value().
|
private |
Definition at line 168 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::Clear(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::length(), v8::internal::SmallPointerList< T >::list(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), v8::internal::SmallPointerList< T >::Reserve(), v8::internal::SmallPointerList< T >::Rewind(), v8::internal::SmallPointerList< T >::single_value(), and v8::internal::SmallPointerList< T >::Sort().
|
staticprivate |
Definition at line 149 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::Clear(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::length(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), and v8::internal::SmallPointerList< T >::Rewind().
|
staticprivate |
Definition at line 151 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::list(), v8::internal::SmallPointerList< T >::Reserve(), and v8::internal::SmallPointerList< T >::Sort().
|
staticprivate |
Definition at line 150 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::length(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), v8::internal::SmallPointerList< T >::Reserve(), v8::internal::SmallPointerList< T >::Rewind(), and v8::internal::SmallPointerList< T >::single_value().
|
staticprivate |
Definition at line 152 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::Add(), v8::internal::SmallPointerList< T >::at(), v8::internal::SmallPointerList< T >::CountOccurrences(), v8::internal::SmallPointerList< T >::length(), v8::internal::SmallPointerList< T >::list(), v8::internal::SmallPointerList< T >::RemoveElement(), v8::internal::SmallPointerList< T >::RemoveLast(), v8::internal::SmallPointerList< T >::Reserve(), v8::internal::SmallPointerList< T >::Rewind(), v8::internal::SmallPointerList< T >::single_value(), and v8::internal::SmallPointerList< T >::Sort().
|
staticprivate |
Definition at line 153 of file small-pointer-list.h.
Referenced by v8::internal::SmallPointerList< T >::list().