third_party/WebKit/Source/WebCore/css/CSSFontFaceRule.cpp

3434 : CSSRule(parent)
3535 , m_fontFaceRule(fontFaceRule)
3636{
 37 ScriptWrappable::init(this);
3738}
3839
3940CSSFontFaceRule::~CSSFontFaceRule()
147126

third_party/WebKit/Source/WebCore/css/CSSFontFaceLoadEvent.cpp

3737
3838CSSFontFaceLoadEvent::CSSFontFaceLoadEvent()
3939{
 40 ScriptWrappable::init(this);
4041}
4142
4243CSSFontFaceLoadEvent::CSSFontFaceLoadEvent(const AtomicString& type, PassRefPtr<CSSFontFaceRule> fontface, PassRefPtr<DOMError> error)

4445 , m_fontface(fontface)
4546 , m_error(error)
4647{
 48 ScriptWrappable::init(this);
4749}
4850
4951CSSFontFaceLoadEvent::CSSFontFaceLoadEvent(const AtomicString& type, const CSSFontFaceLoadEventInit& initializer)

5153 , m_fontface(initializer.fontface)
5254 , m_error(initializer.error)
5355{
 56 ScriptWrappable::init(this);
5457}
5558
5659CSSFontFaceLoadEvent::~CSSFontFaceLoadEvent()
147126

third_party/WebKit/Source/WebCore/css/CSSStyleDeclaration.h

7373 virtual void reportMemoryUsage(MemoryObjectInfo*) const = 0;
7474
7575protected:
76  CSSStyleDeclaration() { }
 76 CSSStyleDeclaration()
 77 {
 78 ScriptWrappable::init(this);
 79 }
7780};
7881
7982} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/css/WebKitCSSMatrix.cpp

3939WebKitCSSMatrix::WebKitCSSMatrix(const TransformationMatrix& m)
4040 : m_matrix(m)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445WebKitCSSMatrix::WebKitCSSMatrix(const String& s, ExceptionCode& ec)
4546{
 47 ScriptWrappable::init(this);
4648 setMatrixValue(s, ec);
4749}
4850
147126

third_party/WebKit/Source/WebCore/xml/XMLHttpRequestProgressEvent.h

5050 virtual const AtomicString& interfaceName() const { return eventNames().interfaceForXMLHttpRequestProgressEvent; }
5151
5252private:
53  XMLHttpRequestProgressEvent() { }
 53 XMLHttpRequestProgressEvent()
 54 {
 55 ScriptWrappable::init(this);
 56 }
 57
5458 XMLHttpRequestProgressEvent(const AtomicString& type, bool lengthComputable, unsigned long long loaded, unsigned long long total)
5559 : ProgressEvent(type, lengthComputable, loaded, total)
5660 {
 61 ScriptWrappable::init(this);
5762 }
5863};
5964
147126

third_party/WebKit/Source/WebCore/xml/XMLHttpRequest.cpp

202202#ifndef NDEBUG
203203 xmlHttpRequestCounter.increment();
204204#endif
 205 ScriptWrappable::init(this);
205206}
206207
207208XMLHttpRequest::~XMLHttpRequest()
147126

third_party/WebKit/Source/WebCore/loader/appcache/DOMApplicationCache.cpp

4242DOMApplicationCache::DOMApplicationCache(Frame* frame)
4343 : DOMWindowProperty(frame)
4444{
 45 ScriptWrappable::init(this);
4546 ApplicationCacheHost* cacheHost = applicationCacheHost();
4647 if (cacheHost)
4748 cacheHost->setDOMApplicationCache(this);
147126

third_party/WebKit/Source/WebCore/Modules/mediastream/RTCDTMFToneChangeEvent.cpp

5050
5151RTCDTMFToneChangeEvent::RTCDTMFToneChangeEvent()
5252{
 53 ScriptWrappable::init(this);
5354}
5455
5556RTCDTMFToneChangeEvent::RTCDTMFToneChangeEvent(const String& tone)
5657 : Event(eventNames().tonechangeEvent, false, false)
5758 , m_tone(tone)
5859{
 60 ScriptWrappable::init(this);
5961}
6062
6163RTCDTMFToneChangeEvent::RTCDTMFToneChangeEvent(const RTCDTMFToneChangeEventInit& initializer)
6264 : Event(eventNames().tonechangeEvent, initializer)
6365 , m_tone(initializer.tone)
6466{
 67 ScriptWrappable::init(this);
6568}
6669
6770RTCDTMFToneChangeEvent::~RTCDTMFToneChangeEvent()
147126

third_party/WebKit/Source/WebCore/Modules/mediastream/RTCIceCandidateEvent.cpp

4545
4646RTCIceCandidateEvent::RTCIceCandidateEvent()
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051RTCIceCandidateEvent::RTCIceCandidateEvent(bool canBubble, bool cancelable, PassRefPtr<RTCIceCandidate> candidate)
5152 : Event(eventNames().icecandidateEvent, canBubble, cancelable)
5253 , m_candidate(candidate)
5354{
 55 ScriptWrappable::init(this);
5456}
5557
5658RTCIceCandidateEvent::~RTCIceCandidateEvent()
147126

third_party/WebKit/Source/WebCore/Modules/mediastream/MediaStreamTrackEvent.cpp

4545
4646MediaStreamTrackEvent::MediaStreamTrackEvent()
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051MediaStreamTrackEvent::MediaStreamTrackEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<MediaStreamTrack> track)
5152 : Event(type, canBubble, cancelable)
5253 , m_track(track)
5354{
 55 ScriptWrappable::init(this);
5456}
5557
5658MediaStreamTrackEvent::~MediaStreamTrackEvent()
147126

third_party/WebKit/Source/WebCore/Modules/mediastream/MediaStreamEvent.cpp

5454
5555MediaStreamEvent::MediaStreamEvent()
5656{
 57 ScriptWrappable::init(this);
5758}
5859
5960MediaStreamEvent::MediaStreamEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<MediaStream> stream)
6061 : Event(type, canBubble, cancelable)
6162 , m_stream(stream)
6263{
 64 ScriptWrappable::init(this);
6365}
6466
6567MediaStreamEvent::MediaStreamEvent(const AtomicString& type, const MediaStreamEventInit& initializer)
6668 : Event(type, initializer)
6769 , m_stream(initializer.stream)
6870{
 71 ScriptWrappable::init(this);
6972}
7073
7174MediaStreamEvent::~MediaStreamEvent()
147126

third_party/WebKit/Source/WebCore/Modules/mediastream/RTCDataChannelEvent.cpp

4545
4646RTCDataChannelEvent::RTCDataChannelEvent()
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051RTCDataChannelEvent::RTCDataChannelEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<RTCDataChannel> channel)
5152 : Event(type, canBubble, cancelable)
5253 , m_channel(channel)
5354{
 55 ScriptWrappable::init(this);
5456}
5557
5658RTCDataChannelEvent::~RTCDataChannelEvent()
147126

third_party/WebKit/Source/WebCore/Modules/webaudio/OfflineAudioCompletionEvent.cpp

4545
4646OfflineAudioCompletionEvent::OfflineAudioCompletionEvent()
4747{
 48 ScriptWrappable::init(this);
4849}
4950
50 
5151OfflineAudioCompletionEvent::OfflineAudioCompletionEvent(PassRefPtr<AudioBuffer> renderedBuffer)
5252 : Event(eventNames().completeEvent, true, false)
5353 , m_renderedBuffer(renderedBuffer)
5454{
 55 ScriptWrappable::init(this);
5556}
5657
5758OfflineAudioCompletionEvent::~OfflineAudioCompletionEvent()
147126

third_party/WebKit/Source/WebCore/Modules/webaudio/AudioProcessingEvent.cpp

4545
4646AudioProcessingEvent::AudioProcessingEvent()
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051AudioProcessingEvent::AudioProcessingEvent(PassRefPtr<AudioBuffer> inputBuffer, PassRefPtr<AudioBuffer> outputBuffer)

5253 , m_inputBuffer(inputBuffer)
5354 , m_outputBuffer(outputBuffer)
5455{
 56 ScriptWrappable::init(this);
5557}
5658
5759AudioProcessingEvent::~AudioProcessingEvent()
147126

third_party/WebKit/Source/WebCore/Modules/geolocation/Geolocation.cpp

244244 : ActiveDOMObject(context)
245245 , m_allowGeolocation(Unknown)
246246{
 247 ScriptWrappable::init(this);
247248}
248249
249250Geolocation::~Geolocation()
147126

third_party/WebKit/Source/WebCore/Modules/speech/SpeechRecognitionError.cpp

7878 , m_error(error)
7979 , m_message(message)
8080{
 81 ScriptWrappable::init(this);
8182}
8283
8384SpeechRecognitionError::SpeechRecognitionError(const AtomicString& eventName, const SpeechRecognitionErrorInit& initializer)

8586 , m_error(initializer.error)
8687 , m_message(initializer.message)
8788{
 89 ScriptWrappable::init(this);
8890}
8991
9092const AtomicString& SpeechRecognitionError::interfaceName() const
147126

third_party/WebKit/Source/WebCore/Modules/speech/SpeechSynthesisEvent.cpp

4242
4343SpeechSynthesisEvent::SpeechSynthesisEvent()
4444{
 45 initWrappable(this);
4546}
4647
4748SpeechSynthesisEvent::SpeechSynthesisEvent(const AtomicString& type, unsigned long charIndex, float elapsedTime, const String& name)
147126

third_party/WebKit/Source/WebCore/Modules/speech/SpeechRecognitionEvent.cpp

7070SpeechRecognitionEvent::SpeechRecognitionEvent()
7171 : m_resultIndex(0)
7272{
 73 ScriptWrappable::init(this);
7374}
7475
7576SpeechRecognitionEvent::SpeechRecognitionEvent(const AtomicString& eventName, const SpeechRecognitionEventInit& initializer)

7778 , m_resultIndex(initializer.resultIndex)
7879 , m_results(initializer.results)
7980{
 81 ScriptWrappable::init(this);
8082}
8183
8284SpeechRecognitionEvent::SpeechRecognitionEvent(const AtomicString& eventName, unsigned long resultIndex, PassRefPtr<SpeechRecognitionResultList> results)

8486 , m_resultIndex(resultIndex)
8587 , m_results(results)
8688{
 89 ScriptWrappable::init(this);
8790}
8891
8992SpeechRecognitionEvent::~SpeechRecognitionEvent()
147126

third_party/WebKit/Source/WebCore/Modules/websockets/CloseEvent.h

7878 , m_wasClean(false)
7979 , m_code(0)
8080 {
 81 ScriptWrappable::init(this);
8182 }
8283
8384 CloseEvent(bool wasClean, int code, const String& reason)

8687 , m_code(code)
8788 , m_reason(reason)
8889 {
 90 ScriptWrappable::init(this);
8991 }
9092
9193 CloseEvent(const AtomicString& type, const CloseEventInit& initializer)

9496 , m_code(initializer.code)
9597 , m_reason(initializer.reason)
9698 {
 99 ScriptWrappable::init(this);
97100 }
98101
99102 bool m_wasClean;
147126

third_party/WebKit/Source/WebCore/Modules/notifications/Notification.cpp

5656Notification::Notification()
5757 : ActiveDOMObject(0)
5858{
 59 ScriptWrappable::init(this);
5960}
6061
6162#if ENABLE(LEGACY_NOTIFICATIONS)

6566 , m_state(Idle)
6667 , m_notificationCenter(provider)
6768{
 69 ScriptWrappable::init(this);
6870 if (m_notificationCenter->checkPermission() != NotificationClient::PermissionAllowed) {
6971 ec = SECURITY_ERR;
7072 return;

8890 , m_state(Idle)
8991 , m_notificationCenter(provider)
9092{
 93 ScriptWrappable::init(this);
9194 if (m_notificationCenter->checkPermission() != NotificationClient::PermissionAllowed) {
9295 ec = SECURITY_ERR;
9396 return;

109112 , m_state(Idle)
110113 , m_taskTimer(adoptPtr(new Timer<Notification>(this, &Notification::taskTimerFired)))
111114{
 115 ScriptWrappable::init(this);
 116 ASSERT_WITH_SECURITY_IMPLICATION(context->isDocument());
112117 m_notificationCenter = DOMWindowNotifications::webkitNotifications(toDocument(context)->domWindow());
113 
114118 ASSERT(m_notificationCenter->client());
115119 m_taskTimer->startOneShot(0);
116120}
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBKeyRange.cpp

4747 , m_lowerType(lowerType)
4848 , m_upperType(upperType)
4949{
 50 ScriptWrappable::init(this);
5051}
5152
5253ScriptValue IDBKeyRange::lowerValue(ScriptExecutionContext* context) const
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBAny.cpp

5858 , m_integer(0)
5959{
6060 ASSERT(type == UndefinedType || type == NullType);
 61 ScriptWrappable::init(this);
6162}
6263
6364IDBAny::~IDBAny()

135136 , m_domStringList(value)
136137 , m_integer(0)
137138{
 139 ScriptWrappable::init(this);
138140}
139141
140142IDBAny::IDBAny(PassRefPtr<IDBCursorWithValue> value)

142144 , m_idbCursorWithValue(value)
143145 , m_integer(0)
144146{
 147 ScriptWrappable::init(this);
145148}
146149
147150IDBAny::IDBAny(PassRefPtr<IDBCursor> value)

149152 , m_idbCursor(value)
150153 , m_integer(0)
151154{
 155 ScriptWrappable::init(this);
152156}
153157
154158IDBAny::IDBAny(PassRefPtr<IDBDatabase> value)

156160 , m_idbDatabase(value)
157161 , m_integer(0)
158162{
 163 ScriptWrappable::init(this);
159164}
160165
161166IDBAny::IDBAny(PassRefPtr<IDBFactory> value)

163168 , m_idbFactory(value)
164169 , m_integer(0)
165170{
 171 ScriptWrappable::init(this);
166172}
167173
168174IDBAny::IDBAny(PassRefPtr<IDBIndex> value)

170176 , m_idbIndex(value)
171177 , m_integer(0)
172178{
 179 ScriptWrappable::init(this);
173180}
174181
175182IDBAny::IDBAny(PassRefPtr<IDBTransaction> value)

177184 , m_idbTransaction(value)
178185 , m_integer(0)
179186{
 187 ScriptWrappable::init(this);
180188}
181189
182190IDBAny::IDBAny(PassRefPtr<IDBObjectStore> value)

184192 , m_idbObjectStore(value)
185193 , m_integer(0)
186194{
 195 ScriptWrappable::init(this);
187196}
188197
189198IDBAny::IDBAny(const ScriptValue& value)

191200 , m_scriptValue(value)
192201 , m_integer(0)
193202{
 203 ScriptWrappable::init(this);
194204}
195205
196206IDBAny::IDBAny(const IDBKeyPath& value)

198208 , m_idbKeyPath(value)
199209 , m_integer(0)
200210{
 211 ScriptWrappable::init(this);
201212}
202213
203214IDBAny::IDBAny(const String& value)

205216 , m_string(value)
206217 , m_integer(0)
207218{
 219 ScriptWrappable::init(this);
208220}
209221
210222IDBAny::IDBAny(int64_t value)
211223 : m_type(IntegerType)
212224 , m_integer(value)
213225{
 226 ScriptWrappable::init(this);
214227}
215228
216229} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.cpp

4343 , m_oldVersion(oldVersion)
4444 , m_newVersion(newVersion)
4545{
 46 ScriptWrappable::init(this);
4647}
4748
4849IDBVersionChangeEvent::~IDBVersionChangeEvent()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBIndex.cpp

5050 ASSERT(m_objectStore);
5151 ASSERT(m_transaction);
5252 ASSERT(m_metadata.id != IDBIndexMetadata::InvalidId);
 53 ScriptWrappable::init(this);
5354}
5455
5556IDBIndex::~IDBIndex()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp

5151 , m_version(version)
5252{
5353 ASSERT(!m_result);
 54 ScriptWrappable::init(this);
5455}
5556
5657IDBOpenDBRequest::~IDBOpenDBRequest()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp

6767{
6868 // We pass a reference of this object before it can be adopted.
6969 relaxAdoptionRequirement();
 70 ScriptWrappable::init(this);
7071}
7172
7273IDBDatabase::~IDBDatabase()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBCursorWithValue.cpp

4747IDBCursorWithValue::IDBCursorWithValue(PassRefPtr<IDBCursorBackendInterface> backend, IndexedDB::CursorDirection direction, IDBRequest* request, IDBAny* source, IDBTransaction* transaction)
4848 : IDBCursor(backend, direction, request, source, transaction)
4949{
 50 ScriptWrappable::init(this);
5051}
5152
5253IDBCursorWithValue::~IDBCursorWithValue()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBFactory.cpp

6060{
6161 // We pass a reference to this object before it can be adopted.
6262 relaxAdoptionRequirement();
 63 ScriptWrappable::init(this);
6364}
6465
6566IDBFactory::~IDBFactory()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBCursor.cpp

8686 ASSERT(m_request);
8787 ASSERT(m_source->type() == IDBAny::IDBObjectStoreType || m_source->type() == IDBAny::IDBIndexType);
8888 ASSERT(m_transaction);
 89 ScriptWrappable::init(this);
8990}
9091
9192IDBCursor::~IDBCursor()
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp

5757 ASSERT(m_transaction);
5858 // We pass a reference to this object before it can be adopted.
5959 relaxAdoptionRequirement();
 60 ScriptWrappable::init(this);
6061}
6162
6263PassRefPtr<DOMStringList> IDBObjectStore::indexNames() const
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp

