OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 22 matching lines...) Expand all Loading... |
33 #include "wtf/Forward.h" | 33 #include "wtf/Forward.h" |
34 #include "wtf/HashMap.h" | 34 #include "wtf/HashMap.h" |
35 #include "wtf/OwnPtr.h" | 35 #include "wtf/OwnPtr.h" |
36 #include "wtf/Vector.h" | 36 #include "wtf/Vector.h" |
37 | 37 |
38 namespace WebCore { | 38 namespace WebCore { |
39 | 39 |
40 class DOMDataStore; | 40 class DOMDataStore; |
41 class GCEventData; | 41 class GCEventData; |
42 class StringCache; | 42 class StringCache; |
| 43 class ThenableCoercions; |
43 class V8HiddenPropertyName; | 44 class V8HiddenPropertyName; |
44 struct WrapperTypeInfo; | 45 struct WrapperTypeInfo; |
45 | 46 |
46 class ExternalStringVisitor; | 47 class ExternalStringVisitor; |
47 | 48 |
48 typedef WTF::Vector<DOMDataStore*> DOMDataList; | 49 typedef WTF::Vector<DOMDataStore*> DOMDataList; |
49 | 50 |
50 class V8PerIsolateData { | 51 class V8PerIsolateData { |
51 public: | 52 public: |
52 static V8PerIsolateData* create(v8::Isolate*); | 53 static V8PerIsolateData* create(v8::Isolate*); |
(...skipping 27 matching lines...) Expand all Loading... |
80 } | 81 } |
81 | 82 |
82 v8::Handle<v8::FunctionTemplate> toStringTemplate(); | 83 v8::Handle<v8::FunctionTemplate> toStringTemplate(); |
83 v8::Handle<v8::FunctionTemplate> lazyEventListenerToStringTemplate() | 84 v8::Handle<v8::FunctionTemplate> lazyEventListenerToStringTemplate() |
84 { | 85 { |
85 return v8::Local<v8::FunctionTemplate>::New(m_isolate, m_lazyEventListen
erToStringTemplate); | 86 return v8::Local<v8::FunctionTemplate>::New(m_isolate, m_lazyEventListen
erToStringTemplate); |
86 } | 87 } |
87 | 88 |
88 StringCache* stringCache() { return m_stringCache.get(); } | 89 StringCache* stringCache() { return m_stringCache.get(); } |
89 | 90 |
| 91 ThenableCoercions* thenableCoercions() { return m_thenableCoercions.get(); } |
| 92 |
90 v8::Persistent<v8::Value>& ensureLiveRoot(); | 93 v8::Persistent<v8::Value>& ensureLiveRoot(); |
91 | 94 |
92 DOMDataList& allStores() { return m_domDataList; } | 95 DOMDataList& allStores() { return m_domDataList; } |
93 | 96 |
94 V8HiddenPropertyName* hiddenPropertyName() { return m_hiddenPropertyName.get
(); } | 97 V8HiddenPropertyName* hiddenPropertyName() { return m_hiddenPropertyName.get
(); } |
95 | 98 |
96 void registerDOMDataStore(DOMDataStore* domDataStore) | 99 void registerDOMDataStore(DOMDataStore* domDataStore) |
97 { | 100 { |
98 ASSERT(m_domDataList.find(domDataStore) == kNotFound); | 101 ASSERT(m_domDataList.find(domDataStore) == kNotFound); |
99 m_domDataList.append(domDataStore); | 102 m_domDataList.append(domDataStore); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 static void constructorOfToString(const v8::FunctionCallbackInfo<v8::Value>&
); | 151 static void constructorOfToString(const v8::FunctionCallbackInfo<v8::Value>&
); |
149 | 152 |
150 v8::Isolate* m_isolate; | 153 v8::Isolate* m_isolate; |
151 TemplateMap m_rawTemplatesForMainWorld; | 154 TemplateMap m_rawTemplatesForMainWorld; |
152 TemplateMap m_rawTemplatesForNonMainWorld; | 155 TemplateMap m_rawTemplatesForNonMainWorld; |
153 TemplateMap m_templatesForMainWorld; | 156 TemplateMap m_templatesForMainWorld; |
154 TemplateMap m_templatesForNonMainWorld; | 157 TemplateMap m_templatesForNonMainWorld; |
155 ScopedPersistent<v8::FunctionTemplate> m_toStringTemplate; | 158 ScopedPersistent<v8::FunctionTemplate> m_toStringTemplate; |
156 v8::Persistent<v8::FunctionTemplate> m_lazyEventListenerToStringTemplate; | 159 v8::Persistent<v8::FunctionTemplate> m_lazyEventListenerToStringTemplate; |
157 OwnPtr<StringCache> m_stringCache; | 160 OwnPtr<StringCache> m_stringCache; |
| 161 OwnPtr<ThenableCoercions> m_thenableCoercions; |
158 | 162 |
159 Vector<DOMDataStore*> m_domDataList; | 163 Vector<DOMDataStore*> m_domDataList; |
160 DOMDataStore* m_workerDomDataStore; | 164 DOMDataStore* m_workerDomDataStore; |
161 | 165 |
162 OwnPtr<V8HiddenPropertyName> m_hiddenPropertyName; | 166 OwnPtr<V8HiddenPropertyName> m_hiddenPropertyName; |
163 ScopedPersistent<v8::Value> m_liveRoot; | 167 ScopedPersistent<v8::Value> m_liveRoot; |
164 ScopedPersistent<v8::Context> m_regexContext; | 168 ScopedPersistent<v8::Context> m_regexContext; |
165 | 169 |
166 const char* m_previousSamplingState; | 170 const char* m_previousSamplingState; |
167 | 171 |
168 bool m_constructorMode; | 172 bool m_constructorMode; |
169 friend class ConstructorMode; | 173 friend class ConstructorMode; |
170 | 174 |
171 int m_recursionLevel; | 175 int m_recursionLevel; |
172 | 176 |
173 #ifndef NDEBUG | 177 #ifndef NDEBUG |
174 int m_internalScriptRecursionLevel; | 178 int m_internalScriptRecursionLevel; |
175 #endif | 179 #endif |
176 OwnPtr<GCEventData> m_gcEventData; | 180 OwnPtr<GCEventData> m_gcEventData; |
177 bool m_shouldCollectGarbageSoon; | 181 bool m_shouldCollectGarbageSoon; |
178 }; | 182 }; |
179 | 183 |
180 } // namespace WebCore | 184 } // namespace WebCore |
181 | 185 |
182 #endif // V8PerIsolateData_h | 186 #endif // V8PerIsolateData_h |
OLD | NEW |