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

#include <serialize.h>

Inheritance diagram for SerializerDeserializer:
Collaboration diagram for SerializerDeserializer:

Static Public Member Functions

static void Iterate (ObjectVisitor *visitor)
 
static void SetSnapshotCacheSize (int size)
 

Protected Types

enum  Where {
  kNewObject = 0, kRootArray = 0x9, kPartialSnapshotCache = 0xa, kExternalReference = 0xb,
  kSkip = 0xc, kBackref = 0x10, kFromStart = 0x20, kPointedToMask = 0x3f
}
 
enum  HowToCode { kPlain = 0, kFromCode = 0x40, kHowToCodeMask = 0x40 }
 
enum  WhereToPoint { kStartOfObject = 0, kFirstInstruction = 0x80, kWhereToPointMask = 0x80 }
 

Static Protected Member Functions

static int CodeForRepeats (int repeats)
 
static int RepeatsForCode (int byte_code)
 
static int RootArrayConstantFromByteCode (int byte_code)
 
static bool SpaceIsLarge (int space)
 
static bool SpaceIsPaged (int space)
 

Static Protected Attributes

static const int kRawData = 0x30
 
static const int kSynchronize = 0x70
 
static const int kNativesStringResource = 0x71
 
static const int kNewPage = 0x72
 
static const int kRepeat = 0x73
 
static const int kConstantRepeat = 0x74
 
static const int kMaxRepeats = 0x7f - 0x73
 
static const int kRootArrayLowConstants = 0xb0
 
static const int kRootArrayHighConstants = 0xf0
 
static const int kRootArrayNumberOfConstantEncodings = 0x20
 
static const int kRootArrayNumberOfLowConstantEncodings = 0x10
 
static const int kLargeData = LAST_SPACE
 
static const int kLargeCode = kLargeData + 1
 
static const int kLargeFixedArray = kLargeCode + 1
 
static const int kNumberOfSpaces = kLargeFixedArray + 1
 
static const int kAnyOldSpace = -1
 
static const int kSpaceMask = 15
 

Detailed Description

Definition at line 210 of file serialize.h.

Member Enumeration Documentation

enum HowToCode
protected
Enumerator
kPlain 
kFromCode 
kHowToCodeMask 

Definition at line 236 of file serialize.h.

enum Where
protected
Enumerator
kNewObject 
kRootArray 
kPartialSnapshotCache 
kExternalReference 
kSkip 
kBackref 
kFromStart 
kPointedToMask 

Definition at line 217 of file serialize.h.

enum WhereToPoint
protected
Enumerator
kStartOfObject 
kFirstInstruction 
kWhereToPointMask 

Definition at line 244 of file serialize.h.

Member Function Documentation

static int CodeForRepeats ( int  repeats)
inlinestaticprotected
void Iterate ( ObjectVisitor *  visitor)
static

Definition at line 1203 of file serialize.cc.

Referenced by Heap::IterateStrongRoots().

static int RepeatsForCode ( int  byte_code)
inlinestaticprotected

Definition at line 272 of file serialize.h.

References ASSERT, and SerializerDeserializer::kConstantRepeat.

static int RootArrayConstantFromByteCode ( int  byte_code)
inlinestaticprotected
void SetSnapshotCacheSize ( int  size)
static

Definition at line 1215 of file serialize.cc.

static bool SpaceIsLarge ( int  space)
inlinestaticprotected
static bool SpaceIsPaged ( int  space)
inlinestaticprotected

Field Documentation

const int kAnyOldSpace = -1
staticprotected

Definition at line 293 of file serialize.h.

const int kConstantRepeat = 0x74
staticprotected

Definition at line 265 of file serialize.h.

Referenced by SerializerDeserializer::RepeatsForCode().

const int kLargeCode = kLargeData + 1
staticprotected

Definition at line 290 of file serialize.h.

Referenced by Serializer::SpaceOfObject().

const int kLargeData = LAST_SPACE
staticprotected

Definition at line 289 of file serialize.h.

Referenced by SerializerDeserializer::SpaceIsLarge(), and Serializer::SpaceOfObject().

const int kLargeFixedArray = kLargeCode + 1
staticprotected

Definition at line 291 of file serialize.h.

Referenced by Serializer::SpaceOfObject().

const int kMaxRepeats = 0x7f - 0x73
staticprotected
const int kNativesStringResource = 0x71
staticprotected

Definition at line 262 of file serialize.h.

Referenced by Serializer::ObjectSerializer::VisitExternalAsciiString().

const int kNewPage = 0x72
staticprotected

Definition at line 263 of file serialize.h.

Referenced by Serializer::ObjectSerializer::Serialize().

const int kNumberOfSpaces = kLargeFixedArray + 1
staticprotected

Definition at line 292 of file serialize.h.

Referenced by Serializer::Allocate().

const int kRawData = 0x30
staticprotected

Definition at line 252 of file serialize.h.

Referenced by Serializer::VisitPointers().

const int kRepeat = 0x73
staticprotected

Definition at line 264 of file serialize.h.

Referenced by Serializer::ObjectSerializer::VisitPointers().

const int kRootArrayHighConstants = 0xf0
staticprotected

Definition at line 278 of file serialize.h.

Referenced by Serializer::PutRoot().

const int kRootArrayLowConstants = 0xb0
staticprotected

Definition at line 276 of file serialize.h.

Referenced by Serializer::PutRoot().

const int kRootArrayNumberOfConstantEncodings = 0x20
staticprotected
const int kRootArrayNumberOfLowConstantEncodings = 0x10
staticprotected

Definition at line 281 of file serialize.h.

Referenced by Serializer::PutRoot().

const int kSpaceMask = 15
staticprotected

Definition at line 296 of file serialize.h.

const int kSynchronize = 0x70
staticprotected

Definition at line 259 of file serialize.h.


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