V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
v8::ValueDeserializer Class Reference

#include <v8.h>

Classes

class  Delegate
 
struct  PrivateData
 

Public Member Functions

 ValueDeserializer (Isolate *isolate, const uint8_t *data, size_t size)
 
 ValueDeserializer (Isolate *isolate, const uint8_t *data, size_t size, Delegate *delegate)
 
V8_WARN_UNUSED_RESULT Maybe< boolReadHeader (Local< Context > context)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueReadValue (Local< Context > context)
 
void TransferArrayBuffer (uint32_t transfer_id, Local< ArrayBuffer > array_buffer)
 
void TransferSharedArrayBuffer (uint32_t id, Local< SharedArrayBuffer > shared_array_buffer)
 
void SetSupportsLegacyWireFormat (bool supports_legacy_wire_format)
 
void SetExpectInlineWasm (bool allow_inline_wasm)
 
uint32_t GetWireFormatVersion () const
 
V8_WARN_UNUSED_RESULT bool ReadUint32 (uint32_t *value)
 
V8_WARN_UNUSED_RESULT bool ReadUint64 (uint64_t *value)
 
V8_WARN_UNUSED_RESULT bool ReadDouble (double *value)
 
V8_WARN_UNUSED_RESULT bool ReadRawBytes (size_t length, const void **data)
 

Detailed Description

Deserializes values from data written with ValueSerializer, or a compatible implementation.

WARNING: This API is under development, and changes (including incompatible changes to the API or wire format) may occur without notice until this warning is removed.

Definition at line 2014 of file v8.h.

Member Function Documentation

◆ GetWireFormatVersion()

uint32_t v8::ValueDeserializer::GetWireFormatVersion ( ) const

Reads the underlying wire format version. Likely mostly to be useful to legacy code reading old wire format versions. Must be called after ReadHeader.

Definition at line 3240 of file api.cc.

◆ ReadHeader()

Maybe< bool > v8::ValueDeserializer::ReadHeader ( Local< Context >  context)

Reads and validates a header (including the format version). May, for example, reject an invalid or unsupported wire format.

Definition at line 3200 of file api.cc.

◆ ReadUint32()

bool v8::ValueDeserializer::ReadUint32 ( uint32_t value)

Reads raw data in various common formats to the buffer. Note that integer types are read in base-128 varint format, not with a binary copy. For use during an override of Delegate::ReadHostObject.

Definition at line 3275 of file api.cc.

◆ ReadValue()

MaybeLocal< Value > v8::ValueDeserializer::ReadValue ( Local< Context >  context)

Deserializes a JavaScript value from the buffer.

Definition at line 3245 of file api.cc.

◆ SetExpectInlineWasm()

void v8::ValueDeserializer::SetExpectInlineWasm ( bool  allow_inline_wasm)

Expect inline wasm in the data stream (rather than in-memory transfer)

Definition at line 3236 of file api.cc.

◆ SetSupportsLegacyWireFormat()

void v8::ValueDeserializer::SetSupportsLegacyWireFormat ( bool  supports_legacy_wire_format)

Must be called before ReadHeader to enable support for reading the legacy wire format (i.e., which predates this being shipped).

Don't use this unless you need to read data written by previous versions of blink::ScriptValueSerializer.

Definition at line 3231 of file api.cc.

◆ TransferArrayBuffer()

void v8::ValueDeserializer::TransferArrayBuffer ( uint32_t  transfer_id,
Local< ArrayBuffer array_buffer 
)

Accepts the array buffer corresponding to the one passed previously to ValueSerializer::TransferArrayBuffer.

Definition at line 3261 of file api.cc.

◆ TransferSharedArrayBuffer()

void v8::ValueDeserializer::TransferSharedArrayBuffer ( uint32_t  id,
Local< SharedArrayBuffer shared_array_buffer 
)

Similar to TransferArrayBuffer, but for SharedArrayBuffer. The id is not necessarily in the same namespace as unshared ArrayBuffer objects.

Definition at line 3268 of file api.cc.


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