| 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 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 145 // Accessor to the cache of cross-origin accessible operation's templates. | 145 // Accessor to the cache of cross-origin accessible operation's templates. |
| 146 // Created templates get automatically cached. | 146 // Created templates get automatically cached. |
| 147 v8::Local<v8::FunctionTemplate> findOrCreateOperationTemplate( | 147 v8::Local<v8::FunctionTemplate> findOrCreateOperationTemplate( |
| 148 const DOMWrapperWorld&, | 148 const DOMWrapperWorld&, |
| 149 const void* key, | 149 const void* key, |
| 150 v8::FunctionCallback, | 150 v8::FunctionCallback, |
| 151 v8::Local<v8::Value> data, | 151 v8::Local<v8::Value> data, |
| 152 v8::Local<v8::Signature>, | 152 v8::Local<v8::Signature>, |
| 153 int length); | 153 int length); |
| 154 | 154 |
| 155 // Obtains a pointer to an array of names, given a lookup key. If it does not |
| 156 // yet exist, it is created from the given array of strings. Once created, |
| 157 // these live for as long as the isolate, so this is appropriate only for a |
| 158 // compile-time list of related names, such as IDL dictionary keys. |
| 159 const v8::Eternal<v8::Name>* findOrCreateEternalNameCache( |
| 160 const void* lookupKey, |
| 161 const char* const names[], |
| 162 size_t count); |
| 163 |
| 155 bool hasInstance(const WrapperTypeInfo* untrusted, v8::Local<v8::Value>); | 164 bool hasInstance(const WrapperTypeInfo* untrusted, v8::Local<v8::Value>); |
| 156 v8::Local<v8::Object> findInstanceInPrototypeChain(const WrapperTypeInfo*, | 165 v8::Local<v8::Object> findInstanceInPrototypeChain(const WrapperTypeInfo*, |
| 157 v8::Local<v8::Value>); | 166 v8::Local<v8::Value>); |
| 158 | 167 |
| 159 v8::Local<v8::Context> ensureScriptRegexpContext(); | 168 v8::Local<v8::Context> ensureScriptRegexpContext(); |
| 160 void clearScriptRegexpContext(); | 169 void clearScriptRegexpContext(); |
| 161 | 170 |
| 162 // EndOfScopeTasks are run when control is returning | 171 // EndOfScopeTasks are run when control is returning |
| 163 // to C++ from script, after executing a script task (e.g. callback, | 172 // to C++ from script, after executing a script task (e.g. callback, |
| 164 // event) or microtasks (e.g. promise). This is explicitly needed for | 173 // event) or microtasks (e.g. promise). This is explicitly needed for |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 231 | 240 |
| 232 // m_interfaceTemplateMapFor{,Non}MainWorld holds function templates for | 241 // m_interfaceTemplateMapFor{,Non}MainWorld holds function templates for |
| 233 // the inerface objects. | 242 // the inerface objects. |
| 234 V8FunctionTemplateMap m_interfaceTemplateMapForMainWorld; | 243 V8FunctionTemplateMap m_interfaceTemplateMapForMainWorld; |
| 235 V8FunctionTemplateMap m_interfaceTemplateMapForNonMainWorld; | 244 V8FunctionTemplateMap m_interfaceTemplateMapForNonMainWorld; |
| 236 // m_operationTemplateMapFor{,Non}MainWorld holds function templates for | 245 // m_operationTemplateMapFor{,Non}MainWorld holds function templates for |
| 237 // the cross-origin accessible DOM operations. | 246 // the cross-origin accessible DOM operations. |
| 238 V8FunctionTemplateMap m_operationTemplateMapForMainWorld; | 247 V8FunctionTemplateMap m_operationTemplateMapForMainWorld; |
| 239 V8FunctionTemplateMap m_operationTemplateMapForNonMainWorld; | 248 V8FunctionTemplateMap m_operationTemplateMapForNonMainWorld; |
| 240 | 249 |
| 250 // Contains lists of eternal names, such as dictionary keys. |
| 251 HashMap<const void*, Vector<v8::Eternal<v8::Name>>> m_eternalNameCache; |
| 252 |
| 241 std::unique_ptr<StringCache> m_stringCache; | 253 std::unique_ptr<StringCache> m_stringCache; |
| 242 std::unique_ptr<V8HiddenValue> m_hiddenValue; | 254 std::unique_ptr<V8HiddenValue> m_hiddenValue; |
| 243 std::unique_ptr<V8PrivateProperty> m_privateProperty; | 255 std::unique_ptr<V8PrivateProperty> m_privateProperty; |
| 244 ScopedPersistent<v8::Value> m_liveRoot; | 256 ScopedPersistent<v8::Value> m_liveRoot; |
| 245 RefPtr<ScriptState> m_scriptRegexpScriptState; | 257 RefPtr<ScriptState> m_scriptRegexpScriptState; |
| 246 | 258 |
| 247 bool m_constructorMode; | 259 bool m_constructorMode; |
| 248 friend class ConstructorMode; | 260 friend class ConstructorMode; |
| 249 | 261 |
| 250 bool m_useCounterDisabled; | 262 bool m_useCounterDisabled; |
| 251 friend class UseCounterDisabledScope; | 263 friend class UseCounterDisabledScope; |
| 252 | 264 |
| 253 bool m_isHandlingRecursionLevelError; | 265 bool m_isHandlingRecursionLevelError; |
| 254 bool m_isReportingException; | 266 bool m_isReportingException; |
| 255 | 267 |
| 256 Vector<std::unique_ptr<EndOfScopeTask>> m_endOfScopeTasks; | 268 Vector<std::unique_ptr<EndOfScopeTask>> m_endOfScopeTasks; |
| 257 std::unique_ptr<Data> m_threadDebugger; | 269 std::unique_ptr<Data> m_threadDebugger; |
| 258 | 270 |
| 259 Persistent<ActiveScriptWrappableSet> m_activeScriptWrappables; | 271 Persistent<ActiveScriptWrappableSet> m_activeScriptWrappables; |
| 260 std::unique_ptr<ScriptWrappableVisitor> m_scriptWrappableVisitor; | 272 std::unique_ptr<ScriptWrappableVisitor> m_scriptWrappableVisitor; |
| 261 }; | 273 }; |
| 262 | 274 |
| 263 } // namespace blink | 275 } // namespace blink |
| 264 | 276 |
| 265 #endif // V8PerIsolateData_h | 277 #endif // V8PerIsolateData_h |
| OLD | NEW |