v8  3.14.5(node0.10.48)
V8 is Google's open source JavaScript engine
Internals Class Reference

#include <v8.h>

Static Public Member Functions

static bool HasHeapObjectTag (internal::Object *value)
 
static bool HasSmiTag (internal::Object *value)
 
static int SmiValue (internal::Object *value)
 
static int GetInstanceType (internal::Object *obj)
 
static int GetOddballKind (internal::Object *obj)
 
static void * GetExternalPointerFromSmi (internal::Object *value)
 
static void * GetExternalPointer (internal::Object *obj)
 
static bool IsExternalTwoByteString (int instance_type)
 
static bool IsInitialized (v8::Isolate *isolate)
 
static void SetEmbedderData (v8::Isolate *isolate, void *data)
 
static void * GetEmbedderData (v8::Isolate *isolate)
 
static internal::Object ** GetRoot (v8::Isolate *isolate, int index)
 
template<typename T >
static T ReadField (Object *ptr, int offset)
 
static bool CanCastToHeapObject (void *o)
 
static bool CanCastToHeapObject (Context *o)
 
static bool CanCastToHeapObject (String *o)
 
static bool CanCastToHeapObject (Object *o)
 
static bool CanCastToHeapObject (Message *o)
 
static bool CanCastToHeapObject (StackTrace *o)
 
static bool CanCastToHeapObject (StackFrame *o)
 

Static Public Attributes

static const int kHeapObjectMapOffset = 0
 
static const int kMapInstanceTypeOffset = 1 * kApiPointerSize + kApiIntSize
 
static const int kStringResourceOffset = 3 * kApiPointerSize
 
static const int kOddballKindOffset = 3 * kApiPointerSize
 
static const int kForeignAddressOffset = kApiPointerSize
 
static const int kJSObjectHeaderSize = 3 * kApiPointerSize
 
static const int kFullStringRepresentationMask = 0x07
 
static const int kStringEncodingMask = 0x4
 
static const int kExternalTwoByteRepresentationTag = 0x02
 
static const int kExternalAsciiRepresentationTag = 0x06
 
static const int kIsolateStateOffset = 0
 
static const int kIsolateEmbedderDataOffset = 1 * kApiPointerSize
 
static const int kIsolateRootsOffset = 3 * kApiPointerSize
 
static const int kUndefinedValueRootIndex = 5
 
static const int kNullValueRootIndex = 7
 
static const int kTrueValueRootIndex = 8
 
static const int kFalseValueRootIndex = 9
 
static const int kEmptySymbolRootIndex = 117
 
static const int kJSObjectType = 0xaa
 
static const int kFirstNonstringType = 0x80
 
static const int kOddballType = 0x82
 
static const int kForeignType = 0x85
 
static const int kUndefinedOddballKind = 5
 
static const int kNullOddballKind = 3
 

Detailed Description

This class exports constants and functionality from within v8 that is necessary to implement inline functions in the v8 api. Don't depend on functions and constants defined here.

Definition at line 4071 of file v8.h.

Member Function Documentation

static bool CanCastToHeapObject ( void *  o)
inlinestatic

Definition at line 4176 of file v8.h.

static bool CanCastToHeapObject ( Context o)
inlinestatic

Definition at line 4177 of file v8.h.

static bool CanCastToHeapObject ( String o)
inlinestatic

Definition at line 4178 of file v8.h.

static bool CanCastToHeapObject ( Object o)
inlinestatic

Definition at line 4179 of file v8.h.

static bool CanCastToHeapObject ( Message o)
inlinestatic

Definition at line 4180 of file v8.h.

static bool CanCastToHeapObject ( StackTrace o)
inlinestatic

Definition at line 4181 of file v8.h.

static bool CanCastToHeapObject ( StackFrame o)
inlinestatic

Definition at line 4182 of file v8.h.

static void* GetEmbedderData ( v8::Isolate isolate)
inlinestatic

Definition at line 4159 of file v8.h.

References Internals::kIsolateEmbedderDataOffset.

Referenced by Isolate::GetData().

static void* GetExternalPointer ( internal::Object *  obj)
inlinestatic
static void* GetExternalPointerFromSmi ( internal::Object *  value)
inlinestatic

Definition at line 4128 of file v8.h.

References v8::internal::kPointerToSmiShift.

Referenced by Internals::GetExternalPointer().

