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

Side by Side Diff: Source/bindings/v8/Dictionary.h

Issue 208313010: Replace raw pointers to GC allocated objects by members in stack allocated objects. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 class MediaKeyError; 52 class MediaKeyError;
53 class Notification; 53 class Notification;
54 class SpeechRecognitionError; 54 class SpeechRecognitionError;
55 class SpeechRecognitionResult; 55 class SpeechRecognitionResult;
56 class SpeechRecognitionResultList; 56 class SpeechRecognitionResultList;
57 class Storage; 57 class Storage;
58 class TrackBase; 58 class TrackBase;
59 class VoidCallback; 59 class VoidCallback;
60 60
61 class Dictionary { 61 class Dictionary {
62 public: 62 public:
wibling-chromium 2014/03/24 08:18:37 Can't we add STACK_ALLOCATED() here?
zerny-chromium 2014/03/24 08:32:28 Good point. I'll add that and remove the explicit
zerny-chromium 2014/03/24 10:08:24 QQ: it needs to be ALLOW_ONLY_INLINE_ALLOCATION().
63 Dictionary(); 63 Dictionary();
64 Dictionary(const v8::Handle<v8::Value>& options, v8::Isolate*); 64 Dictionary(const v8::Handle<v8::Value>& options, v8::Isolate*);
65 ~Dictionary(); 65 ~Dictionary();
66 66
67 Dictionary& operator=(const Dictionary&); 67 Dictionary& operator=(const Dictionary&);
68 68
69 bool isObject() const; 69 bool isObject() const;
70 bool isUndefinedOrNull() const; 70 bool isUndefinedOrNull() const;
71 71
72 bool get(const String&, bool&) const; 72 bool get(const String&, bool&) const;
(...skipping 10 matching lines...) Expand all
83 bool get(const String&, unsigned long long&) const; 83 bool get(const String&, unsigned long long&) const;
84 bool get(const String&, RefPtr<DOMWindow>&) const; 84 bool get(const String&, RefPtr<DOMWindow>&) const;
85 bool get(const String&, RefPtrWillBeMember<Storage>&) const; 85 bool get(const String&, RefPtrWillBeMember<Storage>&) const;
86 bool get(const String&, MessagePortArray&) const; 86 bool get(const String&, MessagePortArray&) const;
87 bool get(const String&, RefPtr<Uint8Array>&) const; 87 bool get(const String&, RefPtr<Uint8Array>&) const;
88 bool get(const String&, RefPtr<ArrayBufferView>&) const; 88 bool get(const String&, RefPtr<ArrayBufferView>&) const;
89 bool get(const String&, RefPtr<MIDIPort>&) const; 89 bool get(const String&, RefPtr<MIDIPort>&) const;
90 bool get(const String&, RefPtr<MediaKeyError>&) const; 90 bool get(const String&, RefPtr<MediaKeyError>&) const;
91 bool get(const String&, RefPtr<TrackBase>&) const; 91 bool get(const String&, RefPtr<TrackBase>&) const;
92 bool get(const String&, RefPtr<SpeechRecognitionError>&) const; 92 bool get(const String&, RefPtr<SpeechRecognitionError>&) const;
93 bool get(const String&, RefPtrWillBeRawPtr<SpeechRecognitionResult>&) const; 93 bool get(const String&, RefPtrWillBeMember<SpeechRecognitionResult>&) const;
94 bool get(const String&, RefPtrWillBeRawPtr<SpeechRecognitionResultList>&) co nst; 94 bool get(const String&, RefPtrWillBeMember<SpeechRecognitionResultList>&) co nst;
95 bool get(const String&, RefPtrWillBeMember<Gamepad>&) const; 95 bool get(const String&, RefPtrWillBeMember<Gamepad>&) const;
96 bool get(const String&, RefPtr<MediaStream>&) const; 96 bool get(const String&, RefPtr<MediaStream>&) const;
97 bool get(const String&, RefPtr<EventTarget>&) const; 97 bool get(const String&, RefPtr<EventTarget>&) const;
98 bool get(const String&, HashSet<AtomicString>&) const; 98 bool get(const String&, HashSet<AtomicString>&) const;
99 bool get(const String&, Dictionary&) const; 99 bool get(const String&, Dictionary&) const;
100 bool get(const String&, Vector<String>&) const; 100 bool get(const String&, Vector<String>&) const;
101 bool get(const String&, ArrayValue&) const; 101 bool get(const String&, ArrayValue&) const;
102 bool get(const String&, RefPtrWillBeRawPtr<DOMError>&) const; 102 bool get(const String&, RefPtrWillBeMember<DOMError>&) const;
103 bool get(const String&, OwnPtr<VoidCallback>&) const; 103 bool get(const String&, OwnPtr<VoidCallback>&) const;
104 bool get(const String&, v8::Local<v8::Value>&) const; 104 bool get(const String&, v8::Local<v8::Value>&) const;
105 105
106 class ConversionContext { 106 class ConversionContext {
107 public: 107 public:
108 ConversionContext(const String& interfaceName, const String& methodName, ExceptionState& exceptionState) 108 ConversionContext(const String& interfaceName, const String& methodName, ExceptionState& exceptionState)
109 : m_interfaceName(interfaceName) 109 : m_interfaceName(interfaceName)
110 , m_methodName(methodName) 110 , m_methodName(methodName)
111 , m_exceptionState(exceptionState) 111 , m_exceptionState(exceptionState)
112 , m_dirty(true) 112 , m_dirty(true)
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
345 if (context.isNullable() && WebCore::isUndefinedOrNull(v8Value)) 345 if (context.isNullable() && WebCore::isUndefinedOrNull(v8Value))
346 return true; 346 return true;
347 347
348 context.throwTypeError(ExceptionMessages::incorrectPropertyType(key, "does n ot have a " + context.typeName() + " type.")); 348 context.throwTypeError(ExceptionMessages::incorrectPropertyType(key, "does n ot have a " + context.typeName() + " type."));
349 return false; 349 return false;
350 } 350 }
351 351
352 } 352 }
353 353
354 #endif // Dictionary_h 354 #endif // Dictionary_h
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/v8/Dictionary.cpp » ('j') | Source/core/css/resolver/StyleResolverState.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698