v8  3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TraversableMap Class Reference
Inheritance diagram for TraversableMap:
Collaboration diagram for TraversableMap:

Public Member Functions

void SetParent (TraversableMap *parent)
 
TraversableMapGetAndResetParent ()
 
DescriptorArrayMutatedInstanceDescriptors ()
 
void ChildIteratorStart ()
 
TraversableMapChildIteratorNext ()
 
- Public Member Functions inherited from Map
int instance_size ()
 
void set_instance_size (int value)
 
int inobject_properties ()
 
void set_inobject_properties (int value)
 
int pre_allocated_property_fields ()
 
void set_pre_allocated_property_fields (int value)
 
InstanceType instance_type ()
 
void set_instance_type (InstanceType value)
 
int unused_property_fields ()
 
void set_unused_property_fields (int value)
 
byte bit_field ()
 
void set_bit_field (byte value)
 
byte bit_field2 ()
 
void set_bit_field2 (byte value)
 
int bit_field3 ()
 
void set_bit_field3 (int value)
 
void set_non_instance_prototype (bool value)
 
bool has_non_instance_prototype ()
 
void set_function_with_prototype (bool value)
 
bool function_with_prototype ()
 
void set_is_hidden_prototype ()
 
bool is_hidden_prototype ()
 
void set_has_named_interceptor ()
 
bool has_named_interceptor ()
 
void set_has_indexed_interceptor ()
 
bool has_indexed_interceptor ()
 
void set_is_undetectable ()
 
bool is_undetectable ()
 
void set_has_instance_call_handler ()
 
bool has_instance_call_handler ()
 
void set_is_extensible (bool value)
 
bool is_extensible ()
 
void set_elements_kind (ElementsKind elements_kind)
 
ElementsKind elements_kind ()
 
bool has_fast_smi_elements ()
 
bool has_fast_object_elements ()
 
bool has_fast_smi_or_object_elements ()
 
bool has_fast_double_elements ()
 
bool has_non_strict_arguments_elements ()
 
bool has_external_array_elements ()
 
bool has_dictionary_elements ()
 
bool has_slow_elements_kind ()
 
Mapelements_transition_map ()
 
void set_elements_transition_map (Map *transitioned_map)
 
void set_attached_to_shared_function_info (bool value)
 
bool attached_to_shared_function_info ()
 
void set_is_shared (bool value)
 
bool is_shared ()
 
void set_used_for_prototype (bool value)
 
bool used_for_prototype ()
 
void set_is_access_check_needed (bool access_check_needed)
 
bool is_access_check_needed ()
 
JSFunctionunchecked_constructor ()
 
void init_instance_descriptors ()
 
void clear_instance_descriptors ()
 
ObjectGetBackPointer ()
 