static int GetOddballKind ( internal::Object *  obj)
inlinestatic
static internal::Object** GetRoot ( v8::Isolate isolate,
int  index 
)
inlinestatic
static bool HasHeapObjectTag ( internal::Object *  value)
inlinestatic

Definition at line 4104 of file v8.h.

References v8::internal::kHeapObjectTag, and v8::internal::kHeapObjectTagMask.

static bool HasSmiTag ( internal::Object *  value)
inlinestatic

Definition at line 4109 of file v8.h.

References v8::internal::kSmiTag, and v8::internal::kSmiTagMask.

Referenced by Internals::GetExternalPointer().

static bool IsExternalTwoByteString ( int  instance_type)
inlinestatic
static bool IsInitialized ( v8::Isolate isolate)
inlinestatic

Definition at line 4148 of file v8.h.

References Internals::kIsolateStateOffset.

Referenced by String::Empty(), v8::False(), v8::Null(), v8::True(), and v8::Undefined().

static void SetEmbedderData ( v8::Isolate isolate,
void *  data 
)
inlinestatic

Definition at line 4153 of file v8.h.

References Internals::kIsolateEmbedderDataOffset.

Referenced by Isolate::SetData().

static int SmiValue ( internal::Object *  value)
inlinestatic

Definition at line 4113 of file v8.h.

References SmiTagging< 8 >::SmiToInt().

Referenced by Internals::GetOddballKind().

Field Documentation

const int kEmptySymbolRootIndex = 117
static

Definition at line 4094 of file v8.h.

Referenced by String::Empty().

const int kExternalAsciiRepresentationTag = 0x06
static

Definition at line 4085 of file v8.h.

Referenced by String::GetExternalStringResourceBase().

const int kExternalTwoByteRepresentationTag = 0x02
static
const int kFalseValueRootIndex = 9
static

Definition at line 4093 of file v8.h.

Referenced by v8::False().

const int kFirstNonstringType = 0x80
static

Definition at line 4097 of file v8.h.

const int kForeignAddressOffset = kApiPointerSize
static

Definition at line 4080 of file v8.h.

Referenced by Internals::GetExternalPointer().

const int kForeignType = 0x85
static

Definition at line 4099 of file v8.h.

Referenced by Internals::GetExternalPointer().

const int kFullStringRepresentationMask = 0x07
static
const int kHeapObjectMapOffset = 0
static

Definition at line 4075 of file v8.h.

Referenced by Internals::GetInstanceType().

const int kIsolateEmbedderDataOffset = 1 * kApiPointerSize
static

Definition at line 4088 of file v8.h.

Referenced by Internals::GetEmbedderData(), and Internals::SetEmbedderData().

const int kIsolateRootsOffset = 3 * kApiPointerSize
static

Definition at line 4089 of file v8.h.

Referenced by Internals::GetRoot().

const int kIsolateStateOffset = 0
static

Definition at line 4087 of file v8.h.

Referenced by Internals::IsInitialized().

const int kJSObjectHeaderSize = 3 * kApiPointerSize
static

Definition at line 4081 of file v8.h.

Referenced by Object::GetPointerFromInternalField().

const int kJSObjectType = 0xaa
static

Definition at line 4096 of file v8.h.

Referenced by Object::GetPointerFromInternalField().

const int kMapInstanceTypeOffset = 1 * kApiPointerSize + kApiIntSize
static

Definition at line 4076 of file v8.h.

Referenced by Internals::GetInstanceType().

const int kNullOddballKind = 3
static

Definition at line 4102 of file v8.h.

const int kNullValueRootIndex = 7
static

Definition at line 4091 of file v8.h.

Referenced by v8::Null().

const int kOddballKindOffset = 3 * kApiPointerSize
static

Definition at line 4079 of file v8.h.

Referenced by Internals::GetOddballKind().

const int kOddballType = 0x82
static

Definition at line 4098 of file v8.h.

const int kStringEncodingMask = 0x4
static

Definition at line 4083 of file v8.h.

Referenced by String::GetExternalStringResourceBase().

const int kStringResourceOffset = 3 * kApiPointerSize
static
const int kTrueValueRootIndex = 8
static

Definition at line 4092 of file v8.h.

Referenced by v8::True().

const int kUndefinedOddballKind = 5
static

Definition at line 4101 of file v8.h.

const int kUndefinedValueRootIndex = 5
static

Definition at line 4090 of file v8.h.

Referenced by v8::Undefined().


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