OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef SerializedScriptValueForModulesFactory_h | 5 #ifndef SerializedScriptValueForModulesFactory_h |
6 #define SerializedScriptValueForModulesFactory_h | 6 #define SerializedScriptValueForModulesFactory_h |
7 | 7 |
8 #include "bindings/core/v8/SerializedScriptValueFactory.h" | 8 #include "bindings/core/v8/SerializedScriptValueFactory.h" |
9 #include "bindings/modules/v8/TransferablesForModules.h" | |
10 #include "wtf/Noncopyable.h" | 9 #include "wtf/Noncopyable.h" |
11 | 10 |
12 namespace blink { | 11 namespace blink { |
13 | 12 |
14 class SerializedScriptValueForModulesFactory final : public SerializedScriptValu
eFactory { | 13 class SerializedScriptValueForModulesFactory final : public SerializedScriptValu
eFactory { |
15 USING_FAST_MALLOC(SerializedScriptValueForModulesFactory); | 14 USING_FAST_MALLOC(SerializedScriptValueForModulesFactory); |
16 WTF_MAKE_NONCOPYABLE(SerializedScriptValueForModulesFactory); | 15 WTF_MAKE_NONCOPYABLE(SerializedScriptValueForModulesFactory); |
17 public: | 16 public: |
18 SerializedScriptValueForModulesFactory() : SerializedScriptValueFactory() {
} | 17 SerializedScriptValueForModulesFactory() : SerializedScriptValueFactory() {
} |
19 | 18 |
20 PassRefPtr<SerializedScriptValue> create(v8::Isolate*, v8::Local<v8::Value>,
Transferables*, WebBlobInfoArray*, ExceptionState&) override; | 19 PassRefPtr<SerializedScriptValue> create(v8::Isolate*, v8::Local<v8::Value>,
Transferables*, WebBlobInfoArray*, ExceptionState&) override; |
21 PassRefPtr<SerializedScriptValue> create(v8::Isolate*, const String&) overri
de; | 20 PassRefPtr<SerializedScriptValue> create(v8::Isolate*, const String&) overri
de; |
22 bool extractTransferables(v8::Isolate*, Transferables&, ExceptionState&, v8:
:Local<v8::Value>&, unsigned) override; | |
23 Transferables* createTransferables() override { return new TransferablesForM
odules; } | |
24 | 21 |
25 protected: | 22 protected: |
26 ScriptValueSerializer::Status doSerialize(v8::Local<v8::Value>, SerializedSc
riptValueWriter&, Transferables*, WebBlobInfoArray*, BlobDataHandleMap&, v8::Try
Catch&, String& errorMessage, v8::Isolate*) override; | 23 ScriptValueSerializer::Status doSerialize(v8::Local<v8::Value>, SerializedSc
riptValueWriter&, Transferables*, WebBlobInfoArray*, BlobDataHandleMap&, v8::Try
Catch&, String& errorMessage, v8::Isolate*) override; |
27 | 24 |
28 v8::Local<v8::Value> deserialize(String& data, BlobDataHandleMap& blobDataHa
ndles, ArrayBufferContentsArray*, ImageBitmapContentsArray*, v8::Isolate*, Messa
gePortArray* messagePorts, const WebBlobInfoArray*) override; | 25 v8::Local<v8::Value> deserialize(String& data, BlobDataHandleMap& blobDataHa
ndles, ArrayBufferContentsArray*, ImageBitmapContentsArray*, v8::Isolate*, Messa
gePortArray* messagePorts, const WebBlobInfoArray*) override; |
29 | |
30 void transferData(v8::Isolate*, Transferables*, ExceptionState&, SerializedS
criptValue*, SerializedScriptValueWriter&) override; | |
31 }; | 26 }; |
32 | 27 |
33 } // namespace blink | 28 } // namespace blink |
34 | 29 |
35 #endif // SerializedScriptValueForModulesFactory_h | 30 #endif // SerializedScriptValueForModulesFactory_h |
36 | 31 |
OLD | NEW |