void SetBackPointer (Object *value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void init_prototype_transitions (Object *undefined)
 
HeapObjectunchecked_prototype_transitions ()
 
int NumberOfProtoTransitions ()
 
void SetNumberOfProtoTransitions (int value)
 
void LookupInDescriptors (JSObject *holder, String *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * CopyDropDescriptors ()
 
MUST_USE_RESULT MaybeObject * CopyNormalized (PropertyNormalizationMode mode, NormalizedMapSharingMode sharing)
 
MUST_USE_RESULT MaybeObject * CopyDropTransitions (DescriptorArray::SharedMode shared_mode)
 
int PropertyIndexFor (String *name)
 
int NextFreePropertyIndex ()
 
int NumberOfDescribedProperties (PropertyAttributes filter=NONE)
 
AccessorDescriptorFindAccessor (String *name)
 
void ClearCodeCache (Heap *heap)
 
MUST_USE_RESULT MaybeObject * UpdateCodeCache (String *name, Code *code)
 
ObjectFindInCodeCache (String *name, Code::Flags flags)
 
int IndexInCodeCache (Object *name, Code *code)
 
void RemoveFromCodeCache (String *name, Code *code, int index)
 
void ClearNonLiveTransitions (Heap *heap)
 
int Hash ()
 
bool EquivalentToForNormalization (Map *other, PropertyNormalizationMode mode)
 
MapLookupElementsTransitionMap (ElementsKind elements_kind)
 
MUST_USE_RESULT MaybeObject * CreateNextElementsTransition (ElementsKind elements_kind)
 
Handle< MapFindTransitionedMap (MapHandleList *candidates)
 
MapFindTransitionedMap (MapList *candidates)
 
int visitor_id ()
 
void set_visitor_id (int visitor_id)
 
void TraverseTransitionTree (TraverseCallback callback, void *data)
 
MapGetPrototypeTransition (Object *prototype)
 
MUST_USE_RESULT MaybeObject * PutPrototypeTransition (Object *prototype, Map *map)
 
 STATIC_CHECK (kInstanceTypeOffset==Internals::kMapInstanceTypeOffset)
 
- Public Member Functions inherited from HeapObject
Mapmap ()
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
MapWord map_word ()
 
void set_map_word (MapWord map_word)
 
HeapGetHeap ()
 
IsolateGetIsolate ()
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const AssertNoAllocation &)
 
void HeapObjectShortPrint (StringStream *accumulator)
 
 STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from Object
bool IsObject ()
 
bool IsFixedArrayBase ()
 
bool IsInstanceOf (FunctionTemplateInfo *type)
 
bool IsStruct ()
 
 INLINE (bool IsSpecObject())
 
 INLINE (bool IsSpecFunction())
 
 INLINE (bool IsUndefined())
 
 INLINE (bool IsNull())
 
 INLINE (bool IsTheHole())
 
 INLINE (bool IsTrue())
 
 INLINE (bool IsFalse())
 
bool IsArgumentsMarker ()
 
bool NonFailureIsHeapObject ()
 
bool IsFiller ()
 
double Number ()
 
bool IsNaN ()
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
MUST_USE_RESULT MaybeObject * ToObject ()
 
ObjectToBoolean ()
 
MUST_USE_RESULT MaybeObject * ToObject (Context *global_context)
 
MUST_USE_RESULT MaybeObject * ToSmi ()
 
void Lookup (String *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * GetProperty (String *key)
 
MUST_USE_RESULT MaybeObject * GetProperty (String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithReceiver (Object *receiver, String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetProperty (Object *receiver, LookupResult *result, String *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter)
 
MUST_USE_RESULT MaybeObject * GetElement (uint32_t index)
 
ObjectGetElementNoExceptionThrown (uint32_t index)
 
MUST_USE_RESULT MaybeObject * GetElementWithReceiver (Object *receiver, uint32_t index)
 
ObjectGetPrototype ()
 
MUST_USE_RESULT MaybeObject * GetHash (CreationFlag flag)
 
bool SameValue (Object *other)
 
bool ToArrayIndex (uint32_t *index)
 
bool IsStringObjectWithCharacterAt (uint32_t index)
 
void ShortPrint ()
 
void ShortPrint (FILE *out)
 
void ShortPrint (StringStream *accumulator)
 

Additional Inherited Members

- Public Types inherited from Map
typedef void(* TraverseCallback )(Map *map, void *data)
 
typedef FixedBodyDescriptor
< kPointerFieldsBeginOffset,
kPointerFieldsEndOffset, kSize
BodyDescriptor
 
- Static Public Member Functions inherited from Map
static bool IsValidElementsTransition (ElementsKind from_kind, ElementsKind to_kind)
 
static Mapcast (Object *obj)
 
static void UpdateCodeCache (Handle< Map > map, Handle< String > name, Handle< Code > code)
 
- Static Public Member Functions inherited from HeapObject
static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static HeapObjectcast (Object *obj)
 
- Static Public Member Functions inherited from Object
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< String > key, PropertyAttributes *attributes)
 
static Handle< ObjectGetElement (Handle< Object > object, uint32_t index)
 
static Objectcast (Object *value)
 
- Static Public Attributes inherited from Map
static const int kProtoTransitionHeaderSize = 2
 
static const int kProtoTransitionNumberOfEntriesOffset = 0
 
static const int kProtoTransitionBackPointerOffset = 1
 
static const int kProtoTransitionElementsPerEntry = 2
 
static const int kProtoTransitionPrototypeOffset = 0
 
static const int kProtoTransitionMapOffset = 1
 
static const int kMaxCachedPrototypeTransitions = 256
 
static const int kMaxPreAllocatedPropertyFields = 255
 
static const int kInstanceSizesOffset = HeapObject::kHeaderSize
 
static const int kInstanceAttributesOffset = kInstanceSizesOffset + kIntSize
 
static const int kPrototypeOffset = kInstanceAttributesOffset + kIntSize
 
static const int kConstructorOffset = kPrototypeOffset + kPointerSize
 
static const int kInstanceDescriptorsOrBitField3Offset
 
static const int kCodeCacheOffset
 
static const int kPrototypeTransitionsOrBackPointerOffset
 
static const int kPadStart
 
static const int kSize = MAP_POINTER_ALIGN(kPadStart)
 
static const int kPointerFieldsBeginOffset = Map::kPrototypeOffset
 
static const int kPointerFieldsEndOffset
 
static const int kInstanceSizeOffset = kInstanceSizesOffset + 0
 
static const int kInObjectPropertiesByte = 1
 
static const int kInObjectPropertiesOffset
 
static const int kPreAllocatedPropertyFieldsByte = 2
 
static const int kPreAllocatedPropertyFieldsOffset
 
static const int kVisitorIdByte = 3
 
static const int kVisitorIdOffset = kInstanceSizesOffset + kVisitorIdByte
 
static const int kInstanceTypeOffset = kInstanceAttributesOffset + 0
 
static const int kUnusedPropertyFieldsOffset = kInstanceAttributesOffset + 1
 
static const int kBitFieldOffset = kInstanceAttributesOffset + 2
 
static const int kBitField2Offset = kInstanceAttributesOffset + 3
 
static const int kUnused = 0
 
static const int kHasNonInstancePrototype = 1
 
static const int kIsHiddenPrototype = 2
 
static const int kHasNamedInterceptor = 3
 
static const int kHasIndexedInterceptor = 4
 
static const int kIsUndetectable = 5
 
static const int kHasInstanceCallHandler = 6
 
static const int kIsAccessCheckNeeded = 7
 
static const int kIsExtensible = 0
 
static const int kStringWrapperSafeForDefaultValueOf = 1
 
static const int kAttachedToSharedFunctionInfo = 2
 
static const int kElementsKindShift = 3
 
static const int kElementsKindBitCount = 5
 
static const int kElementsKindMask
 
static const int8_t kMaximumBitField2FastElementValue
 
static const int8_t kMaximumBitField2FastSmiElementValue
 
static const int8_t kMaximumBitField2FastHoleyElementValue
 
static const int8_t kMaximumBitField2FastHoleySmiElementValue
 
static const int kIsShared = 0
 
static const int kFunctionWithPrototype = 1
 
static const int kUsedForPrototype = 2
 
- 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
 
- Protected Member Functions inherited from HeapObject
void IteratePointers (ObjectVisitor *v, int start, int end)
 
void IteratePointer (ObjectVisitor *v, int offset)
 

Detailed Description

Definition at line 5155 of file objects.cc.

Member Function Documentation

void ChildIteratorStart ( )
inline
TraversableMap* GetAndResetParent ( )
inline
DescriptorArray* MutatedInstanceDescriptors ( )
inline

Definition at line 5170 of file objects.cc.

References HeapObject::GetHeap(), and HeapObject::RawField().

void SetParent ( TraversableMap parent)
inline

Definition at line 5159 of file objects.cc.

References HeapObject::set_map_no_write_barrier().

Referenced by Map::TraverseTransitionTree().


The documentation for this class was generated from the following file: