v8  3.14.5(node0.10.28)
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 int nop ()
 

Protected Types

enum  Where {
  kNewObject = 0, kRootArray = 0x9, kPartialSnapshotCache = 0xa, kExternalReference = 0xb,
  kSkip = 0xc, kNop = 0xd, kBackref = 0x10, kBackrefWithSkip = 0x18,
  kPointedToMask = 0x3f
}
 
enum  HowToCode { kPlain = 0, kFromCode = 0x40, kHowToCodeMask = 0x40 }
 
enum  WithSkip { kNoSkipDistance = 0, kHasSkipDistance = 0x40, kWithSkipMask = 0x40 }
 
enum  WhereToPoint { kStartOfObject = 0, kInnerPointer = 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 Protected Attributes

static const int kRawData = 0x20
 
static const int kSynchronize = 0x70
 
static const int kNativesStringResource = 0x71
 
static const int kRepeat = 0x72
 
static const int kConstantRepeat = 0x73
 
static const int kMaxRepeats = 0x7f - 0x72
 
static const int kRootArrayConstants = 0xa0
 
static const int kRootArrayNumberOfConstantEncodings = 0x20
 
static const int kNumberOfSpaces = LO_SPACE
 
static const int kAnyOldSpace = -1
 
static const int kSpaceMask = 7
 

Detailed Description

Definition at line 207 of file serialize.h.

Member Enumeration Documentation

enum HowToCode
protected
Enumerator
kPlain 
kFromCode 
kHowToCodeMask 

Definition at line 233 of file serialize.h.

enum Where
protected
Enumerator
kNewObject 
kRootArray 
kPartialSnapshotCache 
kExternalReference 
kSkip 
kNop 
kBackref 
kBackrefWithSkip 
kPointedToMask 

Definition at line 215 of file serialize.h.

enum WhereToPoint
protected
Enumerator
kStartOfObject 
kInnerPointer 
kWhereToPointMask 

Definition at line 248 of file serialize.h.

enum WithSkip
protected
Enumerator
kNoSkipDistance 
kHasSkipDistance 
kWithSkipMask 

Definition at line 241 of file serialize.h.

Member Function Documentation

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

Definition at line 211 of file serialize.h.

References SerializerDeserializer::kNop.

Referenced by SnapshotByteSource::AtEOF().

static int RepeatsForCode ( int  byte_code)
inlinestaticprotected

Definition at line 278 of file serialize.h.

References ASSERT, and SerializerDeserializer::kConstantRepeat.

static int RootArrayConstantFromByteCode ( int  byte_code)
inlinestaticprotected

Definition at line 285 of file serialize.h.

Field Documentation

const int kAnyOldSpace = -1
staticprotected

Definition at line 290 of file serialize.h.

const int kConstantRepeat = 0x73
staticprotected

Definition at line 271 of file serialize.h.

Referenced by SerializerDeserializer::RepeatsForCode().

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

Definition at line 269 of file serialize.h.

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

const int kNumberOfSpaces = LO_SPACE
staticprotected
const int kRawData = 0x20
staticprotected

Definition at line 259 of file serialize.h.

Referenced by Serializer::VisitPointers().

const int kRepeat = 0x72
staticprotected

Definition at line 270 of file serialize.h.

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

const int kRootArrayConstants = 0xa0
staticprotected

Definition at line 282 of file serialize.h.

Referenced by Serializer::PutRoot().

const int kRootArrayNumberOfConstantEncodings = 0x20
staticprotected
const int kSpaceMask = 7
staticprotected

Definition at line 293 of file serialize.h.

const int kSynchronize = 0x70
staticprotected

Definition at line 266 of file serialize.h.


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