V8 API Reference Guide generated from the header files
Data Structures | Public Member Functions
v8::ValueDeserializer Class Reference

#include <v8.h>

Data Structures

class  Delegate
 

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< bool > ReadHeader (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.

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.

◆ ReadHeader()

V8_WARN_UNUSED_RESULT 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.

◆ ReadUint32()

V8_WARN_UNUSED_RESULT 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.

◆ ReadValue()

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

Deserializes a JavaScript value from the buffer.

◆ SetExpectInlineWasm()

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

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

◆ 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.

◆ 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.

◆ 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.


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