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
StaticVisitorBase Class Reference

#include <objects-visiting.h>

Inheritance diagram for StaticVisitorBase:
Collaboration diagram for StaticVisitorBase:

Public Types

enum  VisitorId {
  kVisitSeqAsciiString = 0, kVisitSeqTwoByteString, kVisitShortcutCandidate, kVisitByteArray,
  kVisitFreeSpace, kVisitFixedArray, kVisitFixedDoubleArray, kVisitGlobalContext,
  kVisitDataObject, kVisitDataObject2 = kVisitDataObject, kVisitDataObject3, kVisitDataObject4,
  kVisitDataObject5, kVisitDataObject6, kVisitDataObject7, kVisitDataObject8,
  kVisitDataObject9, kVisitDataObjectGeneric, kVisitJSObject, kVisitJSObject2 = kVisitJSObject,
  kVisitJSObject3, kVisitJSObject4, kVisitJSObject5, kVisitJSObject6,
  kVisitJSObject7, kVisitJSObject8, kVisitJSObject9, kVisitJSObjectGeneric,
  kVisitStruct, kVisitStruct2 = kVisitStruct, kVisitStruct3, kVisitStruct4,
  kVisitStruct5, kVisitStruct6, kVisitStruct7, kVisitStruct8,
  kVisitStruct9, kVisitStructGeneric, kVisitConsString, kVisitSlicedString,
  kVisitOddball, kVisitCode, kVisitMap, kVisitPropertyCell,
  kVisitSharedFunctionInfo, kVisitJSFunction, kVisitJSWeakMap, kVisitJSRegExp,
  kVisitorIdCount, kMinObjectSizeInWords = 2
}
 

Public Member Functions

 STATIC_ASSERT (kVisitorIdCount<=256)
 

Static Public Member Functions

static VisitorId GetVisitorId (int instance_type, int instance_size)
 
static VisitorId GetVisitorId (Map *map)
 
static VisitorId GetVisitorIdForSize (VisitorId base, VisitorId generic, int object_size)
 

Detailed Description

Definition at line 47 of file objects-visiting.h.

Member Enumeration Documentation

enum VisitorId
Enumerator
kVisitSeqAsciiString 
kVisitSeqTwoByteString 
kVisitShortcutCandidate 
kVisitByteArray 
kVisitFreeSpace 
kVisitFixedArray 
kVisitFixedDoubleArray 
kVisitGlobalContext 
kVisitDataObject 
kVisitDataObject2 
kVisitDataObject3 
kVisitDataObject4 
kVisitDataObject5 
kVisitDataObject6 
kVisitDataObject7 
kVisitDataObject8 
kVisitDataObject9 
kVisitDataObjectGeneric 
kVisitJSObject 
kVisitJSObject2 
kVisitJSObject3 
kVisitJSObject4 
kVisitJSObject5 
kVisitJSObject6 
kVisitJSObject7 
kVisitJSObject8 
kVisitJSObject9 
kVisitJSObjectGeneric 
kVisitStruct 
kVisitStruct2 
kVisitStruct3 
kVisitStruct4 
kVisitStruct5 
kVisitStruct6 
kVisitStruct7 
kVisitStruct8 
kVisitStruct9 
kVisitStructGeneric 
kVisitConsString 
kVisitSlicedString 
kVisitOddball 
kVisitCode 
kVisitMap 
kVisitPropertyCell 
kVisitSharedFunctionInfo 
kVisitJSFunction 
kVisitJSWeakMap 
kVisitJSRegExp 
kVisitorIdCount 
kMinObjectSizeInWords 

Definition at line 49 of file objects-visiting.h.

Member Function Documentation

StaticVisitorBase::VisitorId GetVisitorId ( int  instance_type,
int  instance_size 
)
static

Definition at line 42 of file objects-visiting.cc.

