OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009, 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2009, 2010 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 15 matching lines...) Expand all Loading... |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef SerializedScriptValue_h | 31 #ifndef SerializedScriptValue_h |
32 #define SerializedScriptValue_h | 32 #define SerializedScriptValue_h |
33 | 33 |
34 #include <memory> | 34 #include <memory> |
35 | 35 |
| 36 #include "bindings/core/v8/NativeValueTraits.h" |
36 #include "bindings/core/v8/ScriptValue.h" | 37 #include "bindings/core/v8/ScriptValue.h" |
37 #include "bindings/core/v8/Transferables.h" | 38 #include "bindings/core/v8/Transferables.h" |
38 #include "core/CoreExport.h" | 39 #include "core/CoreExport.h" |
39 #include "v8/include/v8.h" | 40 #include "v8/include/v8.h" |
40 #include "wtf/HashMap.h" | 41 #include "wtf/HashMap.h" |
41 #include "wtf/ThreadSafeRefCounted.h" | 42 #include "wtf/ThreadSafeRefCounted.h" |
42 #include "wtf/allocator/Partitions.h" | 43 #include "wtf/allocator/Partitions.h" |
43 #include "wtf/typed_arrays/ArrayBufferContents.h" | 44 #include "wtf/typed_arrays/ArrayBufferContents.h" |
44 | 45 |
45 namespace blink { | 46 namespace blink { |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 | 176 |
176 DataBufferPtr m_dataBuffer; | 177 DataBufferPtr m_dataBuffer; |
177 size_t m_dataBufferSize = 0; | 178 size_t m_dataBufferSize = 0; |
178 | 179 |
179 std::unique_ptr<ArrayBufferContentsArray> m_arrayBufferContentsArray; | 180 std::unique_ptr<ArrayBufferContentsArray> m_arrayBufferContentsArray; |
180 std::unique_ptr<ImageBitmapContentsArray> m_imageBitmapContentsArray; | 181 std::unique_ptr<ImageBitmapContentsArray> m_imageBitmapContentsArray; |
181 BlobDataHandleMap m_blobDataHandles; | 182 BlobDataHandleMap m_blobDataHandles; |
182 intptr_t m_externallyAllocatedMemory; | 183 intptr_t m_externallyAllocatedMemory; |
183 }; | 184 }; |
184 | 185 |
| 186 template <> |
| 187 struct NativeValueTraits<SerializedScriptValue> |
| 188 : public NativeValueTraitsBase<SerializedScriptValue> { |
| 189 CORE_EXPORT static inline PassRefPtr<SerializedScriptValue> nativeValue( |
| 190 v8::Isolate* isolate, |
| 191 v8::Local<v8::Value> value, |
| 192 ExceptionState& exceptionState) { |
| 193 return SerializedScriptValue::serialize(isolate, value, nullptr, nullptr, |
| 194 exceptionState); |
| 195 } |
| 196 }; |
| 197 |
185 } // namespace blink | 198 } // namespace blink |
186 | 199 |
187 #endif // SerializedScriptValue_h | 200 #endif // SerializedScriptValue_h |
OLD | NEW |