| Index: Source/bindings/core/v8/ScriptValueSerializer.h
|
| diff --git a/Source/bindings/core/v8/ScriptValueSerializer.h b/Source/bindings/core/v8/ScriptValueSerializer.h
|
| index b3da7b3cf6d400db94f6781667916780062c964f..e62ba77bdba59ac53b3d3009d7ac535dbd044f9a 100644
|
| --- a/Source/bindings/core/v8/ScriptValueSerializer.h
|
| +++ b/Source/bindings/core/v8/ScriptValueSerializer.h
|
| @@ -21,6 +21,7 @@ namespace blink {
|
| class CompositorProxy;
|
| class DOMArrayBuffer;
|
| class DOMArrayBufferView;
|
| +class DOMSharedArrayBuffer;
|
| class File;
|
| class FileList;
|
|
|
| @@ -134,6 +135,7 @@ public:
|
| void writeRegExp(v8::Local<v8::String> pattern, v8::RegExp::Flags);
|
| void writeTransferredMessagePort(uint32_t index);
|
| void writeTransferredArrayBuffer(uint32_t index);
|
| + void writeTransferredSharedArrayBuffer(uint32_t index);
|
| void writeObjectReference(uint32_t reference);
|
| void writeObject(uint32_t numProperties);
|
| void writeSparseArray(uint32_t numProperties, uint32_t length);
|
| @@ -194,7 +196,7 @@ public:
|
| JSException
|
| };
|
|
|
| - ScriptValueSerializer(SerializedScriptValueWriter&, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, WebBlobInfoArray*, BlobDataHandleMap& blobDataHandles, v8::TryCatch&, ScriptState*);
|
| + ScriptValueSerializer(SerializedScriptValueWriter&, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, SharedArrayBufferArray* sharedArrayBuffers, WebBlobInfoArray*, BlobDataHandleMap& blobDataHandles, v8::TryCatch&, ScriptState*);
|
| v8::Isolate* isolate() { return m_scriptState->isolate(); }
|
| v8::Local<v8::Context> context() { return m_scriptState->context(); }
|
|
|
| @@ -368,6 +370,7 @@ private:
|
| StateBase* writeAndGreyArrayBufferView(v8::Local<v8::Object>, StateBase* next);
|
| StateBase* writeArrayBuffer(v8::Local<v8::Value>, StateBase* next);
|
| StateBase* writeTransferredArrayBuffer(v8::Local<v8::Value>, uint32_t index, StateBase* next);
|
| + StateBase* writeTransferredSharedArrayBuffer(v8::Local<v8::Value>, uint32_t index, StateBase* next);
|
| static bool shouldSerializeDensely(uint32_t length, uint32_t propertyCount);
|
|
|
| StateBase* startArrayState(v8::Local<v8::Array>, StateBase* next);
|
| @@ -397,6 +400,7 @@ private:
|
| ObjectPool m_objectPool;
|
| ObjectPool m_transferredMessagePorts;
|
| ObjectPool m_transferredArrayBuffers;
|
| + ObjectPool m_transferredSharedArrayBuffers;
|
| uint32_t m_nextObjectReference;
|
| WebBlobInfoArray* m_blobInfo;
|
| BlobDataHandleMap& m_blobDataHandles;
|
| @@ -416,6 +420,7 @@ public:
|
| virtual bool tryGetObjectFromObjectReference(uint32_t reference, v8::Local<v8::Value>*) = 0;
|
| virtual bool tryGetTransferredMessagePort(uint32_t index, v8::Local<v8::Value>*) = 0;
|
| virtual bool tryGetTransferredArrayBuffer(uint32_t index, v8::Local<v8::Value>*) = 0;
|
| + virtual bool tryGetTransferredSharedArrayBuffer(uint32_t index, v8::Local<v8::Value>*) = 0;
|
| virtual bool newSparseArray(uint32_t length) = 0;
|
| virtual bool newDenseArray(uint32_t length) = 0;
|
| virtual bool newObject() = 0;
|
| @@ -550,6 +555,7 @@ public:
|
| virtual void pushObjectReference(const v8::Local<v8::Value>&) override;
|
| virtual bool tryGetTransferredMessagePort(uint32_t index, v8::Local<v8::Value>*) override;
|
| virtual bool tryGetTransferredArrayBuffer(uint32_t index, v8::Local<v8::Value>*) override;
|
| + virtual bool tryGetTransferredSharedArrayBuffer(uint32_t index, v8::Local<v8::Value>*) override;
|
| virtual bool tryGetObjectFromObjectReference(uint32_t reference, v8::Local<v8::Value>*) override;
|
| virtual uint32_t objectReferenceCount() override;
|
|
|
|
|