References v8::internal::BYTE_ARRAY_TYPE, v8::internal::CODE_TYPE, v8::internal::EXTERNAL_BYTE_ARRAY_TYPE, v8::internal::EXTERNAL_DOUBLE_ARRAY_TYPE, v8::internal::EXTERNAL_FLOAT_ARRAY_TYPE, v8::internal::EXTERNAL_INT_ARRAY_TYPE, v8::internal::EXTERNAL_PIXEL_ARRAY_TYPE, v8::internal::EXTERNAL_SHORT_ARRAY_TYPE, v8::internal::EXTERNAL_UNSIGNED_BYTE_ARRAY_TYPE, v8::internal::EXTERNAL_UNSIGNED_INT_ARRAY_TYPE, v8::internal::EXTERNAL_UNSIGNED_SHORT_ARRAY_TYPE, v8::internal::FILLER_TYPE, v8::internal::FIRST_NONSTRING_TYPE, v8::internal::FIXED_ARRAY_TYPE, v8::internal::FIXED_DOUBLE_ARRAY_TYPE, v8::internal::FOREIGN_TYPE, v8::internal::FREE_SPACE_TYPE, StaticVisitorBase::GetVisitorIdForSize(), v8::internal::HEAP_NUMBER_TYPE, v8::internal::JS_ARRAY_TYPE, v8::internal::JS_BUILTINS_OBJECT_TYPE, v8::internal::JS_CONTEXT_EXTENSION_OBJECT_TYPE, v8::internal::JS_DATE_TYPE, v8::internal::JS_FUNCTION_PROXY_TYPE, v8::internal::JS_FUNCTION_TYPE, v8::internal::JS_GLOBAL_OBJECT_TYPE, v8::internal::JS_GLOBAL_PROPERTY_CELL_TYPE, v8::internal::JS_GLOBAL_PROXY_TYPE, v8::internal::JS_MAP_TYPE, v8::internal::JS_MESSAGE_OBJECT_TYPE, v8::internal::JS_MODULE_TYPE, v8::internal::JS_OBJECT_TYPE, v8::internal::JS_PROXY_TYPE, v8::internal::JS_REGEXP_TYPE, v8::internal::JS_SET_TYPE, v8::internal::JS_VALUE_TYPE, v8::internal::JS_WEAK_MAP_TYPE, v8::internal::kAsciiStringTag, v8::internal::kConsStringTag, v8::internal::kExternalStringTag, v8::internal::kSeqStringTag, JSProxy::kSize, JSFunctionProxy::kSize, JSSet::kSize, JSMap::kSize, Foreign::kSize, v8::internal::kSlicedStringTag, v8::internal::kStringEncodingMask, v8::internal::kStringRepresentationMask, StaticVisitorBase::kVisitByteArray, StaticVisitorBase::kVisitCode, StaticVisitorBase::kVisitConsString, StaticVisitorBase::kVisitDataObject, StaticVisitorBase::kVisitDataObjectGeneric, StaticVisitorBase::kVisitFixedArray, StaticVisitorBase::kVisitFixedDoubleArray, StaticVisitorBase::kVisitFreeSpace, StaticVisitorBase::kVisitJSFunction, StaticVisitorBase::kVisitJSObject, StaticVisitorBase::kVisitJSObjectGeneric, StaticVisitorBase::kVisitJSRegExp, StaticVisitorBase::kVisitJSWeakMap, StaticVisitorBase::kVisitMap, StaticVisitorBase::kVisitOddball, StaticVisitorBase::kVisitorIdCount, StaticVisitorBase::kVisitPropertyCell, StaticVisitorBase::kVisitSeqAsciiString, StaticVisitorBase::kVisitSeqTwoByteString, StaticVisitorBase::kVisitSharedFunctionInfo, StaticVisitorBase::kVisitShortcutCandidate, StaticVisitorBase::kVisitSlicedString, StaticVisitorBase::kVisitStruct, StaticVisitorBase::kVisitStructGeneric, MAKE_STRUCT_CASE, v8::internal::MAP_TYPE, v8::internal::ODDBALL_TYPE, v8::internal::SHARED_FUNCTION_INFO_TYPE, STRUCT_LIST, and UNREACHABLE.

Referenced by Heap::AllocateMap(), Heap::AllocatePartialMap(), Factory::CopyMap(), and StaticVisitorBase::GetVisitorId().

static VisitorId GetVisitorId ( Map map)
inlinestatic
STATIC_ASSERT ( kVisitorIdCount<=  256)

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