102102 , m_contextStopped(false)
103103 , m_previousMetadata(previousMetadata)
104104{
 105 ScriptWrappable::init(this);
105106 if (mode == IndexedDB::TransactionVersionChange) {
106107 // Not active until the callback.
107108 m_state = Inactive;
147126

third_party/WebKit/Source/WebCore/Modules/indexeddb/IDBRequest.cpp

8686 , m_preventPropagation(false)
8787 , m_requestState(context)
8888{
 89 ScriptWrappable::init(this);
8990}
9091
9192IDBRequest::~IDBRequest()
147126

third_party/WebKit/Source/WebCore/storage/Storage.cpp

4545{
4646 ASSERT(m_frame);
4747 ASSERT(m_storageArea);
 48 ScriptWrappable::init(this);
4849 if (m_storageArea)
4950 m_storageArea->incrementAccessCount();
5051}
147126

third_party/WebKit/Source/WebCore/storage/StorageEvent.cpp

4242
4343StorageEvent::StorageEvent()
4444{
 45 ScriptWrappable::init(this);
4546}
4647
4748StorageEvent::~StorageEvent()

6667 , m_url(url)
6768 , m_storageArea(storageArea)
6869{
 70 ScriptWrappable::init(this);
6971}
7072
7173StorageEvent::StorageEvent(const AtomicString& type, const StorageEventInit& initializer)

7678 , m_url(initializer.url)
7779 , m_storageArea(initializer.storageArea)
7880{
 81 ScriptWrappable::init(this);
7982}
8083
8184void StorageEvent::initStorageEvent(const AtomicString& type, bool canBubble, bool cancelable, const String& key, const String& oldValue, const String& newValue, const String& url, Storage* storageArea)
147126

third_party/WebKit/Source/WebCore/fileapi/Blob.cpp

5454Blob::Blob()
5555 : m_size(0)
5656{
 57 ScriptWrappable::init(this);
5758 OwnPtr<BlobData> blobData = BlobData::create();
5859
5960 // Create a new internal URL and register it with the provided blob data.

6667 , m_size(size)
6768{
6869 ASSERT(blobData);
 70 ScriptWrappable::init(this);
6971
7072 // Create a new internal URL and register it with the provided blob data.
7173 m_internalURL = BlobURL::createInternalURL();

7678 : m_type(type)
7779 , m_size(size)
7880{
 81 ScriptWrappable::init(this);
 82
7983 // Create a new internal URL and register it with the same blob data as the source URL.
8084 m_internalURL = BlobURL::createInternalURL();
8185 ThreadableBlobRegistry::registerBlobURL(0, m_internalURL, srcURL);
147126

third_party/WebKit/Source/WebCore/fileapi/FileList.cpp

3232
3333FileList::FileList()
3434{
 35 ScriptWrappable::init(this);
3536}
3637
3738File* FileList::item(unsigned index) const
147126

third_party/WebKit/Source/WebCore/fileapi/File.cpp

104104 , m_snapshotModificationTime(invalidFileTime())
105105#endif
106106{
 107 ScriptWrappable::init(this);
107108}
108109
109110File::File(const String& path, const KURL& url, const String& type)

114115 , m_snapshotModificationTime(invalidFileTime())
115116#endif
116117{
 118 ScriptWrappable::init(this);
117119 m_name = pathGetFileName(path);
118120 // FIXME: File object serialization/deserialization does not include
119121 // newer file object data members: m_name and m_relativePath.

129131 , m_snapshotModificationTime(invalidFileTime())
130132#endif
131133{
 134 ScriptWrappable::init(this);
132135}
133136
134137#if ENABLE(FILE_SYSTEM)

139142 , m_snapshotSize(metadata.length)
140143 , m_snapshotModificationTime(metadata.modificationTime)
141144{
 145 ScriptWrappable::init(this);
142146}
143147
144148File::File(const KURL& fileSystemURL, const FileMetadata& metadata)

147151 , m_snapshotSize(metadata.length)
148152 , m_snapshotModificationTime(metadata.modificationTime)
149153{
 154 ScriptWrappable::init(this);
150155}
151156#endif
152157
147126

third_party/WebKit/Source/WebCore/dom/DocumentType.cpp

3434 , m_publicId(publicId)
3535 , m_systemId(systemId)
3636{
 37 ScriptWrappable::init(this);
3738}
3839
3940KURL DocumentType::baseURI() const
147126

third_party/WebKit/Source/WebCore/dom/SecurityPolicyViolationEvent.h

7373private:
7474 SecurityPolicyViolationEvent()
7575 {
 76 ScriptWrappable::init(this);
7677 }
7778
7879 SecurityPolicyViolationEvent(const AtomicString& type, const SecurityPolicyViolationEventInit& initializer)

8687 , m_sourceFile(initializer.sourceFile)
8788 , m_lineNumber(initializer.lineNumber)
8889 {
 90 ScriptWrappable::init(this);
8991 }
9092
9193 String m_documentURI;
147126

third_party/WebKit/Source/WebCore/dom/MouseEvent.cpp

105105 : m_button(0)
106106 , m_buttonDown(false)
107107{
 108 ScriptWrappable::init(this);
108109}
109110
110111MouseEvent::MouseEvent(const AtomicString& eventType, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view,

126127 , m_relatedTarget(relatedTarget)
127128 , m_clipboard(clipboard)
128129{
 130 ScriptWrappable::init(this);
129131}
130132
131133MouseEvent::MouseEvent(const AtomicString& eventType, const MouseEventInit& initializer)

140142 , m_relatedTarget(initializer.relatedTarget)
141143 , m_clipboard(0 /* clipboard */)
142144{
 145 ScriptWrappable::init(this);
143146 initCoordinates(IntPoint(initializer.clientX, initializer.clientY));
144147}
145148
147126

third_party/WebKit/Source/WebCore/dom/TransitionEvent.cpp

3939TransitionEvent::TransitionEvent()
4040 : m_elapsedTime(0)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445TransitionEvent::TransitionEvent(const AtomicString& type, const String& propertyName, double elapsedTime, const String& pseudoElement)

4748 , m_elapsedTime(elapsedTime)
4849 , m_pseudoElement(pseudoElement)
4950{
 51 ScriptWrappable::init(this);
5052}
5153
5254TransitionEvent::TransitionEvent(const AtomicString& type, const TransitionEventInit& initializer)

5557 , m_elapsedTime(initializer.elapsedTime)
5658 , m_pseudoElement(initializer.pseudoElement)
5759{
 60 ScriptWrappable::init(this);
5861}
5962
6063TransitionEvent::~TransitionEvent()
147126

third_party/WebKit/Source/WebCore/dom/WheelEvent.cpp

4343 : m_deltaMode(DOM_DELTA_PIXEL)
4444 , m_directionInvertedFromDevice(false)
4545{
 46 ScriptWrappable::init(this);
4647}
4748
4849WheelEvent::WheelEvent(const AtomicString& type, const WheelEventInit& initializer)

5051 , m_wheelDelta(IntPoint(initializer.wheelDeltaX, initializer.wheelDeltaY))
5152 , m_deltaMode(initializer.deltaMode)
5253{
53 }
 54 ScriptWrappable::init(this);}
5455
5556WheelEvent::WheelEvent(const FloatPoint& wheelTicks, const FloatPoint& rawDelta, unsigned deltaMode,
5657 PassRefPtr<AbstractView> view, const IntPoint& screenLocation, const IntPoint& pageLocation,

6768 , m_deltaMode(deltaMode)
6869 , m_directionInvertedFromDevice(directionInvertedFromDevice)
6970{
 71 ScriptWrappable::init(this);
7072}
7173
7274void WheelEvent::initWheelEvent(int rawDeltaX, int rawDeltaY, PassRefPtr<AbstractView> view,
147126

third_party/WebKit/Source/WebCore/dom/Document.cpp

498498#endif
499499 , m_didAssociateFormControlsTimer(this, &Document::didAssociateFormControlsTimerFired)
500500{
 501 ScriptWrappable::init(this);
501502 m_printing = false;
502503 m_paginatedForScreen = false;
503504
147126

third_party/WebKit/Source/WebCore/dom/FocusEvent.cpp

5151
5252FocusEvent::FocusEvent()
5353{
 54 ScriptWrappable::init(this);
5455}
5556
5657FocusEvent::FocusEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view, int detail, PassRefPtr<EventTarget> relatedTarget)
5758 : UIEvent(type, canBubble, cancelable, view, detail)
5859 , m_relatedTarget(relatedTarget)
5960{
 61 ScriptWrappable::init(this);
6062}
6163
6264FocusEvent::FocusEvent(const AtomicString& type, const FocusEventInit& initializer)
6365 : UIEvent(type, initializer)
6466 , m_relatedTarget(initializer.relatedTarget)
6567{
 68 ScriptWrappable::init(this);
6669}
6770
6871PassRefPtr<FocusEventDispatchMediator> FocusEventDispatchMediator::create(PassRefPtr<FocusEvent> focusEvent)
147126

third_party/WebKit/Source/WebCore/dom/MessageEvent.cpp

4040MessageEvent::MessageEvent()
4141 : m_dataType(DataTypeScriptValue)
4242{
 43 ScriptWrappable::init(this);
4344}
4445
4546MessageEvent::MessageEvent(const AtomicString& type, const MessageEventInit& initializer)

5152 , m_source(initializer.source)
5253 , m_ports(adoptPtr(new MessagePortArray(initializer.ports)))
5354{
 55 ScriptWrappable::init(this);
5456}
5557
5658MessageEvent::MessageEvent(const ScriptValue& data, const String& origin, const String& lastEventId, PassRefPtr<DOMWindow> source, PassOwnPtr<MessagePortArray> ports)

6264 , m_source(source)
6365 , m_ports(ports)
6466{
 67 ScriptWrappable::init(this);
6568}
6669
6770MessageEvent::MessageEvent(PassRefPtr<SerializedScriptValue> data, const String& origin, const String& lastEventId, PassRefPtr<DOMWindow> source, PassOwnPtr<MessagePortArray> ports)

7780 if (m_dataAsSerializedScriptValue)
7881 m_dataAsSerializedScriptValue->registerMemoryAllocatedWithCurrentScriptContext();
7982#endif
 83 ScriptWrappable::init(this);
8084}
8185
8286MessageEvent::MessageEvent(const String& data, const String& origin)

8690 , m_origin(origin)
8791 , m_lastEventId("")
8892{
 93 ScriptWrappable::init(this);
8994}
9095
9196MessageEvent::MessageEvent(PassRefPtr<Blob> data, const String& origin)

95100 , m_origin(origin)
96101 , m_lastEventId("")
97102{
 103 ScriptWrappable::init(this);
98104}
99105
100106MessageEvent::MessageEvent(PassRefPtr<ArrayBuffer> data, const String& origin)

104110 , m_origin(origin)
105111 , m_lastEventId("")
106112{
 113 ScriptWrappable::init(this);
107114}
108115
109116MessageEvent::~MessageEvent()
147126

third_party/WebKit/Source/WebCore/dom/CustomElementConstructor.idl

2626 Conditional=CUSTOM_ELEMENTS,
2727 V8EnabledAtRuntime=customDOMElements,
2828 V8WrapAsFunction,
 29 V8SkipVTableValidation,
2930 CustomCall
3031] interface CustomElementConstructor {
3132};
147126

third_party/WebKit/Source/WebCore/dom/Document.h

16611661 , m_previous(0)
16621662 , m_next(0)
16631663{
 1664 ScriptWrappable::init(this);
16641665 if (!m_treeScope)
16651666 m_treeScope = TreeScope::noDocumentInstance();
16661667 m_treeScope->guardRef();
147126

third_party/WebKit/Source/WebCore/dom/WebKitAnimationEvent.cpp

3939WebKitAnimationEvent::WebKitAnimationEvent()
4040 : m_elapsedTime(0.0)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445WebKitAnimationEvent::WebKitAnimationEvent(const AtomicString& type, const WebKitAnimationEventInit& initializer)

4647 , m_animationName(initializer.animationName)
4748 , m_elapsedTime(initializer.elapsedTime)
4849{
 50 ScriptWrappable::init(this);
4951}
5052
5153WebKitAnimationEvent::WebKitAnimationEvent(const AtomicString& type, const String& animationName, double elapsedTime)

5355 , m_animationName(animationName)
5456 , m_elapsedTime(elapsedTime)
5557{
 58 ScriptWrappable::init(this);
5659}
5760
5861WebKitAnimationEvent::~WebKitAnimationEvent()
147126

third_party/WebKit/Source/WebCore/dom/CustomElementConstructor.cpp

3131#include "config.h"
3232
3333#if ENABLE(CUSTOM_ELEMENTS)
34 
3534#include "CustomElementConstructor.h"
3635
3736#include "CustomElementHelpers.h"

4241#include "SVGNames.h"
4342#include <wtf/Assertions.h>
4443
 44#if USE(V8)
 45#include "V8CustomElementConstructor.h"
 46#endif
 47
4548namespace WebCore {
4649
4750PassRefPtr<CustomElementConstructor> CustomElementConstructor::create(ScriptState* state, Document* document, const QualifiedName& typeName, const QualifiedName& localName, const ScriptValue& prototype)

7780{
7881 if (!document())
7982 return 0;
 83
 84 RefPtr<Element> element;
8085 if (m_localName != m_typeName)
81  return setTypeExtension(document()->createElement(m_localName, document()), m_typeName.localName());
82  if (HTMLNames::xhtmlNamespaceURI == m_typeName.namespaceURI())
83  return HTMLElement::create(m_typeName, document());
 86 element = setTypeExtension(document()->createElement(m_localName, document()), m_typeName.localName());
 87 else if (HTMLNames::xhtmlNamespaceURI == m_typeName.namespaceURI())
 88 element = HTMLElement::create(m_typeName, document());
8489#if ENABLE(SVG)
85  if (SVGNames::svgNamespaceURI == m_typeName.namespaceURI())
86  return SVGElement::create(m_typeName, document());
 90 else if (SVGNames::svgNamespaceURI == m_typeName.namespaceURI())
 91 element = SVGElement::create(m_typeName, document());
8792#endif
88  return Element::create(m_typeName, document());
 93 else
 94 element = Element::create(m_typeName, document());
 95#if USE(V8)
 96 if (CustomElementHelpers::constructorOf(element.get()))
 97 element->setTypeInfo(&CustomElementHelpers::info);
 98#endif
 99 return element;
89100}
90101
91102PassRefPtr<Element> setTypeExtension(PassRefPtr<Element> element, const AtomicString& typeExtension)
92103{
93104 if (!typeExtension.isEmpty())
94105 element->setAttribute(HTMLNames::isAttr, typeExtension);
 106
95107 return element;
96108}
97109
147126

third_party/WebKit/Source/WebCore/dom/ProgressEvent.cpp

4242 , m_loaded(0)
4343 , m_total(0)
4444{
 45 ScriptWrappable::init(this);
4546}
4647
4748ProgressEvent::ProgressEvent(const AtomicString& type, const ProgressEventInit& initializer)

5051 , m_loaded(initializer.loaded)
5152 , m_total(initializer.total)
5253{
 54 ScriptWrappable::init(this);
5355}
5456
5557ProgressEvent::ProgressEvent(const AtomicString& type, bool lengthComputable, unsigned long long loaded, unsigned long long total)

5860 , m_loaded(loaded)
5961 , m_total(total)
6062{
 63 ScriptWrappable::init(this);
6164}
6265
6366const AtomicString& ProgressEvent::interfaceName() const
147126

third_party/WebKit/Source/WebCore/dom/ProcessingInstruction.cpp

5151 , m_isXSL(false)
5252#endif
5353{
 54 ScriptWrappable::init(this);
5455}
5556
5657PassRefPtr<ProcessingInstruction> ProcessingInstruction::create(Document* document, const String& target, const String& data)
147126

third_party/WebKit/Source/WebCore/dom/CharacterData.h

5555 , m_data(!text.isNull() ? text : emptyString())
5656 {
5757 ASSERT(type == CreateOther || type == CreateText || type == CreateEditingText);
 58 ScriptWrappable::init(this);
5859 }
5960
6061 void setDataWithoutUpdate(const String& data)
147126

third_party/WebKit/Source/WebCore/dom/UIEvent.cpp

3939UIEvent::UIEvent()
4040 : m_detail(0)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445UIEvent::UIEvent(const AtomicString& eventType, bool canBubbleArg, bool cancelableArg, PassRefPtr<AbstractView> viewArg, int detailArg)
147126

third_party/WebKit/Source/WebCore/dom/Event.cpp

5252 , m_currentTarget(0)
5353 , m_createTime(convertSecondsToDOMTimeStamp(currentTime()))
5454{
 55 ScriptWrappable::init(this);
5556}
5657
5758Event::Event(const AtomicString& eventType, bool canBubbleArg, bool cancelableArg)

6768 , m_currentTarget(0)
6869 , m_createTime(convertSecondsToDOMTimeStamp(currentTime()))
6970{
 71 ScriptWrappable::init(this);
7072}
7173
7274Event::Event(const AtomicString& eventType, const EventInit& initializer)

8284 , m_currentTarget(0)
8385 , m_createTime(convertSecondsToDOMTimeStamp(currentTime()))
8486{
 87 ScriptWrappable::init(this);
8588}
8689
8790Event::~Event()
147126

third_party/WebKit/Source/WebCore/dom/EntityReference.cpp

2929 : ContainerNode(document)
3030 , m_entityName(entityName)
3131{
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<EntityReference> EntityReference::create(Document* document, const String& entityName)
147126

third_party/WebKit/Source/WebCore/dom/TouchEvent.cpp

3939
4040TouchEvent::TouchEvent()
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445TouchEvent::TouchEvent(TouchList* touches, TouchList* targetTouches,

5960 , m_doubleTap(false)
6061#endif
6162{
 63 ScriptWrappable::init(this);
6264}
6365
6466TouchEvent::~TouchEvent()
147126

third_party/WebKit/Source/WebCore/dom/PropertyNodeList.cpp

4747 : LiveNodeList(rootNode, PropertyNodeListType, InvalidateOnItemAttrChange, NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr)
4848 , m_name(name)
4949{
 50 initWrappable(this);
5051}
5152
5253PropertyNodeList::~PropertyNodeList()
147126

third_party/WebKit/Source/WebCore/dom/HashChangeEvent.h

7171private:
7272 HashChangeEvent()
7373 {
 74 ScriptWrappable::init(this);
7475 }
7576
7677 HashChangeEvent(const String& oldURL, const String& newURL)

7879 , m_oldURL(oldURL)
7980 , m_newURL(newURL)
8081 {
 82 ScriptWrappable::init(this);
8183 }
8284
8385 HashChangeEvent(const AtomicString& type, const HashChangeEventInit& initializer)

8587 , m_oldURL(initializer.oldURL)
8688 , m_newURL(initializer.newURL)
8789 {
 90 ScriptWrappable::init(this);
8891 }
8992
9093 String m_oldURL;
147126

third_party/WebKit/Source/WebCore/dom/PopStateEvent.cpp

4242 , m_serializedState(0)
4343 , m_history(0)
4444{
 45 ScriptWrappable::init(this);
4546}
4647
4748PopStateEvent::PopStateEvent(const AtomicString& type, const PopStateEventInit& initializer)

5051 , m_serializedState(0)
5152 , m_history(0)
5253{
 54 ScriptWrappable::init(this);
5355}
5456
5557PopStateEvent::PopStateEvent(PassRefPtr<SerializedScriptValue> serializedState, PassRefPtr<History> history)

5759 , m_serializedState(serializedState)
5860 , m_history(history)
5961{
 62 ScriptWrappable::init(this);
6063}
6164
6265PopStateEvent::~PopStateEvent()
147126

third_party/WebKit/Source/WebCore/dom/MutationEvent.cpp

3030MutationEvent::MutationEvent()
3131 : m_attrChange(0)
3232{
 33 ScriptWrappable::init(this);
3334}
3435
3536MutationEvent::MutationEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<Node> relatedNode,
147126

third_party/WebKit/Source/WebCore/dom/CustomEvent.cpp

3636
3737CustomEvent::CustomEvent()
3838{
 39 ScriptWrappable::init(this);
3940}
4041
4142CustomEvent::CustomEvent(const AtomicString& type, const CustomEventInit& initializer)
4243 : Event(type, initializer)
4344 , m_detail(initializer.detail)
4445{
 46 ScriptWrappable::init(this);
4547}
4648
4749CustomEvent::~CustomEvent()
147126

third_party/WebKit/Source/WebCore/dom/Text.h

5858 Text(Document* document, const String& data, ConstructionType type)
5959 : CharacterData(document, data, type)
6060 {
 61 ScriptWrappable::init(this);
6162 }
6263
6364private:
147126

third_party/WebKit/Source/WebCore/dom/ShadowRoot.cpp

6363 , m_registeredWithParentShadowRoot(false)
6464{
6565 ASSERT(document);
 66 ScriptWrappable::init(this);
6667
6768#if PLATFORM(CHROMIUM)
6869 if (type == ShadowRoot::AuthorShadowRoot) {
147126

third_party/WebKit/Source/WebCore/dom/NodeIterator.cpp

7979{
8080 // Document type nodes may have a null document. But since they can't have children, there is no need to listen for modifications to these.
8181 ASSERT(root()->document() || root()->nodeType() == Node::DOCUMENT_TYPE_NODE);
 82 ScriptWrappable::init(this);
8283 if (Document* ownerDocument = root()->document())
8384 ownerDocument->attachNodeIterator(this);
8485}
147126

third_party/WebKit/Source/WebCore/dom/make_names.pl

12491249;
12501250 }
12511251
1252  printWrapperFunctions($F, $wrapperFactoryType);
 1252 if ($wrapperFactoryType ne "V8") { # start funny indent
 1253 printWrapperFunctions($F, $wrapperFactoryType);
12531254
12541255 if ($wrapperFactoryType eq "JS") {
12551256 print F <<END

13471348END
13481349;
13491350
 1351 } # end funny indent
 1352
13501353 if ($wrapperFactoryType eq "V8") {
13511354 print F <<END
13521355
147126

third_party/WebKit/Source/WebCore/dom/ErrorEvent.cpp

4444
4545ErrorEvent::ErrorEvent()
4646{
 47 ScriptWrappable::init(this);
4748}
4849
4950ErrorEvent::ErrorEvent(const AtomicString& type, const ErrorEventInit& initializer)

5253 , m_fileName(initializer.filename)
5354 , m_lineNumber(initializer.lineno)
5455{
 56 ScriptWrappable::init(this);
5557}
5658
5759ErrorEvent::ErrorEvent(const String& message, const String& fileName, unsigned lineNumber)

6062 , m_fileName(fileName)
6163 , m_lineNumber(lineNumber)
6264{
 65 ScriptWrappable::init(this);
6366}
6467
6568ErrorEvent::~ErrorEvent()
147126

third_party/WebKit/Source/WebCore/dom/KeyboardEvent.cpp

105105 : m_keyLocation(DOMKeyLocationStandard)
106106 , m_altGraphKey(false)
107107{
 108 ScriptWrappable::init(this);
108109}
109110
110111KeyboardEvent::KeyboardEvent(const PlatformKeyboardEvent& key, AbstractView* view)

115116 , m_keyLocation(keyLocationCode(key))
116117 , m_altGraphKey(false)
117118{
 119 ScriptWrappable::init(this);
118120}
119121
120122KeyboardEvent::KeyboardEvent(const AtomicString& eventType, const KeyboardEventInit& initializer)

123125 , m_keyLocation(initializer.keyLocation)
124126 , m_altGraphKey(false)
125127{
 128 ScriptWrappable::init(this);
126129}
127130
128131KeyboardEvent::KeyboardEvent(const AtomicString& eventType, bool canBubble, bool cancelable, AbstractView *view,

133136 , m_keyLocation(keyLocation)
134137 , m_altGraphKey(altGraphKey)
135138{
 139 ScriptWrappable::init(this);
136140}
137141
138142KeyboardEvent::~KeyboardEvent()
147126

third_party/WebKit/Source/WebCore/dom/WebKitTransitionEvent.cpp

3838WebKitTransitionEvent::WebKitTransitionEvent()
3939 : m_elapsedTime(0)
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344WebKitTransitionEvent::WebKitTransitionEvent(const AtomicString& type, const String& propertyName, double elapsedTime, const String& pseudoElement)

4647 , m_elapsedTime(elapsedTime)
4748 , m_pseudoElement(pseudoElement)
4849{
 50 ScriptWrappable::init(this);
4951}
5052
5153WebKitTransitionEvent::WebKitTransitionEvent(const AtomicString& type, const WebKitTransitionEventInit& initializer)

5456 , m_elapsedTime(initializer.elapsedTime)
5557 , m_pseudoElement(initializer.pseudoElement)
5658{
 59 ScriptWrappable::init(this);
5760}
5861
5962WebKitTransitionEvent::~WebKitTransitionEvent()
147126

third_party/WebKit/Source/WebCore/dom/DocumentFragment.cpp

3434DocumentFragment::DocumentFragment(Document* document, ConstructionType constructionType)
3535 : ContainerNode(document, constructionType)
3636{
 37 ScriptWrappable::init(this);
3738}
3839
3940PassRefPtr<DocumentFragment> DocumentFragment::create(Document* document)
147126

third_party/WebKit/Source/WebCore/dom/CompositionEvent.cpp

3737
3838CompositionEvent::CompositionEvent()
3939{
 40 ScriptWrappable::init(this);
4041}
4142
4243CompositionEvent::CompositionEvent(const AtomicString& type, PassRefPtr<AbstractView> view, const String& data)
4344 : UIEvent(type, true, true, view, 0)
4445 , m_data(data)
4546{
 47 ScriptWrappable::init(this);
4648}
4749
4850CompositionEvent::CompositionEvent(const AtomicString& type, const CompositionEventInit& initializer)
4951 : UIEvent(type, initializer)
5052 , m_data(initializer.data)
5153{
 54 ScriptWrappable::init(this);
5255}
5356
5457CompositionEvent::~CompositionEvent()
147126

third_party/WebKit/Source/WebCore/dom/CDATASection.cpp

2929inline CDATASection::CDATASection(Document* document, const String& data)
3030 : Text(document, data, CreateText)
3131{
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<CDATASection> CDATASection::create(Document* document, const String& data)
147126

third_party/WebKit/Source/WebCore/dom/Comment.cpp

2929inline Comment::Comment(Document* document, const String& text)
3030 : CharacterData(document, text, CreateOther)
3131{
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<Comment> Comment::create(Document* document, const String& text)
147126

third_party/WebKit/Source/WebCore/dom/AutocompleteErrorEvent.h

6060private:
6161 AutocompleteErrorEvent()
6262 {
 63 ScriptWrappable::init(this);
6364 }
6465
6566 AutocompleteErrorEvent(const String& reason)
6667 : Event(eventNames().autocompleteerrorEvent, false, false)
6768 , m_reason(reason)
6869 {
 70 ScriptWrappable::init(this);
6971 }
7072
7173 AutocompleteErrorEvent(const AtomicString& eventType, const AutocompleteErrorEventInit& initializer)
7274 : Event(eventType, initializer)
7375 , m_reason(initializer.reason)
7476 {
 77 ScriptWrappable::init(this);
7578 }
7679
7780 String m_reason;
147126

third_party/WebKit/Source/WebCore/dom/DeviceMotionEvent.cpp

3838DeviceMotionEvent::DeviceMotionEvent()
3939 : m_deviceMotionData(DeviceMotionData::create())
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344DeviceMotionEvent::DeviceMotionEvent(const AtomicString& eventType, DeviceMotionData* deviceMotionData)
4445 : Event(eventType, false, false) // Can't bubble, not cancelable
4546 , m_deviceMotionData(deviceMotionData)
4647{
 48 ScriptWrappable::init(this);
4749}
4850
4951void DeviceMotionEvent::initDeviceMotionEvent(const AtomicString& type, bool bubbles, bool cancelable, DeviceMotionData* deviceMotionData)
147126

third_party/WebKit/Source/WebCore/dom/OverflowEvent.cpp

4343 , m_horizontalOverflow(false)
4444 , m_verticalOverflow(false)
4545{
 46 ScriptWrappable::init(this);
4647}
4748
4849OverflowEvent::OverflowEvent(bool horizontalOverflowChanged, bool horizontalOverflow, bool verticalOverflowChanged, bool verticalOverflow)

5152 , m_verticalOverflow(verticalOverflow)
5253{
5354 ASSERT(horizontalOverflowChanged || verticalOverflowChanged);
 55 ScriptWrappable::init(this);
5456
5557 if (horizontalOverflowChanged && verticalOverflowChanged)
5658 m_orient = BOTH;

6668 , m_horizontalOverflow(initializer.horizontalOverflow)
6769 , m_verticalOverflow(initializer.verticalOverflow)
6870{
 71 ScriptWrappable::init(this);
6972}
7073
7174const AtomicString& OverflowEvent::interfaceName() const
147126

third_party/WebKit/Source/WebCore/dom/BeforeLoadEvent.h

6464private:
6565 BeforeLoadEvent()
6666 {
 67 ScriptWrappable::init(this);
6768 }
6869
6970 explicit BeforeLoadEvent(const String& url)
7071 : Event(eventNames().beforeloadEvent, false, true)
7172 , m_url(url)
7273 {
 74 ScriptWrappable::init(this);
7375 }
7476
7577 BeforeLoadEvent(const AtomicString& type, const BeforeLoadEventInit& initializer)
7678 : Event(type, initializer)
7779 , m_url(initializer.url)
7880 {
 81 ScriptWrappable::init(this);
7982 }
8083
8184 String m_url;
147126

third_party/WebKit/Source/WebCore/dom/Attr.cpp

4646 , m_inChildrenChanged(false)
4747 , m_specified(true)
4848{
 49 ScriptWrappable::init(this);
4950}
5051
5152Attr::Attr(Document* document, const QualifiedName& name, const AtomicString& standaloneValue)

5758 , m_inChildrenChanged(false)
5859 , m_specified(true)
5960{
 61 ScriptWrappable::init(this);
6062}
6163
6264PassRefPtr<Attr> Attr::create(Element* element, const QualifiedName& name)
147126

third_party/WebKit/Source/WebCore/dom/Entity.h

3535 String notationName() const { ASSERT_NOT_REACHED(); return String(); }
3636
3737private:
38  Entity() : ContainerNode(0) {}
 38 Entity() : ContainerNode(0)
 39 {
 40 ScriptWrappable::init(this);
 41 }
3942};
4043
4144} //namespace
147126

third_party/WebKit/Source/WebCore/dom/DOMStringMap.h

5555protected:
5656 DOMStringMap()
5757 {
 58 ScriptWrappable::init(this);
5859 }
5960};
6061
147126

third_party/WebKit/Source/WebCore/dom/NodeList.h

4343
4444 // Other methods (not part of DOM)
4545 virtual bool isLiveNodeList() const { return false; }
 46
 47 protected:
 48 NodeList()
 49 {
 50 ScriptWrappable::init(this);
 51 }
4652 };
4753
4854} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/dom/PageTransitionEvent.cpp

3838PageTransitionEvent::PageTransitionEvent()
3939 : m_persisted(false)
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344PageTransitionEvent::PageTransitionEvent(const AtomicString& type, bool persisted)
4445 : Event(type, true, true)
4546 , m_persisted(persisted)
4647{
 48 ScriptWrappable::init(this);
4749}
4850
4951PageTransitionEvent::PageTransitionEvent(const AtomicString& type, const PageTransitionEventInit& initializer)
5052 : Event(type, initializer)
5153 , m_persisted(initializer.persisted)
5254{
 55 ScriptWrappable::init(this);
5356}
5457
5558PageTransitionEvent::~PageTransitionEvent()
147126

third_party/WebKit/Source/WebCore/dom/DOMImplementation.cpp

236236DOMImplementation::DOMImplementation(Document* document)
237237 : m_document(document)
238238{
 239 ScriptWrappable::init(this);
239240}
240241
241242bool DOMImplementation::hasFeature(const String& feature, const String& version)
147126

third_party/WebKit/Source/WebCore/dom/TextEvent.cpp

6767 , m_shouldSmartReplace(false)
6868 , m_shouldMatchStyle(false)
6969{
 70 ScriptWrappable::init(this);
7071}
7172
7273TextEvent::TextEvent(PassRefPtr<AbstractView> view, const String& data, TextEventInputType inputType)

7778 , m_shouldSmartReplace(false)
7879 , m_shouldMatchStyle(false)
7980{
 81 ScriptWrappable::init(this);
8082}
8183
8284TextEvent::TextEvent(PassRefPtr<AbstractView> view, const String& data, PassRefPtr<DocumentFragment> pastingFragment,

8890 , m_shouldSmartReplace(shouldSmartReplace)
8991 , m_shouldMatchStyle(shouldMatchStyle)
9092{
 93 ScriptWrappable::init(this);
9194}
9295
9396TextEvent::TextEvent(PassRefPtr<AbstractView> view, const String& data, const Vector<DictationAlternative>& dictationAlternatives)

98101 , m_shouldMatchStyle(false)
99102 , m_dictationAlternatives(dictationAlternatives)
100103{
 104 ScriptWrappable::init(this);
101105}
102106
103107TextEvent::~TextEvent()
147126

third_party/WebKit/Source/WebCore/dom/Element.h

622622 : ContainerNode(document, type)
623623 , m_tagName(tagName)
624624 {
 625 ScriptWrappable::init(this);
625626 }
626627
627628 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
147126

third_party/WebKit/Source/WebCore/dom/TreeWalker.cpp

3838 : Traversal(rootNode, whatToShow, filter, expandEntityReferences)
3939 , m_current(root())
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344void TreeWalker::setCurrentNode(PassRefPtr<Node> node, ExceptionCode& ec)
147126

third_party/WebKit/Source/WebCore/dom/Notation.cpp

3131 , m_publicId(publicId)
3232 , m_systemId(systemId)
3333{
 34 ScriptWrappable::init(this);
3435}
3536
3637String Notation::nodeName() const
147126

third_party/WebKit/Source/WebCore/dom/NamedNodeMap.h

7171 {
7272 // Only supports NamedNodeMaps with Element associated, DocumentType.entities and DocumentType.notations are not supported yet.
7373 ASSERT(m_element);
 74 ScriptWrappable::init(this);
7475 }
7576
7677 Element* m_element;
147126

third_party/WebKit/Source/WebCore/dom/DeviceOrientationEvent.cpp

3838DeviceOrientationEvent::DeviceOrientationEvent()
3939 : m_orientation(DeviceOrientationData::create())
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344DeviceOrientationEvent::DeviceOrientationEvent(const AtomicString& eventType, DeviceOrientationData* orientation)
4445 : Event(eventType, false, false) // Can't bubble, not cancelable
4546 , m_orientation(orientation)
4647{
 48 ScriptWrappable::init(this);
4749}
4850
4951void DeviceOrientationEvent::initDeviceOrientationEvent(const AtomicString& type, bool bubbles, bool cancelable, DeviceOrientationData* orientation)
147126

third_party/WebKit/Source/WebCore/dom/ClientRect.cpp

3131
3232ClientRect::ClientRect()
3333{
 34 ScriptWrappable::init(this);
3435}
3536
3637ClientRect::ClientRect(const IntRect& rect)
3738 : m_rect(rect)
3839{
 40 ScriptWrappable::init(this);
3941}
4042
4143ClientRect::ClientRect(const FloatRect& rect)
4244 : m_rect(rect)
4345{
 46 ScriptWrappable::init(this);
4447}
4548
4649} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/plugins/DOMMimeTypeArray.cpp

3131DOMMimeTypeArray::DOMMimeTypeArray(Frame* frame)
3232 : DOMWindowProperty(frame)
3333{
 34 ScriptWrappable::init(this);
3435}
3536
3637DOMMimeTypeArray::~DOMMimeTypeArray()
147126

third_party/WebKit/Source/WebCore/plugins/DOMPlugin.cpp

3030 , m_pluginData(pluginData)
3131 , m_index(index)
3232{
 33 ScriptWrappable::init(this);
3334}
3435
3536DOMPlugin::~DOMPlugin()
147126

third_party/WebKit/Source/WebCore/plugins/DOMPluginArray.cpp

3131DOMPluginArray::DOMPluginArray(Frame* frame)
3232 : DOMWindowProperty(frame)
3333{
 34 ScriptWrappable::init(this);
3435}
3536
3637DOMPluginArray::~DOMPluginArray()
147126

third_party/WebKit/Source/WebCore/page/BarInfo.cpp

3939 : DOMWindowProperty(frame)
4040 , m_type(type)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445BarInfo::Type BarInfo::type() const
147126

third_party/WebKit/Source/WebCore/page/Screen.cpp

4343Screen::Screen(Frame* frame)
4444 : DOMWindowProperty(frame)
4545{
 46 ScriptWrappable::init(this);
4647}
4748
4849unsigned Screen::horizontalDPI() const
147126

third_party/WebKit/Source/WebCore/page/Performance.cpp

6262 , m_userTiming(0)
6363#endif // ENABLE(USER_TIMING)
6464{
 65 ScriptWrappable::init(this);
6566}
6667
6768Performance::~Performance()
147126

third_party/WebKit/Source/WebCore/page/SpeechInputEvent.cpp

5050
5151SpeechInputEvent::SpeechInputEvent()
5252{
 53 ScriptWrappable::init(this);
5354}
5455
5556SpeechInputEvent::SpeechInputEvent(const AtomicString& eventType, const SpeechInputResultArray& results)
5657 : Event(eventType, true, false) // Can bubble, not cancelable
5758 , m_results(SpeechInputResultList::create(results))
5859{
 60 ScriptWrappable::init(this);
5961}
6062
6163SpeechInputEvent::~SpeechInputEvent()
147126

third_party/WebKit/Source/WebCore/page/Console.cpp

6565Console::Console(Frame* frame)
6666 : DOMWindowProperty(frame)
6767{
 68 ScriptWrappable::init(this);
6869}
6970
7071Console::~Console()
147126

third_party/WebKit/Source/WebCore/page/Crypto.cpp

5454
5555Crypto::Crypto()
5656{
 57 ScriptWrappable::init(this);
5758}
5859
5960void Crypto::getRandomValues(ArrayBufferView* array, ExceptionCode& ec)
147126

third_party/WebKit/Source/WebCore/page/History.cpp

4444 : DOMWindowProperty(frame)
4545 , m_lastStateObjectRequested(0)
4646{
 47 ScriptWrappable::init(this);
4748}
4849
4950unsigned History::length() const
147126

third_party/WebKit/Source/WebCore/page/Navigator.cpp

4545Navigator::Navigator(Frame* frame)
4646 : DOMWindowProperty(frame)
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051Navigator::~Navigator()
147126

third_party/WebKit/Source/WebCore/page/Location.cpp

4242Location::Location(Frame* frame)
4343 : DOMWindowProperty(frame)
4444{
 45 ScriptWrappable::init(this);
4546}
4647
4748inline const KURL& Location::url() const
147126

third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm

504504
505505 my $noToV8 = $interface->extendedAttributes->{"SuppressToJSObject"};
506506 my $noWrap = $interface->extendedAttributes->{"V8NoWrapperCache"} || $noToV8;
507  if (!$noWrap) {
508  my $createWrapperArgumentType = GetPassRefPtrType($nativeType);
509  push(@headerContent, <<END);
 507
 508 push(@headerContent, <<END) if !$noWrap;
510509 friend v8::Handle<v8::Object> wrap(${nativeType}*, v8::Handle<v8::Object> creationContext, v8::Isolate*);
511  static v8::Handle<v8::Object> createWrapper(${createWrapperArgumentType}, v8::Handle<v8::Object> creationContext, v8::Isolate*);
 510 static v8::Handle<v8::Object> createWrapper(${nativeType}*, v8::Handle<v8::Object> creationContext, v8::Isolate*);
512511END
513  }
514512
515513 push(@headerContent, <<END);
516514};

546544}
547545END
548546 } else {
549 
550547 my $createWrapperCall = $customWrap ? "${v8InterfaceName}::wrap" : "${v8InterfaceName}::createWrapper";
551548 my $returningWrapper = $interface->extendedAttributes->{"V8WrapAsFunction"} ? "V8DOMWrapper::toFunction(wrapper)" : "wrapper";
552549 my $returningCreatedWrapperOpening = $interface->extendedAttributes->{"V8WrapAsFunction"} ? "V8DOMWrapper::toFunction(" : "";

564561{
565562 ASSERT(impl);
566563 ASSERT(DOMDataStore::getWrapper(impl, isolate).IsEmpty());
 564 if (ScriptWrappable::wrapperCanBeStoredInObject(impl)) {
 565 const WrapperTypeInfo* info = ScriptWrappable::getTypeInfoFromObject(impl);
 566 return info->wrapObjectFunction(impl, creationContext, isolate);
 567 }
567568 return ${returningCreatedWrapperOpening}$createWrapperCall(impl, creationContext, isolate)${returningCreatedWrapperClosing};
568569}
569570END

21282129
21292130 push(@implContentInternals, <<END);
21302131
2131  V8DOMWrapper::associateObjectWithWrapper(impl.release(), &V8${interfaceName}::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 2132 V8DOMWrapper::associateObjectWithWrapper(impl.release().get(), &V8${interfaceName}::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
21322133 return wrapper;
21332134END
21342135

21982199 RefPtr<${interfaceName}> event = ${interfaceName}::create(type, eventInit);
21992200
22002201 v8::Handle<v8::Object> wrapper = args.Holder();
2201  V8DOMWrapper::associateObjectWithWrapper(event.release(), &V8${interfaceName}::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 2202 V8DOMWrapper::associateObjectWithWrapper(event.release().get(), &V8${interfaceName}::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
22022203 return wrapper;
22032204}
22042205END

22842285
22852286 AddToImplIncludes("Frame.h");
22862287 push(@implContent, <<END);
2287 WrapperTypeInfo ${v8InterfaceName}Constructor::info = { ${v8InterfaceName}Constructor::GetTemplate, ${v8InterfaceName}::derefObject, $toActiveDOMObject, $toEventTarget, 0, ${v8InterfaceName}::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
 2288WrapperTypeInfo ${v8InterfaceName}Constructor::info = { ${v8InterfaceName}Constructor::GetTemplate, ${v8InterfaceName}::derefObject, $toActiveDOMObject, $toEventTarget, 0, ${v8InterfaceName}::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype, 0 };
22882289
22892290static v8::Handle<v8::Value> ${v8InterfaceName}ConstructorCallback(const v8::Arguments& args)
22902291{

23422343
23432344 push(@implContent, <<END);
23442345
2345  V8DOMWrapper::associateObjectWithWrapper(impl.release(), &${v8InterfaceName}Constructor::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 2346 V8DOMWrapper::associateObjectWithWrapper(impl.release().get(), &${v8InterfaceName}Constructor::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
23462347 return wrapper;
23472348END
23482349

27962797 AddToImplIncludes("BindingState.h");
27972798 AddToImplIncludes("ContextFeatures.h");
27982799 AddToImplIncludes("RuntimeEnabledFeatures.h");
 2800 AddToImplIncludes("ScriptWrappable.h");
27992801 AddToImplIncludes("V8Binding.h");
28002802 AddToImplIncludes("V8DOMWrapper.h");
28012803

28562858
28572859END
28582860
2859 
28602861 my $parentClassInfo = $parentClass ? "&${parentClass}::info" : "0";
2861 
28622862 my $WrapperTypePrototype = $interface->isException ? "WrapperTypeErrorPrototype" : "WrapperTypeObjectPrototype";
 2863 my $noWrap = $interface->extendedAttributes->{"V8NoWrapperCache"} || $interface->extendedAttributes->{"SuppressToJSObject"};
 2864 my $wrapperFunction = $noWrap ? "0" : "reinterpret_cast<WrapObjectFunction>(${v8InterfaceName}::createWrapper)";
28632865
2864  push(@implContentInternals, "WrapperTypeInfo ${v8InterfaceName}::info = { ${v8InterfaceName}::GetTemplate, ${v8InterfaceName}::derefObject, $toActiveDOMObject, $toEventTarget, $rootForGC, ${v8InterfaceName}::installPerContextPrototypeProperties, $parentClassInfo, $WrapperTypePrototype };\n\n");
2865  push(@implContentInternals, "namespace ${interfaceName}V8Internal {\n\n");
 2866 push(@implContentInternals, <<END);
 2867WrapperTypeInfo ${v8InterfaceName}::info = { ${v8InterfaceName}::GetTemplate, ${v8InterfaceName}::derefObject, $toActiveDOMObject, $toEventTarget, $rootForGC, ${v8InterfaceName}::installPerContextPrototypeProperties, $parentClassInfo, $WrapperTypePrototype, ${wrapperFunction} };
28662868
2867  push(@implContentInternals, "template <typename T> void V8_USE(T) { }\n\n");
 2869END
 2870 push(@implContentInternals, <<END) if !$codeGenerator->IsSVGTypeNeedingTearOff($interfaceName);
 2871void scriptwrappable_init(${interfaceName}* object)
 2872{
 2873 if (ScriptWrappable::wrapperCanBeStoredInObject(object))
 2874 ScriptWrappable::setTypeInfoInObject(object, &${v8InterfaceName}::info);
 2875}
28682876
 2877// DO NOT CI. Annoyance generator to identify wrappable classes from compiler, oh.
 2878// struct Check${interfaceName} {
 2879// Check${interfaceName}()
 2880// {
 2881// if (ScriptWrappable::wrapperCanBeStoredInObject((${interfaceName}*)0))
 2882// fprintf(stderr, "DERP: ${interfaceName} is ${nativeType}\\n");
 2883// }
 2884// };
 2885// static Check${interfaceName} check_${interfaceName};
 2886
 2887END
 2888
 2889 push(@implContentInternals, <<END);
 2890namespace ${interfaceName}V8Internal {
 2891
 2892template <typename T> void V8_USE(T) { }
 2893
 2894END
 2895
28692896 my $hasConstructors = 0;
28702897 my $hasReplaceable = 0;
28712898

37043731
37053732 push(@implContent, <<END);
37063733
3707 v8::Handle<v8::Object> ${v8InterfaceName}::createWrapper(${createWrapperArgumentType} impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
 3734v8::Handle<v8::Object> ${v8InterfaceName}::createWrapper(${nativeType}* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
37083735{
3709  ASSERT(impl.get());
3710  ASSERT(DOMDataStore::getWrapper(impl.get(), isolate).IsEmpty());
 3736 ASSERT(impl);
 3737 ASSERT(DOMDataStore::getWrapper(impl, isolate).IsEmpty());
37113738END
37123739
37133740 my $vtableNameGnu = GetGnuVTableNameForInterface($interface);
37143741 push(@implContent, <<END) if $vtableNameGnu;
37153742
37163743#if ENABLE(BINDING_INTEGRITY)
3717  checkTypeOrDieTrying(impl.get());
 3744 checkTypeOrDieTrying(impl);
37183745#endif
37193746END
37203747
37213748 push(@implContent, <<END) if ($baseType ne $interfaceName);
3722  ASSERT(static_cast<void*>(static_cast<${baseType}*>(impl.get())) == static_cast<void*>(impl.get()));
 3749 ASSERT(static_cast<void*>(static_cast<${baseType}*>(impl)) == static_cast<void*>(impl));
37233750END
37243751
37253752 if ($codeGenerator->InheritsInterface($interface, "Document")) {

37273754 if (Frame* frame = impl->frame()) {
37283755 if (frame->script()->initializeMainWorld()) {
37293756 // initializeMainWorld may have created a wrapper for the object, retry from the start.
3730  v8::Handle<v8::Object> wrapper = DOMDataStore::getWrapper(impl.get(), isolate);
 3757 v8::Handle<v8::Object> wrapper = DOMDataStore::getWrapper(impl, isolate);
37313758 if (!wrapper.IsEmpty())
37323759 return wrapper;
37333760 }

37373764
37383765 push(@implContent, <<END);
37393766
3740  v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, &info, impl.get(), isolate);
 3767 v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, &info, impl, isolate);
37413768 if (UNLIKELY(wrapper.IsEmpty()))
37423769 return wrapper;
37433770
3744  installPerContextProperties(wrapper, impl.get(), isolate);
 3771 installPerContextProperties(wrapper, impl, isolate);
37453772 V8DOMWrapper::associateObjectWithWrapper(impl, &info, wrapper, isolate, hasDependentLifetime ? WrapperConfiguration::Dependent : WrapperConfiguration::Independent);
37463773 return wrapper;
37473774}
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8CustomElementConstructorCustom.cpp

4848 RefPtr<Element> element = impl->createElement();
4949 if (!element)
5050 return v8Undefined();
 51
5152 return CustomElementHelpers::wrap(element.get(), args.Holder(), impl, args.GetIsolate());
5253}
5354
 55void scriptwrappable_initCustom(ScriptWrappable* object)
 56{
 57 object->setTypeInfo(&CustomElementHelpers::info);
 58}
 59
5460} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8WebKitPointCustom.cpp

5757 }
5858 RefPtr<WebKitPoint> point = WebKitPoint::create(x, y);
5959 v8::Handle<v8::Object> wrapper = args.Holder();
60  V8DOMWrapper::associateObjectWithWrapper(point.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 60 V8DOMWrapper::associateObjectWithWrapper(point.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
6161 return wrapper;
6262}
6363
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8DataViewCustom.cpp

3939 // 'new DataView()' and the call used to construct the cached DataView object.
4040 RefPtr<DataView> dataView = DataView::create(0);
4141 v8::Handle<v8::Object> wrapper = args.Holder();
42  V8DOMWrapper::associateObjectWithWrapper(dataView.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 42 V8DOMWrapper::associateObjectWithWrapper(dataView.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
4343 return wrapper;
4444 }
4545 if (args[0]->IsNull() || !V8ArrayBuffer::HasInstance(args[0], args.GetIsolate(), worldType(args.GetIsolate())))
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8AudioContextCustom.cpp

7373
7474 // Transform the holder into a wrapper object for the audio context.
7575 v8::Handle<v8::Object> wrapper = args.Holder();
76  V8DOMWrapper::associateObjectWithWrapper(audioContext.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 76 V8DOMWrapper::associateObjectWithWrapper(audioContext.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
7777
7878 return wrapper;
7979}
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8HTMLImageElementConstructor.cpp

4343
4444namespace WebCore {
4545
46 WrapperTypeInfo V8HTMLImageElementConstructor::info = { V8HTMLImageElementConstructor::GetTemplate, V8HTMLImageElement::derefObject, 0, V8HTMLImageElement::toEventTarget, 0, V8HTMLImageElement::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
 46WrapperTypeInfo V8HTMLImageElementConstructor::info = { V8HTMLImageElementConstructor::GetTemplate, V8HTMLImageElement::derefObject, 0, V8HTMLImageElement::toEventTarget, 0, V8HTMLImageElement::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype, 0 };
4747
4848static v8::Handle<v8::Value> v8HTMLImageElementConstructorMethodCustom(const v8::Arguments& args)
4949{

7777
7878 RefPtr<HTMLImageElement> image = HTMLImageElement::createForJSConstructor(document, optionalWidth, optionalHeight);
7979 v8::Handle<v8::Object> wrapper = args.Holder();
80  V8DOMWrapper::associateObjectWithWrapper(image.release(), &V8HTMLImageElementConstructor::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 80 V8DOMWrapper::associateObjectWithWrapper(image.release().get(), &V8HTMLImageElementConstructor::info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
8181 return wrapper;
8282}
8383
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8DOMFormDataCustom.cpp

4747 RefPtr<DOMFormData> domFormData = DOMFormData::create(form);
4848
4949 v8::Handle<v8::Object> wrapper = args.Holder();
50  V8DOMWrapper::associateObjectWithWrapper(domFormData.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 50 V8DOMWrapper::associateObjectWithWrapper(domFormData.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
5151 return wrapper;
5252}
5353
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8ArrayBufferCustom.cpp

7676 v8::V8::AdjustAmountOfExternalAllocatedMemory(buffer->byteLength());
7777 // Transform the holder into a wrapper object for the array.
7878 v8::Handle<v8::Object> wrapper = args.Holder();
79  V8DOMWrapper::associateObjectWithWrapper(buffer.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 79 V8DOMWrapper::associateObjectWithWrapper(buffer.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
8080 return wrapper;
8181}
8282
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8SVGElementCustom.cpp

4040v8::Handle<v8::Object> wrap(SVGElement* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
4141{
4242 ASSERT(impl);
43  return createV8SVGWrapper(impl, creationContext, isolate);
 43 const WrapperTypeInfo* info = ScriptWrappable::getTypeInfoFromObject(impl);
 44 return info->wrapObjectFunction(impl, creationContext, isolate);
4445}
4546
4647} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8HTMLElementCustom.cpp

4343v8::Handle<v8::Object> wrap(HTMLElement* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
4444{
4545 ASSERT(impl);
46  return createV8HTMLWrapper(impl, creationContext, isolate);
 46 const WrapperTypeInfo* info = ScriptWrappable::getTypeInfoFromObject(impl);
 47 return info->wrapObjectFunction(impl, creationContext, isolate);
4748}
4849
4950#if ENABLE(MICRODATA)
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8MutationObserverCustom.cpp

5656 RefPtr<MutationCallback> callback = V8MutationCallback::create(v8::Handle<v8::Function>::Cast(arg), context, wrapper, args.GetIsolate());
5757 RefPtr<MutationObserver> observer = MutationObserver::create(callback.release());
5858
59  V8DOMWrapper::associateObjectWithWrapper(observer.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 59 V8DOMWrapper::associateObjectWithWrapper(observer.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
6060 return wrapper;
6161}
6262
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.h

5555 if (hasIndexer)
5656 args.Holder()->SetIndexedPropertiesToExternalArrayData(array.get()->baseAddress(), arrayType, array.get()->length());
5757 v8::Handle<v8::Object> wrapper = args.Holder();
58  V8DOMWrapper::associateObjectWithWrapper(array.release(), type, wrapper, args.GetIsolate(), WrapperConfiguration::Independent);
 58 V8DOMWrapper::associateObjectWithWrapper(array.release().get(), type, wrapper, args.GetIsolate(), WrapperConfiguration::Independent);
5959 return wrapper;
6060}
6161

224224 }
225225
226226 v8::Handle<v8::Object> wrapper = args.Holder();
227  V8DOMWrapper::associateObjectWithWrapper(array.release(), type, wrapper, args.GetIsolate(), WrapperConfiguration::Independent);
 227 V8DOMWrapper::associateObjectWithWrapper(array.release().get(), type, wrapper, args.GetIsolate(), WrapperConfiguration::Independent);
228228 return wrapper;
229229}
230230
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8XMLHttpRequestCustom.cpp

6161 RefPtr<XMLHttpRequest> xmlHttpRequest = XMLHttpRequest::create(context, securityOrigin);
6262
6363 v8::Handle<v8::Object> wrapper = args.Holder();
64  V8DOMWrapper::associateObjectWithWrapper(xmlHttpRequest.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 64 V8DOMWrapper::associateObjectWithWrapper(xmlHttpRequest.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
6565 return wrapper;
6666}
6767
147126

third_party/WebKit/Source/WebCore/bindings/v8/custom/V8MessageChannelCustom.cpp

4646v8::Handle<v8::Value> V8MessageChannel::constructorCustom(const v8::Arguments& args)
4747{
4848 ScriptExecutionContext* context = getScriptExecutionContext();
49 
5049 RefPtr<MessageChannel> obj = MessageChannel::create(context);
51 
5250 v8::Local<v8::Object> wrapper = args.Holder();
5351
5452 // Create references from the MessageChannel wrapper to the two

5654 // stay alive as long as the MessageChannel wrapper is around.
5755 V8HiddenPropertyName::setNamedHiddenReference(wrapper, "port1", toV8(obj->port1(), args.Holder(), args.GetIsolate()));
5856 V8HiddenPropertyName::setNamedHiddenReference(wrapper, "port2", toV8(obj->port2(), args.Holder(), args.GetIsolate()));
59 
60  V8DOMWrapper::associateObjectWithWrapper(obj.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
 57 V8DOMWrapper::associateObjectWithWrapper(obj.release().get(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
6158 return wrapper;
6259}
6360
147126

third_party/WebKit/Source/WebCore/bindings/v8/CustomElementHelpers.h

5555
5656class CustomElementHelpers {
5757public:
 58 static WrapperTypeInfo info;
5859 static bool initializeConstructorWrapper(CustomElementConstructor*, const ScriptValue& prototype, ScriptState*);
5960 static bool isValidPrototypeParameter(const ScriptValue&, ScriptState*, AtomicString& namespaceURI);
6061 static bool isValidPrototypeParameter(const ScriptValue&, ScriptState*);

7778
7879private:
7980 static void invokeReadyCallbackIfNeeded(Element*, v8::Handle<v8::Context>);
80  static v8::Handle<v8::Object> createWrapper(PassRefPtr<Element>, v8::Handle<v8::Object>, PassRefPtr<CustomElementConstructor>, v8::Isolate*);
 81 static v8::Handle<v8::Object> createWrapper(Element*, v8::Handle<v8::Object>, v8::Isolate*);
 82 static v8::Handle<v8::Object> createWrapperWithExplicitConstructor(Element*, v8::Handle<v8::Object>, PassRefPtr<CustomElementConstructor>, v8::Isolate*);
8183};
8284
8385inline v8::Handle<v8::Object> CustomElementHelpers::wrap(Element* impl, v8::Handle<v8::Object> creationContext, PassRefPtr<CustomElementConstructor> constructor, v8::Isolate* isolate)
8486{
8587 ASSERT(impl);
8688 ASSERT(DOMDataStore::getWrapper(impl, isolate).IsEmpty());
87  return CustomElementHelpers::createWrapper(impl, creationContext, constructor, isolate);
 89 return CustomElementHelpers::createWrapperWithExplicitConstructor(impl, creationContext, constructor, isolate);
8890}
8991
9092inline PassRefPtr<CustomElementConstructor> CustomElementHelpers::constructorOf(Element* element)
147126

third_party/WebKit/Source/WebCore/bindings/v8/WorkerScriptController.cpp

128128 return false;
129129 }
130130
131  V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<WorkerContext>(m_workerContext), contextType, jsWorkerContext, m_isolate, WrapperConfiguration::Dependent);
 131 V8DOMWrapper::associateObjectWithWrapper(m_workerContext, contextType, jsWorkerContext, m_isolate, WrapperConfiguration::Dependent);
132132
133133 // Insert the object instance as the prototype of the shadow object.
134134 v8::Handle<v8::Object> globalObject = v8::Handle<v8::Object>::Cast(m_context->Global()->GetPrototype());
147126

third_party/WebKit/Source/WebCore/bindings/v8/V8DOMWrapper.h

5656 static v8::Local<v8::Object> createWrapper(v8::Handle<v8::Object> creationContext, WrapperTypeInfo*, void*, v8::Isolate*);
5757
5858 template<typename T>
59  static inline v8::Handle<v8::Object> associateObjectWithWrapper(PassRefPtr<T>, WrapperTypeInfo*, v8::Handle<v8::Object>, v8::Isolate*, WrapperConfiguration::Lifetime);
 59 static inline v8::Handle<v8::Object> associateObjectWithWrapper(T*, WrapperTypeInfo*, v8::Handle<v8::Object>, v8::Isolate*, WrapperConfiguration::Lifetime);
6060 static inline void setNativeInfo(v8::Handle<v8::Object>, WrapperTypeInfo*, void*);
6161 static inline void clearNativeInfo(v8::Handle<v8::Object>, WrapperTypeInfo*);
6262

8989 }
9090
9191 template<typename T>
92  inline v8::Handle<v8::Object> V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<T> object, WrapperTypeInfo* type, v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, WrapperConfiguration::Lifetime lifetime)
 92 inline v8::Handle<v8::Object> V8DOMWrapper::associateObjectWithWrapper(T* object, WrapperTypeInfo* type, v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, WrapperConfiguration::Lifetime lifetime)
9393 {
94  setNativeInfo(wrapper, type, object.get());
 94 object->ref(); // Balanced by deref function from WrapperTypeInfo.
 95 setNativeInfo(wrapper, type, object);
9596 ASSERT(maybeDOMWrapper(wrapper));
96  WrapperConfiguration configuration = buildWrapperConfiguration(object.get(), lifetime);
97  DOMDataStore::setWrapper(object.leakRef(), wrapper, isolate, configuration);
 97 WrapperConfiguration configuration = buildWrapperConfiguration(object, lifetime);
 98 DOMDataStore::setWrapper(object, wrapper, isolate, configuration);
9899 return wrapper;
99100 }
100101
147126

third_party/WebKit/Source/WebCore/bindings/v8/V8DOMWindowShell.cpp

341341 v8::Handle<v8::Object> innerGlobalObject = toInnerGlobalObject(m_context.get());
342342 V8DOMWrapper::setNativeInfo(innerGlobalObject, &V8DOMWindow::info, window);
343343 innerGlobalObject->SetPrototype(windowWrapper);
344  V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<DOMWindow>(window), &V8DOMWindow::info, windowWrapper, m_isolate, WrapperConfiguration::Dependent);
 344 V8DOMWrapper::associateObjectWithWrapper(window, &V8DOMWindow::info, windowWrapper, m_isolate, WrapperConfiguration::Dependent);
345345 DOMWrapperWorld::setInitializingWindow(false);
346346 return true;
347347}
147126

third_party/WebKit/Source/WebCore/bindings/v8/NPV8Object.cpp

5151
5252WrapperTypeInfo* npObjectTypeInfo()
5353{
54  static WrapperTypeInfo typeInfo = { 0, 0, 0, 0, 0, 0, 0, WrapperTypeObjectPrototype };
 54 static WrapperTypeInfo typeInfo = { 0, 0, 0, 0, 0, 0, 0, WrapperTypeObjectPrototype, 0 };
5555 return &typeInfo;
5656}
5757
147126

third_party/WebKit/Source/WebCore/bindings/v8/ScriptWrappable.h

1414 * * Neither the name of Google Inc. nor the names of its
1515 * contributors may be used to endorse or promote products derived from
1616 * this software without specific prior written permission.
17  *
 17 *
1818 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1919 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
2020 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR

3939
4040class ScriptWrappable {
4141public:
42  ScriptWrappable() { }
 42 ScriptWrappable() : m_maskedStorage(0) { }
4343
 44 ~ScriptWrappable()
 45 {
 46 ASSERT(m_maskedStorage); // Assert initialization via init() even if not wrapped later.
 47 m_maskedStorage = 0; // Break UAF attempts to wrap.
 48 }
 49
4450 v8::Handle<v8::Object> wrapper() const
4551 {
46  return v8::Handle<v8::Object>(maskOrUnmaskPointer(*m_maskedWrapper));
 52 v8::Object* object = containsWrapper() ? reinterpret_cast<v8::Object*>(maskOrUnmaskValue(m_maskedStorage)) : 0;
 53 return v8::Handle<v8::Object>(object);
4754 }
4855
4956 void setWrapper(v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, const WrapperConfiguration& configuration)
5057 {
51  ASSERT(m_maskedWrapper.IsEmpty());
 58 ASSERT(!containsWrapper());
5259 v8::Persistent<v8::Object> persistent = v8::Persistent<v8::Object>::New(isolate, wrapper);
5360 configuration.configureWrapper(persistent, isolate);
5461 persistent.MakeWeak(isolate, this, weakCallback);
55  m_maskedWrapper = maskOrUnmaskPointer(*persistent);
 62 m_maskedStorage = maskOrUnmaskValue(reinterpret_cast<uintptr_t>(*persistent));
5663 }
5764
 65 const WrapperTypeInfo* typeInfo()
 66 {
 67 if (containsTypeInfo())
 68 return reinterpret_cast<const WrapperTypeInfo*>(m_maskedStorage & ~1);
 69
 70 if (containsWrapper())
 71 return toWrapperTypeInfo(wrapper());
 72
 73 return 0;
 74 }
 75
 76 void setTypeInfo(const WrapperTypeInfo* info)
 77 {
 78 m_maskedStorage = (reinterpret_cast<uintptr_t>(info) | 1);
 79 }
 80
5881 void reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
5982 {
6083 MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::DOM);
61  info.ignoreMember(m_maskedWrapper);
 84 info.ignoreMember(m_maskedStorage);
6285 }
6386
 87 static bool wrapperCanBeStoredInObject(const void*) { return false; }
 88 static bool wrapperCanBeStoredInObject(const ScriptWrappable*) { return true; }
 89
 90 static v8::Handle<v8::Object> getWrapperFromObject(void*)
 91 {
 92 ASSERT_NOT_REACHED();
 93 return v8::Handle<v8::Object>();
 94 }
 95
 96 static v8::Handle<v8::Object> getWrapperFromObject(ScriptWrappable* object)
 97 {
 98 return object->wrapper();
 99 }
 100
 101 static void setWrapperInObject(void*, v8::Handle<v8::Object>, v8::Isolate*, const WrapperConfiguration&)
 102 {
 103 ASSERT_NOT_REACHED();
 104 }
 105
 106 static void setWrapperInObject(ScriptWrappable* object, v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, const WrapperConfiguration& configuration)
 107 {
 108 object->setWrapper(wrapper, isolate, configuration);
 109 }
 110
 111 static const WrapperTypeInfo* getTypeInfoFromObject(void* object)
 112 {
 113 ASSERT_NOT_REACHED();
 114 return 0;
 115 }
 116
 117 static const WrapperTypeInfo* getTypeInfoFromObject(ScriptWrappable* object)
 118 {
 119 return object->typeInfo();
 120 }
 121
 122 static void setTypeInfoInObject(void* object, const WrapperTypeInfo* info)
 123 {
 124 ASSERT_NOT_REACHED();
 125 }
 126
 127 static void setTypeInfoInObject(ScriptWrappable* object, const WrapperTypeInfo* info)
 128 {
 129 object->setTypeInfo(info);
 130 }
 131
 132 // Wrappables need to be initialized with their most derrived wrapped type
 133 // in much the same way that certain other types need to be adopted and
 134 // so forth. The templated Init() methods are instantiated in the generated
 135 // V8 bindings code. The custom init method is provided by the custom element
 136 // constructor's custom code. The JSC code will maintain compatibility via
 137 // no-op (void*) methods here.
 138 template <typename T>static void init(T* object)
 139 {
 140 extern void scriptwrappable_init(T*); // Workaround for lack of extern template prior to C++11.
 141 scriptwrappable_init(object);
 142 }
 143
 144 static void initAsCustomElementConstructorCaller(ScriptWrappable* object)
 145 {
 146 extern void scriptwrappable_initCustom(ScriptWrappable*); // Avoid cirular inclusion.
 147 scriptwrappable_initCustom(object);
 148 }
 149
64150private:
65  inline void disposeWrapper(v8::Persistent<v8::Value> value, v8::Isolate* isolate)
 151 static inline uintptr_t maskOrUnmaskValue(uintptr_t value)
66152 {
67  ASSERT(!m_maskedWrapper.IsEmpty());
68  ASSERT(*value == maskOrUnmaskPointer(*m_maskedWrapper));
69  value.Dispose(isolate);
70  m_maskedWrapper.Clear();
 153 const uintptr_t randomMask = ~((reinterpret_cast<uintptr_t>(&WebCoreMemoryTypes::DOM) >> 13) | 1); // Entropy via ASLR, bottom bit clear.
 154 return (value ^ randomMask) & (!value - 1); // Preserve null without branching.
71155 }
72156
73  // Stores a masked wrapper to prevent attackers from overwriting this field
74  // with a phony wrapper.
75  v8::Persistent<v8::Object> m_maskedWrapper;
 157 inline bool containsTypeInfo() const { return (m_maskedStorage & 1) == 1; }
 158 inline bool containsWrapper() const { return m_maskedStorage && ((m_maskedStorage & 1) == 0); }
76159
77  static inline v8::Object* maskOrUnmaskPointer(const v8::Object* object)
 160 inline void disposeWrapper(v8::Persistent<v8::Value> value, v8::Isolate* isolate, const WrapperTypeInfo* info)
78161 {
79  const uintptr_t objectPointer = reinterpret_cast<uintptr_t>(object);
80  const uintptr_t randomMask = ~(reinterpret_cast<uintptr_t>(&WebCoreMemoryTypes::DOM) >> 13); // Entropy via ASLR.
81  return reinterpret_cast<v8::Object*>((objectPointer ^ randomMask) & (!objectPointer - 1)); // Preserve null without branching.
 162 ASSERT(containsWrapper() && m_maskedStorage != 0);
 163 ASSERT(reinterpret_cast<uintptr_t>(*value) == maskOrUnmaskValue(m_maskedStorage));
 164 value.Dispose(isolate);
 165 setTypeInfo(info);
82166 }
83167
84168 static void weakCallback(v8::Isolate* isolate, v8::Persistent<v8::Value> value, void* context)

93177 WrapperTypeInfo* info = toWrapperTypeInfo(wrapper);
94178 ASSERT(info->derefObjectFunction);
95179
96  key->disposeWrapper(value, isolate);
 180 key->disposeWrapper(value, isolate, info);
97181 // FIXME: I noticed that 50%~ of minor GC cycle times can be consumed
98182 // inside key->deref(), which causes Node destructions. We should
99183 // make Node destructions incremental.
100184 info->derefObject(object);
101185 }
 186
 187 // If zero, then this contains nothing, otherwise:
 188 // If the bottom bit it clear, then this contains a masked pointer to a wrapper object.
 189 // If the bottom bit is set, then this contains a pointer to the wrapper type info in the remaining bits.
 190 // Masking wrappers prevents attackers from overwriting this field with pointers to sprayed data.
 191 // Pointers inside Wrapper Type Info are already protected by ASLR.
 192 uintptr_t m_maskedStorage;
102193};
103194
104195} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp

3838
3939namespace WebCore {
4040
41 WrapperTypeInfo V8AdaptorFunction::info = { V8AdaptorFunction::getTemplate, 0, 0, 0, 0, 0, 0, WrapperTypeObjectPrototype };
 41WrapperTypeInfo V8AdaptorFunction::info = { V8AdaptorFunction::getTemplate, 0, 0, 0, 0, 0, 0, WrapperTypeObjectPrototype, 0 };
4242
4343v8::Persistent<v8::FunctionTemplate> V8AdaptorFunction::getTemplate(v8::Isolate* isolate, WrapperWorldType worldType)
4444{
147126

third_party/WebKit/Source/WebCore/bindings/v8/WrapperTypeInfo.h

3434#include <v8.h>
3535
3636namespace WebCore {
37 
 37
3838 class ActiveDOMObject;
3939 class DOMDataStore;
4040 class EventTarget;

6161 typedef EventTarget* (*ToEventTargetFunction)(v8::Handle<v8::Object>);
6262 typedef void* (*OpaqueRootForGC)(void*, v8::Persistent<v8::Object>, v8::Isolate*);
6363 typedef void (*InstallPerContextPrototypePropertiesFunction)(v8::Handle<v8::Object>, v8::Isolate*);
 64 typedef v8::Handle<v8::Object> (*WrapObjectFunction)(void*, v8::Handle<v8::Object>, v8::Isolate*);
6465
6566 enum WrapperTypePrototype {
6667 WrapperTypeObjectPrototype,

7677 {
7778 return reinterpret_cast<WrapperTypeInfo*>(v8::External::Cast(*typeInfoWrapper)->Value());
7879 }
79 
80 
 80
8181 bool equals(const WrapperTypeInfo* that) const
8282 {
8383 return this == that;

9292
9393 return false;
9494 }
95 
96  v8::Persistent<v8::FunctionTemplate> getTemplate(v8::Isolate* isolate, WrapperWorldType worldType) { return getTemplateFunction(isolate, worldType); }
97 
 95
 96 v8::Persistent<v8::FunctionTemplate> getTemplate(v8::Isolate* isolate, WrapperWorldType worldType)
 97 {
 98 return getTemplateFunction(isolate, worldType);
 99 }
 100
98101 void derefObject(void* object)
99102 {
100  if (derefObjectFunction)
 103 if (derefObjectFunction)
101104 derefObjectFunction(object);
102105 }
103 
 106
104107 void installPerContextPrototypeProperties(v8::Handle<v8::Object> proto, v8::Isolate* isolate)
105108 {
106109 if (installPerContextPrototypePropertiesFunction)

136139 const InstallPerContextPrototypePropertiesFunction installPerContextPrototypePropertiesFunction;
137140 const WrapperTypeInfo* parentClass;
138141 const WrapperTypePrototype wrapperTypePrototype;
 142 const WrapObjectFunction wrapObjectFunction;
139143 };
140144
141145 inline void* toNative(v8::Handle<v8::Object> object)
147126

third_party/WebKit/Source/WebCore/bindings/v8/CustomElementHelpers.cpp

4444
4545#if ENABLE(CUSTOM_ELEMENTS)
4646
47 v8::Handle<v8::Object> CustomElementHelpers::createWrapper(PassRefPtr<Element> impl, v8::Handle<v8::Object> creationContext, PassRefPtr<CustomElementConstructor> constructor, v8::Isolate* isolate)
 47WrapperTypeInfo CustomElementHelpers::info = { 0, 0, 0, 0, 0, 0, 0, WrapperTypeObjectPrototype, reinterpret_cast<WrapObjectFunction>(CustomElementHelpers::createWrapper) };
 48
 49v8::Handle<v8::Object> CustomElementHelpers::createWrapper(Element* impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
4850{
 51 RefPtr<CustomElementConstructor> constructor = CustomElementHelpers::constructorOf(impl);
 52 return createWrapperWithExplicitConstructor(impl, creationContext, constructor, isolate);
 53}
 54
 55v8::Handle<v8::Object> CustomElementHelpers::createWrapperWithExplicitConstructor(Element* impl, v8::Handle<v8::Object> creationContext, PassRefPtr<CustomElementConstructor> constructor, v8::Isolate* isolate)
 56{
4957 ASSERT(impl);
5058
5159 // The constructor and registered lifecycle callbacks should be visible only from main world.
5260 // FIXME: This shouldn't be needed once each custom element has its own FunctionTemplate
5361 // https://bugs.webkit.org/show_bug.cgi?id=108138
5462 if (!CustomElementHelpers::isFeatureAllowed(creationContext->CreationContext())) {
55  v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, &V8HTMLElement::info, impl.get(), isolate);
 63 v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, &V8HTMLElement::info, impl, isolate);
5664 if (!wrapper.IsEmpty())
57  V8DOMWrapper::associateObjectWithWrapper(impl, &V8HTMLElement::info, wrapper, isolate, WrapperConfiguration::Dependent);
 65 V8DOMWrapper::associateObjectWithWrapper(impl, &V8HTMLElement::info, wrapper, isolate, WrapperConfiguration::Dependent);
5866 return wrapper;
5967 }
6068

6775 if (!typeInfo)
6876 return v8::Handle<v8::Object>();
6977
70  v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, typeInfo, impl.get(), isolate);
 78 v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, typeInfo, impl, isolate);
7179 if (wrapper.IsEmpty())
7280 return v8::Handle<v8::Object>();
7381
147126

third_party/WebKit/Source/WebCore/bindings/v8/DOMDataStore.h

3434#include "DOMWrapperMap.h"
3535#include "DOMWrapperWorld.h"
3636#include "Node.h"
 37#include "ScriptWrappable.h"
3738#include "V8GCController.h"
3839#include "WrapperTypeInfo.h"
3940#include <v8.h>

6667 // way is to check whether the wrappable's wrapper is the same as
6768 // the holder.
6869 if ((!DOMWrapperWorld::isolatedWorldsExist() && !canExistInWorker(object)) || holderContainsWrapper(container, holder)) {
69  if (mainWorldWrapperIsStoredInObject(object))
70  return getWrapperFromObject(object);
 70 if (ScriptWrappable::wrapperCanBeStoredInObject(object))
 71 return ScriptWrappable::getWrapperFromObject(object);
7172 return mainWorldStore()->m_wrapperMap.get(object);
7273 }
7374 return current(container.GetIsolate())->get(object);

7677 template<typename T>
7778 static v8::Handle<v8::Object> getWrapper(T* object, v8::Isolate* isolate)
7879 {
79  if (mainWorldWrapperIsStoredInObject(object) && !canExistInWorker(object)) {
 80 if (ScriptWrappable::wrapperCanBeStoredInObject(object) && !canExistInWorker(object)) {
8081 if (LIKELY(!DOMWrapperWorld::isolatedWorldsExist()))
81  return getWrapperFromObject(object);
 82 return ScriptWrappable::getWrapperFromObject(object);
8283 }
8384 return current(isolate)->get(object);
8485 }

8687 template<typename T>
8788 static v8::Handle<v8::Object> getWrapperForMainWorld(T* object)
8889 {
89  if (mainWorldWrapperIsStoredInObject(object))
90  return getWrapperFromObject(object);
 90
 91 if (ScriptWrappable::wrapperCanBeStoredInObject(object))
 92 return ScriptWrappable::getWrapperFromObject(object);
9193 return mainWorldStore()->get(object);
9294 }
9395
9496 template<typename T>
9597 static void setWrapper(T* object, v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, const WrapperConfiguration& configuration)
9698 {
97  if (mainWorldWrapperIsStoredInObject(object) && !canExistInWorker(object)) {
 99 if (ScriptWrappable::wrapperCanBeStoredInObject(object) && !canExistInWorker(object)) {
98100 if (LIKELY(!DOMWrapperWorld::isolatedWorldsExist())) {
99  setWrapperInObject(object, wrapper, isolate, configuration);
 101 ScriptWrappable::setWrapperInObject(object, wrapper, isolate, configuration);
100102 return;
101103 }
102104 }

106108 template<typename T>
107109 inline v8::Handle<v8::Object> get(T* object)
108110 {
109  if (mainWorldWrapperIsStoredInObject(object) && m_type == MainWorld)
110  return getWrapperFromObject(object);
 111 if (ScriptWrappable::wrapperCanBeStoredInObject(object) && m_type == MainWorld)
 112 return ScriptWrappable::getWrapperFromObject(object);
111113 return m_wrapperMap.get(object);
112114 }
113115

119121 {
120122 ASSERT(!!object);
121123 ASSERT(!wrapper.IsEmpty());
122  if (mainWorldWrapperIsStoredInObject(object) && m_type == MainWorld) {
123  setWrapperInObject(object, wrapper, isolate, configuration);
 124 if (ScriptWrappable::wrapperCanBeStoredInObject(object) && m_type == MainWorld) {
 125 ScriptWrappable::setWrapperInObject(object, wrapper, isolate, configuration);
124126 return;
125127 }
126128 m_wrapperMap.set(object, wrapper, configuration);

128130
129131 static DOMDataStore* mainWorldStore();
130132
131  static bool mainWorldWrapperIsStoredInObject(void*) { return false; }
132  static bool mainWorldWrapperIsStoredInObject(ScriptWrappable*) { return true; }
133 
134133 static bool canExistInWorker(void*) { return true; }
135134 static bool canExistInWorker(Node*) { return false; }
136135

139138 {
140139 return false;
141140 }
 141
142142 template<typename HolderContainer>
143143 static bool holderContainsWrapper(const HolderContainer& container, ScriptWrappable* wrappable)
144144 {

147147 return container.Holder() == wrappable->wrapper();
148148 }
149149
150  static v8::Handle<v8::Object> getWrapperFromObject(void*)
151  {
152  ASSERT_NOT_REACHED();
153  return v8::Handle<v8::Object>();
154  }
155  static v8::Handle<v8::Object> getWrapperFromObject(ScriptWrappable* object)
156  {
157  return object->wrapper();
158  }
159 
160  static void setWrapperInObject(void*, v8::Handle<v8::Object>, v8::Isolate*, const WrapperConfiguration&)
161  {
162  ASSERT_NOT_REACHED();
163  }
164  static void setWrapperInObject(ScriptWrappable* object, v8::Handle<v8::Object> wrapper, v8::Isolate* isolate, const WrapperConfiguration& configuration)
165  {
166  object->setWrapper(wrapper, isolate, configuration);
167  }
168 
169150 WrapperWorldType m_type;
170151 DOMWrapperMap<void> m_wrapperMap;
171152};
147126

third_party/WebKit/Source/WebCore/svg/SVGMarkerElement.cpp

8484{
8585 // Spec: If the markerWidth/markerHeight attribute is not specified, the effect is as if a value of "3" were specified.
8686 ASSERT(hasTagName(SVGNames::markerTag));
 87 ScriptWrappable::init(this);
8788 registerAnimatedPropertiesForSVGMarkerElement();
8889}
8990
147126

third_party/WebKit/Source/WebCore/svg/SVGPathElement.cpp

8181 , m_isAnimValObserved(false)
8282{
8383 ASSERT(hasTagName(SVGNames::pathTag));
 84 ScriptWrappable::init(this);
8485 registerAnimatedPropertiesForSVGPathElement();
8586}
8687
147126

third_party/WebKit/Source/WebCore/svg/SVGFontFaceUriElement.cpp

4141 : SVGElement(tagName, document)
4242{
4343 ASSERT(hasTagName(font_face_uriTag));
 44 ScriptWrappable::init(this);
4445}
4546
4647PassRefPtr<SVGFontFaceUriElement> SVGFontFaceUriElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFETileElement.cpp

4444 : SVGFilterPrimitiveStandardAttributes(tagName, document)
4545{
4646 ASSERT(hasTagName(SVGNames::feTileTag));
 47 ScriptWrappable::init(this);
4748 registerAnimatedPropertiesForSVGFETileElement();
4849}
4950
147126

third_party/WebKit/Source/WebCore/svg/SVGAElement.cpp

6969 : SVGStyledTransformableElement(tagName, document)
7070{
7171 ASSERT(hasTagName(SVGNames::aTag));
 72 ScriptWrappable::init(this);
7273 registerAnimatedPropertiesForSVGAElement();
7374}
7475
147126

third_party/WebKit/Source/WebCore/svg/SVGTextElement.cpp

4848 : SVGTextPositioningElement(tagName, doc)
4949{
5050 ASSERT(hasTagName(SVGNames::textTag));
 51 ScriptWrappable::init(this);
5152 registerAnimatedPropertiesForSVGTextElement();
5253}
5354
147126

third_party/WebKit/Source/WebCore/svg/SVGAnimateMotionElement.cpp

4848{
4949 setCalcMode(CalcModePaced);
5050 ASSERT(hasTagName(animateMotionTag));
 51 ScriptWrappable::init(this);
5152}
5253
5354PassRefPtr<SVGAnimateMotionElement> SVGAnimateMotionElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEMorphologyElement.cpp

5050 , m__operator(FEMORPHOLOGY_OPERATOR_ERODE)
5151{
5252 ASSERT(hasTagName(SVGNames::feMorphologyTag));
 53 ScriptWrappable::init(this);
5354 registerAnimatedPropertiesForSVGFEMorphologyElement();
5455}
5556
147126

third_party/WebKit/Source/WebCore/svg/SVGFEMergeElement.cpp

3434 : SVGFilterPrimitiveStandardAttributes(tagName, document)
3535{
3636 ASSERT(hasTagName(SVGNames::feMergeTag));
 37 ScriptWrappable::init(this);
3738}
3839
3940PassRefPtr<SVGFEMergeElement> SVGFEMergeElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGAnimateElement.cpp

4141 , m_animatedPropertyType(AnimatedString)
4242{
4343 ASSERT(hasTagName(SVGNames::animateTag) || hasTagName(SVGNames::setTag) || hasTagName(SVGNames::animateColorTag) || hasTagName(SVGNames::animateTransformTag));
 44 ScriptWrappable::init(this);
4445}
4546
4647PassRefPtr<SVGAnimateElement> SVGAnimateElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFESpotLightElement.cpp

3131 : SVGFELightElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::feSpotLightTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGFESpotLightElement> SVGFESpotLightElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGEllipseElement.cpp

5959 , m_ry(LengthModeHeight)
6060{
6161 ASSERT(hasTagName(SVGNames::ellipseTag));
 62 ScriptWrappable::init(this);
6263 registerAnimatedPropertiesForSVGEllipseElement();
6364}
6465
147126

third_party/WebKit/Source/WebCore/svg/SVGStyledElement.cpp

7272SVGStyledElement::SVGStyledElement(const QualifiedName& tagName, Document* document, ConstructionType constructionType)
7373 : SVGElement(tagName, document, constructionType)
7474{
 75 ScriptWrappable::init(this);
7576 registerAnimatedPropertiesForSVGStyledElement();
7677}
7778
147126

third_party/WebKit/Source/WebCore/svg/SVGClipPathElement.cpp

5050 , m_clipPathUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE)
5151{
5252 ASSERT(hasTagName(SVGNames::clipPathTag));
 53 ScriptWrappable::init(this);
5354 registerAnimatedPropertiesForSVGClipPathElement();
5455}
5556
147126

third_party/WebKit/Source/WebCore/svg/SVGFEFuncBElement.cpp

3030 : SVGComponentTransferFunctionElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::feFuncBTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGFEFuncBElement> SVGFEFuncBElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGComponentTransferFunctionElement.cpp

5757 , m_amplitude(1)
5858 , m_exponent(1)
5959{
 60 ScriptWrappable::init(this);
6061 registerAnimatedPropertiesForSVGComponentTransferFunctionElement();
6162}
6263
147126

third_party/WebKit/Source/WebCore/svg/SVGTSpanElement.cpp

3434 : SVGTextPositioningElement(tagName, document)
3535{
3636 ASSERT(hasTagName(SVGNames::tspanTag));
 37 ScriptWrappable::init(this);
3738}
3839
3940PassRefPtr<SVGTSpanElement> SVGTSpanElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGGElement.cpp

4444 : SVGStyledTransformableElement(tagName, document, constructionType)
4545{
4646 ASSERT(hasTagName(SVGNames::gTag));
 47 ScriptWrappable::init(this);
4748 registerAnimatedPropertiesForSVGGElement();
4849}
4950
147126

third_party/WebKit/Source/WebCore/svg/SVGFEFuncRElement.cpp

3030 : SVGComponentTransferFunctionElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::feFuncRTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGFEFuncRElement> SVGFEFuncRElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGSymbolElement.cpp

4646 : SVGStyledElement(tagName, document)
4747{
4848 ASSERT(hasTagName(SVGNames::symbolTag));
 49 ScriptWrappable::init(this);
4950 registerAnimatedPropertiesForSVGSymbolElement();
5051}
5152
147126

third_party/WebKit/Source/WebCore/svg/SVGAnimateTransformElement.cpp

3636 , m_type(SVGTransform::SVG_TRANSFORM_UNKNOWN)
3737{
3838 ASSERT(hasTagName(SVGNames::animateTransformTag));
 39 ScriptWrappable::init(this);
3940}
4041
4142PassRefPtr<SVGAnimateTransformElement> SVGAnimateTransformElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEColorMatrixElement.cpp

4848 , m_type(FECOLORMATRIX_TYPE_MATRIX)
4949{
5050 ASSERT(hasTagName(SVGNames::feColorMatrixTag));
 51 ScriptWrappable::init(this);
5152 registerAnimatedPropertiesForSVGFEColorMatrixElement();
5253}
5354
147126

third_party/WebKit/Source/WebCore/svg/SVGFontFaceSrcElement.cpp

3737 : SVGElement(tagName, document)
3838{
3939 ASSERT(hasTagName(font_face_srcTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<SVGFontFaceSrcElement> SVGFontFaceSrcElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGCircleElement.cpp

5858 , m_r(LengthModeOther)
5959{
6060 ASSERT(hasTagName(SVGNames::circleTag));
 61 ScriptWrappable::init(this);
6162 registerAnimatedPropertiesForSVGCircleElement();
6263}
6364
147126

third_party/WebKit/Source/WebCore/svg/SVGFEDiffuseLightingElement.cpp

5757 , m_surfaceScale(1)
5858{
5959 ASSERT(hasTagName(SVGNames::feDiffuseLightingTag));
 60 ScriptWrappable::init(this);
6061 registerAnimatedPropertiesForSVGFEDiffuseLightingElement();
6162}
6263
147126

third_party/WebKit/Source/WebCore/svg/SVGGlyphElement.cpp

3737 : SVGStyledElement(tagName, document)
3838{
3939 ASSERT(hasTagName(SVGNames::glyphTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<SVGGlyphElement> SVGGlyphElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGDocument.cpp

3939SVGDocument::SVGDocument(Frame* frame, const KURL& url)
4040 : Document(frame, url, false, false)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445SVGSVGElement* SVGDocument::rootElement() const
147126

third_party/WebKit/Source/WebCore/svg/SVGFontElement.cpp

5050 , m_isGlyphCacheValid(false)
5151{
5252 ASSERT(hasTagName(SVGNames::fontTag));
 53 ScriptWrappable::init(this);
5354 registerAnimatedPropertiesForSVGFontElement();
5455}
5556
147126

third_party/WebKit/Source/WebCore/svg/SVGFEDropShadowElement.cpp

5656 , m_stdDeviationY(2)
5757{
5858 ASSERT(hasTagName(SVGNames::feDropShadowTag));
 59 ScriptWrappable::init(this);
5960 registerAnimatedPropertiesForSVGFEDropShadowElement();
6061}
6162
147126

third_party/WebKit/Source/WebCore/svg/SVGLineElement.cpp

5858 , m_y2(LengthModeHeight)
5959{
6060 ASSERT(hasTagName(SVGNames::lineTag));
 61 ScriptWrappable::init(this);
6162 registerAnimatedPropertiesForSVGLineElement();
6263}
6364
147126

third_party/WebKit/Source/WebCore/svg/SVGFEFuncAElement.cpp

3030 : SVGComponentTransferFunctionElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::feFuncATag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGFEFuncAElement> SVGFEFuncAElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGRadialGradientElement.cpp

6969{
7070 // Spec: If the cx/cy/r/fr attribute is not specified, the effect is as if a value of "50%" were specified.
7171 ASSERT(hasTagName(SVGNames::radialGradientTag));
 72 ScriptWrappable::init(this);
7273 registerAnimatedPropertiesForSVGRadialGradientElement();
7374}
7475
147126

third_party/WebKit/Source/WebCore/svg/SVGPatternElement.cpp

8282 , m_patternContentUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE)
8383{
8484 ASSERT(hasTagName(SVGNames::patternTag));
 85 ScriptWrappable::init(this);
8586 registerAnimatedPropertiesForSVGPatternElement();
8687}
8788
147126

third_party/WebKit/Source/WebCore/svg/SVGFEComponentTransferElement.cpp

4646 : SVGFilterPrimitiveStandardAttributes(tagName, document)
4747{
4848 ASSERT(hasTagName(SVGNames::feComponentTransferTag));
 49 ScriptWrappable::init(this);
4950 registerAnimatedPropertiesForSVGFEComponentTransferElement();
5051}
5152
147126

third_party/WebKit/Source/WebCore/svg/SVGAltGlyphElement.cpp

4848 : SVGTextPositioningElement(tagName, document)
4949{
5050 ASSERT(hasTagName(SVGNames::altGlyphTag));
 51 ScriptWrappable::init(this);
5152 registerAnimatedPropertiesForSVGAltGlyphElement();
5253}
5354
147126

third_party/WebKit/Source/WebCore/svg/SVGRectElement.cpp

6464 , m_ry(LengthModeHeight)
6565{
6666 ASSERT(hasTagName(SVGNames::rectTag));
 67 ScriptWrappable::init(this);
6768 registerAnimatedPropertiesForSVGRectElement();
6869}
6970
147126

third_party/WebKit/Source/WebCore/svg/SVGFEImageElement.cpp

5555 : SVGFilterPrimitiveStandardAttributes(tagName, document)
5656{
5757 ASSERT(hasTagName(SVGNames::feImageTag));
 58 ScriptWrappable::init(this);
5859 registerAnimatedPropertiesForSVGFEImageElement();
5960}
6061
147126

third_party/WebKit/Source/WebCore/svg/SVGFEOffsetElement.cpp

4747 : SVGFilterPrimitiveStandardAttributes(tagName, document)
4848{
4949 ASSERT(hasTagName(SVGNames::feOffsetTag));
 50 ScriptWrappable::init(this);
5051 registerAnimatedPropertiesForSVGFEOffsetElement();
5152}
5253
147126

third_party/WebKit/Source/WebCore/svg/SVGDescElement.cpp

2929 : SVGStyledElement(tagName, document)
3030{
3131 ASSERT(hasTagName(SVGNames::descTag));
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<SVGDescElement> SVGDescElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEFloodElement.cpp

3434 : SVGFilterPrimitiveStandardAttributes(tagName, document)
3535{
3636 ASSERT(hasTagName(SVGNames::feFloodTag));
 37 ScriptWrappable::init(this);
3738}
3839
3940PassRefPtr<SVGFEFloodElement> SVGFEFloodElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFETurbulenceElement.cpp

5555 , m_type(FETURBULENCE_TYPE_TURBULENCE)
5656{
5757 ASSERT(hasTagName(SVGNames::feTurbulenceTag));
 58 ScriptWrappable::init(this);
5859 registerAnimatedPropertiesForSVGFETurbulenceElement();
5960}
6061
147126

third_party/WebKit/Source/WebCore/svg/SVGFilterElement.cpp

7474 // Spec: If the x/y attribute is not specified, the effect is as if a value of "-10%" were specified.
7575 // Spec: If the width/height attribute is not specified, the effect is as if a value of "120%" were specified.
7676 ASSERT(hasTagName(SVGNames::filterTag));
 77 ScriptWrappable::init(this);
7778 registerAnimatedPropertiesForSVGFilterElement();
7879}
7980
147126

third_party/WebKit/Source/WebCore/svg/SVGFontFaceFormatElement.cpp

3333 : SVGElement(tagName, document)
3434{
3535 ASSERT(hasTagName(font_face_formatTag));
 36 ScriptWrappable::init(this);
3637}
3738
3839PassRefPtr<SVGFontFaceFormatElement> SVGFontFaceFormatElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGSVGElement.cpp

9393 , m_timeContainer(SMILTimeContainer::create(this))
9494{
9595 ASSERT(hasTagName(SVGNames::svgTag));
 96 ScriptWrappable::init(this);
9697 registerAnimatedPropertiesForSVGSVGElement();
9798 doc->registerForPageCacheSuspensionCallbacks(this);
9899}
147126

third_party/WebKit/Source/WebCore/svg/SVGStyleElement.cpp

4040 , m_svgLoadEventTimer(this, &SVGElement::svgLoadEventTimerFired)
4141{
4242 ASSERT(hasTagName(SVGNames::styleTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546SVGStyleElement::~SVGStyleElement()
147126

third_party/WebKit/Source/WebCore/svg/SVGAltGlyphItemElement.cpp

3131 : SVGElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::altGlyphItemTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGAltGlyphItemElement> SVGAltGlyphItemElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGTextPositioningElement.cpp

5252SVGTextPositioningElement::SVGTextPositioningElement(const QualifiedName& tagName, Document* document)
5353 : SVGTextContentElement(tagName, document)
5454{
 55 ScriptWrappable::init(this);
5556 registerAnimatedPropertiesForSVGTextPositioningElement();
5657}
5758
147126

third_party/WebKit/Source/WebCore/svg/SVGFEFuncGElement.cpp

3030 : SVGComponentTransferFunctionElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::feFuncGTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGFEFuncGElement> SVGFEFuncGElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGMetadataElement.cpp

2929 : SVGElement(tagName, document)
3030{
3131 ASSERT(hasTagName(SVGNames::metadataTag));
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<SVGMetadataElement> SVGMetadataElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFontFaceNameElement.cpp

3131 : SVGElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::font_face_nameTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGFontFaceNameElement> SVGFontFaceNameElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGLinearGradientElement.cpp

6363{
6464 // Spec: If the x2 attribute is not specified, the effect is as if a value of "100%" were specified.
6565 ASSERT(hasTagName(SVGNames::linearGradientTag));
 66 ScriptWrappable::init(this);
6667 registerAnimatedPropertiesForSVGLinearGradientElement();
6768}
6869
147126

third_party/WebKit/Source/WebCore/svg/SVGTRefElement.cpp

136136 , m_targetListener(SVGTRefTargetEventListener::create(this))
137137{
138138 ASSERT(hasTagName(SVGNames::trefTag));
 139 ScriptWrappable::init(this);
139140 registerAnimatedPropertiesForSVGTRefElement();
140141}
141142
147126

third_party/WebKit/Source/WebCore/svg/SVGTextPathElement.cpp

5353 , m_spacing(SVGTextPathSpacingExact)
5454{
5555 ASSERT(hasTagName(SVGNames::textPathTag));
 56 ScriptWrappable::init(this);
5657 registerAnimatedPropertiesForSVGTextPathElement();
5758}
5859
147126

third_party/WebKit/Source/WebCore/svg/SVGElement.cpp

5151SVGElement::SVGElement(const QualifiedName& tagName, Document* document, ConstructionType constructionType)
5252 : StyledElement(tagName, document, constructionType)
5353{
 54 ScriptWrappable::init(this);
5455 setHasCustomStyleCallbacks();
5556}
5657
147126

third_party/WebKit/Source/WebCore/svg/SVGAnimationElement.cpp

6161 , m_calcMode(CalcModeLinear)
6262 , m_animationMode(NoAnimation)
6363{
 64 ScriptWrappable::init(this);
6465 registerAnimatedPropertiesForSVGAnimationElement();
6566}
6667
147126

third_party/WebKit/Source/WebCore/svg/SVGMaskElement.cpp

6969 // Spec: If the x/y attribute is not specified, the effect is as if a value of "-10%" were specified.
7070 // Spec: If the width/height attribute is not specified, the effect is as if a value of "120%" were specified.
7171 ASSERT(hasTagName(SVGNames::maskTag));
 72 ScriptWrappable::init(this);
7273 registerAnimatedPropertiesForSVGMaskElement();
7374}
7475
147126

third_party/WebKit/Source/WebCore/svg/SVGUseElement.cpp

9696{
9797 ASSERT(hasCustomStyleCallbacks());
9898 ASSERT(hasTagName(SVGNames::useTag));
 99 ScriptWrappable::init(this);
99100 registerAnimatedPropertiesForSVGUseElement();
100101}
101102
147126

third_party/WebKit/Source/WebCore/svg/SVGGradientElement.cpp

5959 , m_spreadMethod(SVGSpreadMethodPad)
6060 , m_gradientUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)
6161{
 62 ScriptWrappable::init(this);
6263 registerAnimatedPropertiesForSVGGradientElement();
6364}
6465
147126

third_party/WebKit/Source/WebCore/svg/SVGSwitchElement.cpp

4242 : SVGStyledTransformableElement(tagName, document)
4343{
4444 ASSERT(hasTagName(SVGNames::switchTag));
 45 ScriptWrappable::init(this);
4546 registerAnimatedPropertiesForSVGSwitchElement();
4647}
4748
147126

third_party/WebKit/Source/WebCore/svg/SVGHKernElement.cpp

3434 : SVGElement(tagName, document)
3535{
3636 ASSERT(hasTagName(SVGNames::hkernTag));
 37 ScriptWrappable::init(this);
3738}
3839
3940PassRefPtr<SVGHKernElement> SVGHKernElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGMissingGlyphElement.cpp

2929 : SVGStyledElement(tagName, document)
3030{
3131 ASSERT(hasTagName(SVGNames::missing_glyphTag));
 32 ScriptWrappable::init(this);
3233}
3334
3435PassRefPtr<SVGMissingGlyphElement> SVGMissingGlyphElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGTextContentElement.cpp

7171 , m_specifiedTextLength(LengthModeOther)
7272 , m_lengthAdjust(SVGLengthAdjustSpacing)
7373{
 74 ScriptWrappable::init(this);
7475 registerAnimatedPropertiesForSVGTextContentElement();
7576}
7677
147126

third_party/WebKit/Source/WebCore/svg/SVGFEMergeNodeElement.cpp

4444 : SVGElement(tagName, document)
4545{
4646 ASSERT(hasTagName(SVGNames::feMergeNodeTag));
 47 ScriptWrappable::init(this);
4748 registerAnimatedPropertiesForSVGFEMergeNodeElement();
4849}
4950
147126

third_party/WebKit/Source/WebCore/svg/SVGFEDisplacementMapElement.cpp

5252 , m_yChannelSelector(CHANNEL_A)
5353{
5454 ASSERT(hasTagName(SVGNames::feDisplacementMapTag));
 55 ScriptWrappable::init(this);
5556 registerAnimatedPropertiesForSVGFEDisplacementMapElement();
5657}
5758
147126

third_party/WebKit/Source/WebCore/svg/SVGImageElement.cpp

6666 , m_imageLoader(this)
6767{
6868 ASSERT(hasTagName(SVGNames::imageTag));
 69 ScriptWrappable::init(this);
6970 registerAnimatedPropertiesForSVGImageElement();
7071}
7172
147126

third_party/WebKit/Source/WebCore/svg/SVGPolygonElement.cpp

3030 : SVGPolyElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::polygonTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGPolygonElement> SVGPolygonElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGAltGlyphDefElement.cpp

3232 : SVGElement(tagName, document)
3333{
3434 ASSERT(hasTagName(SVGNames::altGlyphDefTag));
 35 ScriptWrappable::init(this);
3536}
3637
3738PassRefPtr<SVGAltGlyphDefElement> SVGAltGlyphDefElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEDistantLightElement.cpp

3131 : SVGFELightElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::feDistantLightTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGFEDistantLightElement> SVGFEDistantLightElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGZoomEvent.cpp

3232 : m_newScale(0.0f)
3333 , m_previousScale(0.0f)
3434{
 35 ScriptWrappable::init(this);
3536}
3637
3738FloatRect SVGZoomEvent::zoomRectScreen() const
147126

third_party/WebKit/Source/WebCore/svg/SVGFECompositeElement.cpp

5656 , m__operator(FECOMPOSITE_OPERATOR_OVER)
5757{
5858 ASSERT(hasTagName(SVGNames::feCompositeTag));
 59 ScriptWrappable::init(this);
5960 registerAnimatedPropertiesForSVGFECompositeElement();
6061}
6162
147126

third_party/WebKit/Source/WebCore/svg/SVGCursorElement.cpp

5050 , m_y(LengthModeHeight)
5151{
5252 ASSERT(hasTagName(SVGNames::cursorTag));
 53 ScriptWrappable::init(this);
5354 registerAnimatedPropertiesForSVGCursorElement();
5455}
5556
147126

third_party/WebKit/Source/WebCore/svg/SVGForeignObjectElement.cpp

6262 , m_height(LengthModeHeight)
6363{
6464 ASSERT(hasTagName(SVGNames::foreignObjectTag));
 65 ScriptWrappable::init(this);
6566 registerAnimatedPropertiesForSVGForeignObjectElement();
6667}
6768
147126

third_party/WebKit/Source/WebCore/svg/SVGTitleElement.cpp

3131 : SVGStyledElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::titleTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGTitleElement> SVGTitleElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGDefsElement.cpp

4141 : SVGStyledTransformableElement(tagName, document)
4242{
4343 ASSERT(hasTagName(SVGNames::defsTag));
 44 ScriptWrappable::init(this);
4445 registerAnimatedPropertiesForSVGDefsElement();
4546}
4647
147126

third_party/WebKit/Source/WebCore/svg/SVGViewElement.cpp

4949 , m_viewTarget(SVGNames::viewTargetAttr)
5050{
5151 ASSERT(hasTagName(SVGNames::viewTag));
 52 ScriptWrappable::init(this);
5253 registerAnimatedPropertiesForSVGViewElement();
5354}
5455
147126

third_party/WebKit/Source/WebCore/svg/SVGFEGaussianBlurElement.cpp

4848 : SVGFilterPrimitiveStandardAttributes(tagName, document)
4949{
5050 ASSERT(hasTagName(SVGNames::feGaussianBlurTag));
 51 ScriptWrappable::init(this);
5152 registerAnimatedPropertiesForSVGFEGaussianBlurElement();
5253}
5354
147126

third_party/WebKit/Source/WebCore/svg/SVGFESpecularLightingElement.cpp

6161 , m_surfaceScale(1)
6262{
6363 ASSERT(hasTagName(SVGNames::feSpecularLightingTag));
 64 ScriptWrappable::init(this);
6465 registerAnimatedPropertiesForSVGFESpecularLightingElement();
6566}
6667
147126

third_party/WebKit/Source/WebCore/svg/SVGGlyphRefElement.cpp

4646 , m_dy(0)
4747{
4848 ASSERT(hasTagName(SVGNames::glyphRefTag));
 49 ScriptWrappable::init(this);
4950 registerAnimatedPropertiesForSVGGlyphRefElement();
5051}
5152
147126

third_party/WebKit/Source/WebCore/svg/SVGStopElement.cpp

4646 , m_offset(0)
4747{
4848 ASSERT(hasTagName(SVGNames::stopTag));
 49 ScriptWrappable::init(this);
4950 registerAnimatedPropertiesForSVGStopElement();
5051}
5152
147126

third_party/WebKit/Source/WebCore/svg/SVGVKernElement.cpp

3232 : SVGElement(tagName, document)
3333{
3434 ASSERT(hasTagName(SVGNames::vkernTag));
 35 ScriptWrappable::init(this);
3536}
3637
3738PassRefPtr<SVGVKernElement> SVGVKernElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFontFaceElement.cpp

5353 , m_fontElement(0)
5454{
5555 ASSERT(hasTagName(font_faceTag));
 56 ScriptWrappable::init(this);
5657 RefPtr<StylePropertySet> styleDeclaration = StylePropertySet::create(CSSStrictMode);
5758 m_fontFaceRule->setProperties(styleDeclaration.release());
5859}
147126

third_party/WebKit/Source/WebCore/svg/SVGSetElement.cpp

3030{
3131 setAnimationMode(ToAnimation);
3232 ASSERT(hasTagName(SVGNames::setTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGSetElement> SVGSetElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEPointLightElement.cpp

3131 : SVGFELightElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::fePointLightTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGFEPointLightElement> SVGFEPointLightElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEBlendElement.cpp

4848 , m_mode(FEBLEND_MODE_NORMAL)
4949{
5050 ASSERT(hasTagName(SVGNames::feBlendTag));
 51 ScriptWrappable::init(this);
5152 registerAnimatedPropertiesForSVGFEBlendElement();
5253}
5354
147126

third_party/WebKit/Source/WebCore/svg/SVGScriptElement.cpp

5050 , m_svgLoadEventTimer(this, &SVGElement::svgLoadEventTimerFired)
5151{
5252 ASSERT(hasTagName(SVGNames::scriptTag));
 53 ScriptWrappable::init(this);
5354 registerAnimatedPropertiesForSVGScriptElement();
5455}
5556
147126

third_party/WebKit/Source/WebCore/svg/SVGMPathElement.cpp

4242 : SVGElement(tagName, document)
4343{
4444 ASSERT(hasTagName(SVGNames::mpathTag));
 45 ScriptWrappable::init(this);
4546 registerAnimatedPropertiesForSVGMPathElement();
4647}
4748
147126

third_party/WebKit/Source/WebCore/svg/SVGAnimateColorElement.cpp

3131 : SVGAnimateElement(tagName, document)
3232{
3333 ASSERT(hasTagName(SVGNames::animateColorTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<SVGAnimateColorElement> SVGAnimateColorElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/svg/SVGFEConvolveMatrixElement.cpp

6969 , m_edgeMode(EDGEMODE_DUPLICATE)
7070{
7171 ASSERT(hasTagName(SVGNames::feConvolveMatrixTag));
 72 ScriptWrappable::init(this);
7273 registerAnimatedPropertiesForSVGFEConvolveMatrixElement();
7374}
7475
147126

third_party/WebKit/Source/WebCore/svg/SVGPolylineElement.cpp

3030 : SVGPolyElement(tagName, document)
3131{
3232 ASSERT(hasTagName(SVGNames::polylineTag));
 33 ScriptWrappable::init(this);
3334}
3435
3536PassRefPtr<SVGPolylineElement> SVGPolylineElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLUListElement.cpp

3535 : HTMLElement(tagName, document)
3636{
3737 ASSERT(hasTagName(ulTag));
 38 ScriptWrappable::init(this);
3839}
3940
4041PassRefPtr<HTMLUListElement> HTMLUListElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLDListElement.cpp

3333 : HTMLElement(tagName, document)
3434{
3535 ASSERT(hasTagName(dlTag));
 36 ScriptWrappable::init(this);
3637}
3738
3839PassRefPtr<HTMLDListElement> HTMLDListElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLMetaElement.cpp

3535 : HTMLElement(tagName, document)
3636{
3737 ASSERT(hasTagName(metaTag));
 38 ScriptWrappable::init(this);
3839}
3940
4041PassRefPtr<HTMLMetaElement> HTMLMetaElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLBodyElement.cpp

4646 : HTMLElement(tagName, document)
4747{
4848 ASSERT(hasTagName(bodyTag));
 49 ScriptWrappable::init(this);
4950}
5051
5152PassRefPtr<HTMLBodyElement> HTMLBodyElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/RadioNodeList.cpp

4141 : LiveNodeList(rootNode, RadioNodeListType, InvalidateForFormControls, rootNode->hasTagName(formTag) ? NodeListIsRootedAtDocument : NodeListIsRootedAtNode)
4242 , m_name(name)
4343{
 44 ScriptWrappable::init(this);
4445}
4546
4647RadioNodeList::~RadioNodeList()
147126

third_party/WebKit/Source/WebCore/html/HTMLDirectoryElement.cpp

3333 : HTMLElement(tagName, document)
3434{
3535 ASSERT(hasTagName(dirTag));
 36 ScriptWrappable::init(this);
3637}
3738
3839PassRefPtr<HTMLDirectoryElement> HTMLDirectoryElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLHRElement.cpp

3838 : HTMLElement(tagName, document)
3939{
4040 ASSERT(hasTagName(hrTag));
 41 ScriptWrappable::init(this);
4142}
4243
4344PassRefPtr<HTMLHRElement> HTMLHRElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLTableRowElement.cpp

4242 : HTMLTablePartElement(tagName, document)
4343{
4444 ASSERT(hasTagName(trTag));
 45 ScriptWrappable::init(this);
4546}
4647
4748PassRefPtr<HTMLTableRowElement> HTMLTableRowElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLElement.h

167167 : StyledElement(tagName, document, type)
168168{
169169 ASSERT(tagName.localName().impl());
 170 ScriptWrappable::init(this);
170171}
171172
172173} // namespace WebCore
147126

third_party/WebKit/Source/WebCore/html/MediaKeyEvent.cpp

4141
4242MediaKeyEvent::MediaKeyEvent()
4343{
 44 ScriptWrappable::init(this);
4445}
4546
4647MediaKeyEvent::MediaKeyEvent(const AtomicString& type, const MediaKeyEventInit& initializer)

5354 , m_errorCode(initializer.errorCode)
5455 , m_systemCode(initializer.systemCode)
5556{
 57 ScriptWrappable::init(this);
5658}
5759
5860MediaKeyEvent::~MediaKeyEvent()
147126

third_party/WebKit/Source/WebCore/html/HTMLAudioElement.cpp

3737 : HTMLMediaElement(tagName, document, createdByParser)
3838{
3939 ASSERT(hasTagName(audioTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<HTMLAudioElement> HTMLAudioElement::create(const QualifiedName& tagName, Document* document, bool createdByParser)
147126

third_party/WebKit/Source/WebCore/html/HTMLUnknownElement.h

4747 HTMLUnknownElement(const QualifiedName& tagName, Document* document)
4848 : HTMLElement(tagName, document)
4949 {
 50 ScriptWrappable::init(this);
5051 }
5152};
5253
147126

third_party/WebKit/Source/WebCore/html/HTMLProgressElement.cpp

4646 , m_value(0)
4747{
4848 ASSERT(hasTagName(progressTag));
 49 ScriptWrappable::init(this);
4950}
5051
5152HTMLProgressElement::~HTMLProgressElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLBaseElement.cpp

3737 : HTMLElement(tagName, document)
3838{
3939 ASSERT(hasTagName(baseTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<HTMLBaseElement> HTMLBaseElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLCollection.cpp

184184 : LiveNodeListBase(ownerNode, rootTypeFromCollectionType(type), invalidationTypeExcludingIdAndNameAttributes(type),
185185 WebCore::shouldOnlyIncludeDirectChildren(type), type, itemAfterOverrideType)
186186{
 187 ScriptWrappable::init(this);
187188}
188189
189190PassRefPtr<HTMLCollection> HTMLCollection::create(Node* base, CollectionType type)
147126

third_party/WebKit/Source/WebCore/html/HTMLTableElement.cpp

5656 , m_padding(1)
5757{
5858 ASSERT(hasTagName(tableTag));
 59 ScriptWrappable::init(this);
5960}
6061
6162PassRefPtr<HTMLTableElement> HTMLTableElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLLegendElement.cpp

4040 : HTMLElement(tagName, document)
4141{
4242 ASSERT(hasTagName(legendTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLLegendElement> HTMLLegendElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLHeadingElement.cpp

2828inline HTMLHeadingElement::HTMLHeadingElement(const QualifiedName& tagName, Document* document)
2929 : HTMLElement(tagName, document)
3030{
 31 ScriptWrappable::init(this);
3132}
3233
3334PassRefPtr<HTMLHeadingElement> HTMLHeadingElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLFieldSetElement.cpp

4242 , m_documentVersion(0)
4343{
4444 ASSERT(hasTagName(fieldsetTag));
 45 ScriptWrappable::init(this);
4546}
4647
4748PassRefPtr<HTMLFieldSetElement> HTMLFieldSetElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form)
147126

third_party/WebKit/Source/WebCore/html/HTMLDialogElement.cpp

3838 : HTMLElement(tagName, document)
3939{
4040 ASSERT(hasTagName(dialogTag));
 41 ScriptWrappable::init(this);
4142}
4243
4344PassRefPtr<HTMLDialogElement> HTMLDialogElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLDocument.cpp

8383HTMLDocument::HTMLDocument(Frame* frame, const KURL& url)
8484 : Document(frame, url, false, true)
8585{
 86 ScriptWrappable::init(this);
8687 clearXMLVersion();
8788}
8889
147126

third_party/WebKit/Source/WebCore/html/HTMLHtmlElement.cpp

4040 : HTMLElement(tagName, document)
4141{
4242 ASSERT(hasTagName(htmlTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLHtmlElement> HTMLHtmlElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLLabelElement.cpp

5656 : HTMLElement(tagName, document)
5757{
5858 ASSERT(hasTagName(labelTag));
 59 ScriptWrappable::init(this);
5960}
6061
6162PassRefPtr<HTMLLabelElement> HTMLLabelElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLTableColElement.cpp

4040 : HTMLTablePartElement(tagName, document)
4141 , m_span(1)
4242{
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLTableColElement> HTMLTableColElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLPreElement.cpp

3636inline HTMLPreElement::HTMLPreElement(const QualifiedName& tagName, Document* document)
3737 : HTMLElement(tagName, document)
3838{
 39 ScriptWrappable::init(this);
3940}
4041
4142PassRefPtr<HTMLPreElement> HTMLPreElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLMenuElement.cpp

3333 : HTMLElement(tagName, document)
3434{
3535 ASSERT(hasTagName(menuTag));
 36 ScriptWrappable::init(this);
3637}
3738
3839PassRefPtr<HTMLMenuElement> HTMLMenuElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLVideoElement.cpp

5151 : HTMLMediaElement(tagName, document, createdByParser)
5252{
5353 ASSERT(hasTagName(videoTag));
 54 ScriptWrappable::init(this);
5455 if (document->settings())
5556 m_defaultPosterURL = document->settings()->defaultVideoPosterURL();
5657}
147126

third_party/WebKit/Source/WebCore/html/HTMLSelectElement.cpp

7979 , m_shouldRecalcListItems(false)
8080{
8181 ASSERT(hasTagName(selectTag));
 82 ScriptWrappable::init(this);
8283}
8384
8485PassRefPtr<HTMLSelectElement> HTMLSelectElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form)
147126

third_party/WebKit/Source/WebCore/html/HTMLAppletElement.cpp

4343 : HTMLPlugInImageElement(tagName, document, createdByParser, ShouldNotPreferPlugInsForImages)
4444{
4545 ASSERT(hasTagName(appletTag));
 46 ScriptWrappable::init(this);
4647
4748 m_serviceType = "application/x-java-applet";
4849}
147126

third_party/WebKit/Source/WebCore/html/HTMLTableCellElement.cpp

4545inline HTMLTableCellElement::HTMLTableCellElement(const QualifiedName& tagName, Document* document)
4646 : HTMLTablePartElement(tagName, document)
4747{
 48 ScriptWrappable::init(this);
4849}
4950
5051PassRefPtr<HTMLTableCellElement> HTMLTableCellElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLOListElement.cpp

4242 , m_shouldRecalculateItemCount(false)
4343{
4444 ASSERT(hasTagName(olTag));
 45 ScriptWrappable::init(this);
4546}
4647
4748PassRefPtr<HTMLOListElement> HTMLOListElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLIFrameElement.cpp

4343 : HTMLFrameElementBase(tagName, document)
4444{
4545 ASSERT(hasTagName(iframeTag));
 46 ScriptWrappable::init(this);
4647 setHasCustomStyleCallbacks();
4748}
4849
147126

third_party/WebKit/Source/WebCore/html/HTMLTableSectionElement.cpp

4040inline HTMLTableSectionElement::HTMLTableSectionElement(const QualifiedName& tagName, Document* document)
4141 : HTMLTablePartElement(tagName, document)
4242{
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLTableSectionElement> HTMLTableSectionElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLOptGroupElement.cpp

4343{
4444 ASSERT(hasTagName(optgroupTag));
4545 setHasCustomStyleCallbacks();
 46 ScriptWrappable::init(this);
4647}
4748
4849PassRefPtr<HTMLOptGroupElement> HTMLOptGroupElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLHeadElement.cpp

3535 : HTMLElement(tagName, document)
3636{
3737 ASSERT(hasTagName(headTag));
 38 ScriptWrappable::init(this);
3839}
3940
4041PassRefPtr<HTMLHeadElement> HTMLHeadElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLButtonElement.cpp

4646 , m_isActivatedSubmit(false)
4747{
4848 ASSERT(hasTagName(buttonTag));
 49 ScriptWrappable::init(this);
4950}
5051
5152PassRefPtr<HTMLButtonElement> HTMLButtonElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form)
147126

third_party/WebKit/Source/WebCore/html/HTMLMeterElement.cpp

4545 : LabelableElement(tagName, document)
4646{
4747 ASSERT(hasTagName(meterTag));
 48 ScriptWrappable::init(this);
4849}
4950
5051HTMLMeterElement::~HTMLMeterElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLDivElement.cpp

3636 : HTMLElement(tagName, document)
3737{
3838 ASSERT(hasTagName(divTag));
 39 ScriptWrappable::init(this);
3940}
4041
4142PassRefPtr<HTMLDivElement> HTMLDivElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/track/TrackEvent.cpp

4040
4141TrackEvent::TrackEvent()
4242{
 43 ScriptWrappable::init(this);
4344}
4445
4546TrackEvent::TrackEvent(const AtomicString& type, const TrackEventInit& initializer)
4647 : Event(type, initializer)
4748 , m_track(initializer.track)
4849{
 50 ScriptWrappable::init(this);
4951}
5052
5153TrackEvent::~TrackEvent()
147126

third_party/WebKit/Source/WebCore/html/HTMLQuoteElement.cpp

3535 : HTMLElement(tagName, document)
3636{
3737 ASSERT(hasTagName(qTag) || hasTagName(blockquoteTag));
 38 ScriptWrappable::init(this);
3839}
3940
4041PassRefPtr<HTMLQuoteElement> HTMLQuoteElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLMarqueeElement.cpp

4040 , ActiveDOMObject(document)
4141{
4242 ASSERT(hasTagName(marqueeTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLMarqueeElement> HTMLMarqueeElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLDataListElement.cpp

4242inline HTMLDataListElement::HTMLDataListElement(const QualifiedName& tagName, Document* document)
4343 : HTMLElement(tagName, document)
4444{
 45 ScriptWrappable::init(this);
4546}
4647
4748PassRefPtr<HTMLDataListElement> HTMLDataListElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLFormControlsCollection.cpp

4040 : HTMLCollection(ownerNode, FormControls, OverridesItemAfter)
4141{
4242 ASSERT(ownerNode->hasTagName(formTag) || ownerNode->hasTagName(fieldsetTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLFormControlsCollection> HTMLFormControlsCollection::create(Node* ownerNode, CollectionType)
147126

third_party/WebKit/Source/WebCore/html/HTMLBRElement.cpp

3737 : HTMLElement(tagName, document)
3838{
3939 ASSERT(hasTagName(brTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<HTMLBRElement> HTMLBRElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLTableCaptionElement.cpp

3737 : HTMLElement(tagName, document)
3838{
3939 ASSERT(hasTagName(captionTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<HTMLTableCaptionElement> HTMLTableCaptionElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLFrameSetElement.cpp

5656 , m_noresize(false)
5757{
5858 ASSERT(hasTagName(framesetTag));
59 
 59 ScriptWrappable::init(this);
6060 setHasCustomStyleCallbacks();
6161}
6262
147126

third_party/WebKit/Source/WebCore/html/HTMLAllCollection.cpp

3838HTMLAllCollection::HTMLAllCollection(Node* node, CollectionType type)
3939 : HTMLCollection(node, type, DoesNotOverrideItemAfter)
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344HTMLAllCollection::~HTMLAllCollection()
147126

third_party/WebKit/Source/WebCore/html/HTMLStyleElement.cpp

5454 , m_scopedStyleRegistrationState(NotRegistered)
5555{
5656 ASSERT(hasTagName(styleTag));
 57 ScriptWrappable::init(this);
5758}
5859
5960HTMLStyleElement::~HTMLStyleElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLTrackElement.cpp

5959{
6060 LOG(Media, "HTMLTrackElement::HTMLTrackElement - %p", this);
6161 ASSERT(hasTagName(trackTag));
 62 ScriptWrappable::init(this);
6263}
6364
6465HTMLTrackElement::~HTMLTrackElement()
147126

third_party/WebKit/Source/WebCore/html/shadow/HTMLShadowElement.cpp

4545 : InsertionPoint(tagName, document)
4646{
4747 ASSERT(hasTagName(HTMLNames::shadowTag));
 48 ScriptWrappable::init(this);
4849}
4950
5051PassRefPtr<HTMLShadowElement> HTMLShadowElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/shadow/HTMLContentElement.cpp

6868 , m_shouldParseSelectorList(false)
6969 , m_isValidSelector(true)
7070{
 71 if (RuntimeEnabledFeatures::shadowDOMEnabled())
 72 ScriptWrappable::init(this);
7173}
7274
7375HTMLContentElement::~HTMLContentElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLFontElement.cpp

4444 : HTMLElement(tagName, document)
4545{
4646 ASSERT(hasTagName(fontTag));
 47 ScriptWrappable::init(this);
4748}
4849
4950PassRefPtr<HTMLFontElement> HTMLFontElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLEmbedElement.cpp

4848 : HTMLPlugInImageElement(tagName, document, createdByParser, ShouldPreferPlugInsForImages)
4949{
5050 ASSERT(hasTagName(embedTag));
 51 ScriptWrappable::init(this);
5152}
5253
5354PassRefPtr<HTMLEmbedElement> HTMLEmbedElement::create(const QualifiedName& tagName, Document* document, bool createdByParser)
147126

third_party/WebKit/Source/WebCore/html/HTMLMapElement.cpp

4343 : HTMLElement(tagName, document)
4444{
4545 ASSERT(hasTagName(mapTag));
 46 ScriptWrappable::init(this);
4647}
4748
4849PassRefPtr<HTMLMapElement> HTMLMapElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLElement.cpp

3030#include "CSSPropertyNames.h"
3131#include "CSSValueKeywords.h"
3232#include "CSSValuePool.h"
 33#include "CustomElementConstructor.h"
 34#include "CustomElementRegistry.h"
3335#include "DOMSettableTokenList.h"
3436#include "DocumentFragment.h"
3537#include "Event.h"

4951#include "HTMLTextFormControlElement.h"
5052#include "NodeTraversal.h"
5153#include "RenderWordBreak.h"
 54#include "RuntimeEnabledFeatures.h"
5255#include "ScriptEventListener.h"
5356#include "Settings.h"
5457#include "StylePropertySet.h"

332335 } else if (name == onwebkitfullscreenerrorAttr) {
333336 setAttributeEventListener(eventNames().webkitfullscreenerrorEvent, createAttributeEventListener(this, name, value));
334337#endif
 338#if ENABLE(CUSTOM_ELEMENTS)
 339 } else if (name == isAttr) {
 340 if (RuntimeEnabledFeatures::customDOMElementsEnabled() && document()->registry() && document()->registry()->findFor(this))
 341 ScriptWrappable::initAsCustomElementConstructorCaller(this);
 342#endif
335343 }
336344}
337345
147126

third_party/WebKit/Source/WebCore/html/canvas/WebGLRenderingContext.cpp

477477 , m_numGLErrorsToConsoleAllowed(maxGLErrorsAllowedToConsole)
478478{
479479 ASSERT(m_context);
 480 ScriptWrappable::init(this);
 481
480482 m_contextGroup = WebGLContextGroup::create();
481483 m_contextGroup->addContext(this);
482484
147126

third_party/WebKit/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp

136136#if !ENABLE(DASHBOARD_SUPPORT)
137137 ASSERT_UNUSED(usesDashboardCompatibilityMode, !usesDashboardCompatibilityMode);
138138#endif
 139 ScriptWrappable::init(this);
139140}
140141
141142void CanvasRenderingContext2D::unwindStateStack()
147126

third_party/WebKit/Source/WebCore/html/canvas/CanvasRenderingContext.cpp

3939CanvasRenderingContext::CanvasRenderingContext(HTMLCanvasElement* canvas)
4040 : m_canvas(canvas)
4141{
 42 ScriptWrappable::init(this);
4243}
4344
4445bool CanvasRenderingContext::wouldTaintOrigin(const CanvasPattern* pattern)
147126

third_party/WebKit/Source/WebCore/html/canvas/WebGLContextEvent.cpp

3838
3939WebGLContextEvent::WebGLContextEvent()
4040{
 41 ScriptWrappable::init(this);
4142}
4243
4344WebGLContextEvent::WebGLContextEvent(const AtomicString& type, bool canBubble, bool cancelable, const String& statusMessage)
4445 : Event(type, canBubble, cancelable)
4546 , m_statusMessage(statusMessage)
4647{
 48 ScriptWrappable::init(this);
4749}
4850
4951WebGLContextEvent::WebGLContextEvent(const AtomicString& type, const WebGLContextEventInit& initializer)
5052 : Event(type, initializer)
5153 , m_statusMessage(initializer.statusMessage)
5254{
 55 ScriptWrappable::init(this);
5356}
5457
5558WebGLContextEvent::~WebGLContextEvent()
147126

third_party/WebKit/Source/WebCore/html/HTMLParamElement.cpp

3535 : HTMLElement(tagName, document)
3636{
3737 ASSERT(hasTagName(paramTag));
 38 ScriptWrappable::init(this);
3839}
3940
4041PassRefPtr<HTMLParamElement> HTMLParamElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLParagraphElement.cpp

3737 : HTMLElement(tagName, document)
3838{
3939 ASSERT(hasTagName(pTag));
 40 ScriptWrappable::init(this);
4041}
4142
4243PassRefPtr<HTMLParagraphElement> HTMLParagraphElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLTextAreaElement.cpp

9494{
9595 ASSERT(hasTagName(textareaTag));
9696 setFormControlValueMatchesRenderer(true);
 97 ScriptWrappable::init(this);
9798}
9899
99100PassRefPtr<HTMLTextAreaElement> HTMLTextAreaElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form)
147126

third_party/WebKit/Source/WebCore/html/HTMLMediaElement.cpp

317317#if ENABLE(VIDEO_TRACK)
318318 document->registerForCaptionPreferencesChangedCallbacks(this);
319319#endif
 320
 321 ScriptWrappable::init(this);
320322}
321323
322324HTMLMediaElement::~HTMLMediaElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLKeygenElement.cpp

6969 : HTMLFormControlElementWithState(tagName, document, form)
7070{
7171 ASSERT(hasTagName(keygenTag));
 72 ScriptWrappable::init(this);
7273
7374 // Create a select element with one option element for each key size.
7475 Vector<String> keys;
147126

third_party/WebKit/Source/WebCore/html/HTMLInputElement.cpp

139139#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
140140 setHasCustomStyleCallbacks();
141141#endif
 142 ScriptWrappable::init(this);
142143}
143144
144145PassRefPtr<HTMLInputElement> HTMLInputElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form, bool createdByParser)
147126

third_party/WebKit/Source/WebCore/html/HTMLScriptElement.cpp

4040 , ScriptElement(this, wasInsertedByParser, alreadyStarted)
4141{
4242 ASSERT(hasTagName(scriptTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLScriptElement> HTMLScriptElement::create(const QualifiedName& tagName, Document* document, bool wasInsertedByParser, bool alreadyStarted)
147126

third_party/WebKit/Source/WebCore/html/HTMLObjectElement.cpp

6464{
6565 ASSERT(hasTagName(objectTag));
6666 setForm(form ? form : findFormAncestor());
 67 ScriptWrappable::init(this);
6768}
6869
6970inline HTMLObjectElement::~HTMLObjectElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLImageElement.cpp

4949 , m_compositeOperator(CompositeSourceOver)
5050{
5151 ASSERT(hasTagName(imgTag));
 52 ScriptWrappable::init(this);
5253 if (form)
5354 form->registerImgElement(this);
5455}
147126

third_party/WebKit/Source/WebCore/html/HTMLOptionsCollection.cpp

3131 : HTMLCollection(select, SelectOptions, DoesNotOverrideItemAfter)
3232{
3333 ASSERT(select->hasTagName(HTMLNames::selectTag));
 34 ScriptWrappable::init(this);
3435}
3536
3637PassRefPtr<HTMLOptionsCollection> HTMLOptionsCollection::create(Node* select, CollectionType)
147126

third_party/WebKit/Source/WebCore/html/HTMLLinkElement.cpp

7474 , m_pendingSheetType(None)
7575{
7676 ASSERT(hasTagName(linkTag));
 77 ScriptWrappable::init(this);
7778}
7879
7980PassRefPtr<HTMLLinkElement> HTMLLinkElement::create(const QualifiedName& tagName, Document* document, bool createdByParser)
147126

third_party/WebKit/Source/WebCore/html/HTMLFormElement.cpp

8181#endif
8282{
8383 ASSERT(hasTagName(formTag));
 84 ScriptWrappable::init(this);
8485}
8586
8687PassRefPtr<HTMLFormElement> HTMLFormElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLOptionElement.cpp

5757{
5858 ASSERT(hasTagName(optionTag));
5959 setHasCustomStyleCallbacks();
 60 ScriptWrappable::init(this);
6061}
6162
6263PassRefPtr<HTMLOptionElement> HTMLOptionElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLAreaElement.cpp

4646 , m_shape(Unknown)
4747{
4848 ASSERT(hasTagName(areaTag));
 49 ScriptWrappable::init(this);
4950}
5051
5152PassRefPtr<HTMLAreaElement> HTMLAreaElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLTemplateElement.cpp

4747inline HTMLTemplateElement::HTMLTemplateElement(const QualifiedName& tagName, Document* document)
4848 : HTMLElement(tagName, document)
4949{
 50 ScriptWrappable::init(this);
5051}
5152
5253HTMLTemplateElement::~HTMLTemplateElement()
147126

third_party/WebKit/Source/WebCore/html/HTMLTitleElement.cpp

3939 : HTMLElement(tagName, document)
4040{
4141 ASSERT(hasTagName(titleTag));
 42 ScriptWrappable::init(this);
4243}
4344
4445PassRefPtr<HTMLTitleElement> HTMLTitleElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLFrameElement.cpp

4040 , m_frameBorderSet(false)
4141{
4242 ASSERT(hasTagName(frameTag));
 43 ScriptWrappable::init(this);
4344}
4445
4546PassRefPtr<HTMLFrameElement> HTMLFrameElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLOutputElement.cpp

4444 , m_defaultValue("")
4545 , m_tokens(DOMSettableTokenList::create())
4646{
 47 ScriptWrappable::init(this);
4748}
4849
4950PassRefPtr<HTMLOutputElement> HTMLOutputElement::create(const QualifiedName& tagName, Document* document, HTMLFormElement* form)
147126

third_party/WebKit/Source/WebCore/html/HTMLSourceElement.cpp

4646{
4747 LOG(Media, "HTMLSourceElement::HTMLSourceElement - %p", this);
4848 ASSERT(hasTagName(sourceTag));
 49 ScriptWrappable::init(this);
4950}
5051
5152PassRefPtr<HTMLSourceElement> HTMLSourceElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLBaseFontElement.cpp

3333 : HTMLElement(tagName, document)
3434{
3535 ASSERT(hasTagName(basefontTag));
 36 ScriptWrappable::init(this);
3637}
3738
3839PassRefPtr<HTMLBaseFontElement> HTMLBaseFontElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLLIElement.cpp

3838 : HTMLElement(tagName, document)
3939{
4040 ASSERT(hasTagName(liTag));
 41 ScriptWrappable::init(this);
4142}
4243
4344PassRefPtr<HTMLLIElement> HTMLLIElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLModElement.cpp

3232inline HTMLModElement::HTMLModElement(const QualifiedName& tagName, Document* document)
3333 : HTMLElement(tagName, document)
3434{
 35 ScriptWrappable::init(this);
3536}
3637
3738PassRefPtr<HTMLModElement> HTMLModElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLDetailsElement.cpp

103103 , m_isOpen(false)
104104{
105105 ASSERT(hasTagName(detailsTag));
 106 ScriptWrappable::init(this);
106107}
107108
108109RenderObject* HTMLDetailsElement::createRenderer(RenderArena* arena, RenderStyle*)
147126

third_party/WebKit/Source/WebCore/html/ValidityState.h

5757 bool valid() const;
5858
5959private:
60  ValidityState(FormAssociatedElement* control) : m_control(control) { }
 60 ValidityState(FormAssociatedElement* control) : m_control(control)
 61 {
 62 ScriptWrappable::init(this);
 63 }
6164
6265 FormAssociatedElement* m_control;
6366};
147126

third_party/WebKit/Source/WebCore/html/HTMLSpanElement.cpp

3636 : HTMLElement(tagName, document)
3737{
3838 ASSERT(hasTagName(spanTag));
 39 ScriptWrappable::init(this);
3940}
4041
4142PassRefPtr<HTMLSpanElement> HTMLSpanElement::create(const QualifiedName& tagName, Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLAnchorElement.cpp

5555 , m_linkRelations(0)
5656 , m_cachedVisitedLinkHash(0)
5757{
 58 ScriptWrappable::init(this);
5859}
5960
6061PassRefPtr<HTMLAnchorElement> HTMLAnchorElement::create(Document* document)
147126

third_party/WebKit/Source/WebCore/html/HTMLCanvasElement.cpp

9191 , m_didClearImageBuffer(false)
9292{
9393 ASSERT(hasTagName(canvasTag));
 94 ScriptWrappable::init(this);
9495}
9596
9697PassRefPtr<HTMLCanvasElement> HTMLCanvasElement::create(Document* document)
147126