Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(366)

Side by Side Diff: Source/bindings/core/v8/ScriptValueSerializer.h

Issue 1236473002: Fix virtual/override/final usage in Source/bindings/. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 ScriptValueSerializer_h 5 #ifndef ScriptValueSerializer_h
6 #define ScriptValueSerializer_h 6 #define ScriptValueSerializer_h
7 7
8 #include "bindings/core/v8/SerializationTag.h" 8 #include "bindings/core/v8/SerializationTag.h"
9 #include "bindings/core/v8/SerializedScriptValue.h" 9 #include "bindings/core/v8/SerializedScriptValue.h"
10 #include "bindings/core/v8/V8Binding.h" 10 #include "bindings/core/v8/V8Binding.h"
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 }; 235 };
236 236
237 // Dummy state that is used to signal serialization errors. 237 // Dummy state that is used to signal serialization errors.
238 class ErrorState final : public StateBase { 238 class ErrorState final : public StateBase {
239 public: 239 public:
240 ErrorState() 240 ErrorState()
241 : StateBase(v8Undefined(), 0) 241 : StateBase(v8Undefined(), 0)
242 { 242 {
243 } 243 }
244 244
245 virtual StateBase* advance(ScriptValueSerializer&) override 245 StateBase* advance(ScriptValueSerializer&) override
246 { 246 {
247 delete this; 247 delete this;
248 return 0; 248 return 0;
249 } 249 }
250 }; 250 };
251 251
252 template <typename T> 252 template <typename T>
253 class State : public StateBase { 253 class State : public StateBase {
254 public: 254 public:
255 v8::Local<T> composite() { return v8::Local<T>::Cast(StateBase::composit e()); } 255 v8::Local<T> composite() { return v8::Local<T>::Cast(StateBase::composit e()); }
(...skipping 28 matching lines...) Expand all
284 bool m_nameDone; 284 bool m_nameDone;
285 }; 285 };
286 286
287 class ObjectState final : public AbstractObjectState { 287 class ObjectState final : public AbstractObjectState {
288 public: 288 public:
289 ObjectState(v8::Local<v8::Object> object, StateBase* next) 289 ObjectState(v8::Local<v8::Object> object, StateBase* next)
290 : AbstractObjectState(object, next) 290 : AbstractObjectState(object, next)
291 { 291 {
292 } 292 }
293 293
294 virtual StateBase* advance(ScriptValueSerializer&) override; 294 StateBase* advance(ScriptValueSerializer&) override;
295 295
296 protected: 296 protected:
297 virtual StateBase* objectDone(unsigned numProperties, ScriptValueSeriali zer&) override; 297 StateBase* objectDone(unsigned numProperties, ScriptValueSerializer&) ov erride;
298 }; 298 };
299 299
300 class DenseArrayState final : public AbstractObjectState { 300 class DenseArrayState final : public AbstractObjectState {
301 public: 301 public:
302 DenseArrayState(v8::Local<v8::Array> array, v8::Local<v8::Array> propert yNames, StateBase* next, v8::Isolate* isolate) 302 DenseArrayState(v8::Local<v8::Array> array, v8::Local<v8::Array> propert yNames, StateBase* next, v8::Isolate* isolate)
303 : AbstractObjectState(array, next) 303 : AbstractObjectState(array, next)
304 , m_arrayIndex(0) 304 , m_arrayIndex(0)
305 , m_arrayLength(array->Length()) 305 , m_arrayLength(array->Length())
306 { 306 {
307 m_propertyNames = v8::Local<v8::Array>::New(isolate, propertyNames); 307 m_propertyNames = v8::Local<v8::Array>::New(isolate, propertyNames);
308 } 308 }
309 309
310 virtual StateBase* advance(ScriptValueSerializer&) override; 310 StateBase* advance(ScriptValueSerializer&) override;
311 311
312 protected: 312 protected:
313 virtual StateBase* objectDone(unsigned numProperties, ScriptValueSeriali zer&) override; 313 StateBase* objectDone(unsigned numProperties, ScriptValueSerializer&) ov erride;
314 314
315 private: 315 private:
316 uint32_t m_arrayIndex; 316 uint32_t m_arrayIndex;
317 uint32_t m_arrayLength; 317 uint32_t m_arrayLength;
318 }; 318 };
319 319
320 class SparseArrayState final : public AbstractObjectState { 320 class SparseArrayState final : public AbstractObjectState {
321 public: 321 public:
322 SparseArrayState(v8::Local<v8::Array> array, v8::Local<v8::Array> proper tyNames, StateBase* next, v8::Isolate* isolate) 322 SparseArrayState(v8::Local<v8::Array> array, v8::Local<v8::Array> proper tyNames, StateBase* next, v8::Isolate* isolate)
323 : AbstractObjectState(array, next) 323 : AbstractObjectState(array, next)
324 { 324 {
325 m_propertyNames = v8::Local<v8::Array>::New(isolate, propertyNames); 325 m_propertyNames = v8::Local<v8::Array>::New(isolate, propertyNames);
326 } 326 }
327 327
328 virtual StateBase* advance(ScriptValueSerializer&) override; 328 StateBase* advance(ScriptValueSerializer&) override;
329 329
330 protected: 330 protected:
331 virtual StateBase* objectDone(unsigned numProperties, ScriptValueSeriali zer&) override; 331 StateBase* objectDone(unsigned numProperties, ScriptValueSerializer&) ov erride;
332 }; 332 };
333 333
334 template <typename T> 334 template <typename T>
335 class CollectionState : public State<T> { 335 class CollectionState : public State<T> {
336 public: 336 public:
337 CollectionState(v8::Local<T> collection, StateBase* next) 337 CollectionState(v8::Local<T> collection, StateBase* next)
338 : State<T>(collection, next) 338 : State<T>(collection, next)
339 , m_entries(collection->AsArray()) 339 , m_entries(collection->AsArray())
340 , m_index(0) 340 , m_index(0)
341 , m_length(m_entries->Length()) 341 , m_length(m_entries->Length())
342 { 342 {
343 } 343 }
344 344
345 virtual StateBase* advance(ScriptValueSerializer&) override; 345 StateBase* advance(ScriptValueSerializer&) override;
346 346
347 private: 347 private:
348 v8::Local<v8::Array> m_entries; 348 v8::Local<v8::Array> m_entries;
349 uint32_t m_index; 349 uint32_t m_index;
350 uint32_t m_length; 350 uint32_t m_length;
351 }; 351 };
352 352
353 typedef CollectionState<v8::Map> MapState; 353 typedef CollectionState<v8::Map> MapState;
354 typedef CollectionState<v8::Set> SetState; 354 typedef CollectionState<v8::Set> SetState;
355 355
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
567 ScriptValueDeserializer(SerializedScriptValueReader& reader, MessagePortArra y* messagePorts, ArrayBufferContentsArray* arrayBufferContents) 567 ScriptValueDeserializer(SerializedScriptValueReader& reader, MessagePortArra y* messagePorts, ArrayBufferContentsArray* arrayBufferContents)
568 : m_reader(reader) 568 : m_reader(reader)
569 , m_transferredMessagePorts(messagePorts) 569 , m_transferredMessagePorts(messagePorts)
570 , m_arrayBufferContents(arrayBufferContents) 570 , m_arrayBufferContents(arrayBufferContents)
571 , m_arrayBuffers(arrayBufferContents ? arrayBufferContents->size() : 0) 571 , m_arrayBuffers(arrayBufferContents ? arrayBufferContents->size() : 0)
572 , m_version(0) 572 , m_version(0)
573 { 573 {
574 } 574 }
575 575
576 v8::Local<v8::Value> deserialize(); 576 v8::Local<v8::Value> deserialize();
577 virtual bool newSparseArray(uint32_t) override; 577 bool newSparseArray(uint32_t) override;
578 virtual bool newDenseArray(uint32_t length) override; 578 bool newDenseArray(uint32_t length) override;
579 virtual bool newMap() override; 579 bool newMap() override;
580 virtual bool newSet() override; 580 bool newSet() override;
581 virtual bool consumeTopOfStack(v8::Local<v8::Value>*) override; 581 bool consumeTopOfStack(v8::Local<v8::Value>*) override;
582 virtual bool newObject() override; 582 bool newObject() override;
583 virtual bool completeObject(uint32_t numProperties, v8::Local<v8::Value>*) o verride; 583 bool completeObject(uint32_t numProperties, v8::Local<v8::Value>*) override;
584 virtual bool completeSparseArray(uint32_t numProperties, uint32_t length, v8 ::Local<v8::Value>*) override; 584 bool completeSparseArray(uint32_t numProperties, uint32_t length, v8::Local< v8::Value>*) override;
585 virtual bool completeDenseArray(uint32_t numProperties, uint32_t length, v8: :Local<v8::Value>*) override; 585 bool completeDenseArray(uint32_t numProperties, uint32_t length, v8::Local<v 8::Value>*) override;
586 virtual bool completeMap(uint32_t length, v8::Local<v8::Value>*) override; 586 bool completeMap(uint32_t length, v8::Local<v8::Value>*) override;
587 virtual bool completeSet(uint32_t length, v8::Local<v8::Value>*) override; 587 bool completeSet(uint32_t length, v8::Local<v8::Value>*) override;
588 virtual void pushObjectReference(const v8::Local<v8::Value>&) override; 588 void pushObjectReference(const v8::Local<v8::Value>&) override;
589 virtual bool tryGetTransferredMessagePort(uint32_t index, v8::Local<v8::Valu e>*) override; 589 bool tryGetTransferredMessagePort(uint32_t index, v8::Local<v8::Value>*) ove rride;
590 virtual bool tryGetTransferredArrayBuffer(uint32_t index, v8::Local<v8::Valu e>*) override; 590 bool tryGetTransferredArrayBuffer(uint32_t index, v8::Local<v8::Value>*) ove rride;
591 virtual bool tryGetObjectFromObjectReference(uint32_t reference, v8::Local<v 8::Value>*) override; 591 bool tryGetObjectFromObjectReference(uint32_t reference, v8::Local<v8::Value >*) override;
592 virtual uint32_t objectReferenceCount() override; 592 uint32_t objectReferenceCount() override;
593 593
594 protected: 594 protected:
595 SerializedScriptValueReader& reader() { return m_reader; } 595 SerializedScriptValueReader& reader() { return m_reader; }
596 virtual bool read(v8::Local<v8::Value>*); 596 virtual bool read(v8::Local<v8::Value>*);
597 597
598 private: 598 private:
599 bool initializeObject(v8::Local<v8::Object>, uint32_t numProperties, v8::Loc al<v8::Value>*); 599 bool initializeObject(v8::Local<v8::Object>, uint32_t numProperties, v8::Loc al<v8::Value>*);
600 bool doDeserialize(); 600 bool doDeserialize();
601 void push(v8::Local<v8::Value> value) { m_stack.append(value); }; 601 void push(v8::Local<v8::Value> value) { m_stack.append(value); };
602 void pop(unsigned length) 602 void pop(unsigned length)
(...skipping 13 matching lines...) Expand all
616 Vector<uint32_t> m_openCompositeReferenceStack; 616 Vector<uint32_t> m_openCompositeReferenceStack;
617 MessagePortArray* m_transferredMessagePorts; 617 MessagePortArray* m_transferredMessagePorts;
618 ArrayBufferContentsArray* m_arrayBufferContents; 618 ArrayBufferContentsArray* m_arrayBufferContents;
619 Vector<v8::Local<v8::Value>> m_arrayBuffers; 619 Vector<v8::Local<v8::Value>> m_arrayBuffers;
620 uint32_t m_version; 620 uint32_t m_version;
621 }; 621 };
622 622
623 } // namespace blink 623 } // namespace blink
624 624
625 #endif // ScriptValueSerializer_h 625 #endif // ScriptValueSerializer_h
OLDNEW
« no previous file with comments | « Source/bindings/core/v8/ScriptStreamerTest.cpp ('k') | Source/bindings/core/v8/ScriptWrappable.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698