diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-04-10 09:28:39 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-04-10 09:28:39 +0000 |
commit | 32761a6cee1d0dee366b885b7b9c777e67885688 (patch) | |
tree | d6bec92bebfb216f4126356e55518842c2f476a1 /Source/JavaScriptCore/inspector/JSInjectedScriptHost.h | |
parent | a4e969f4965059196ca948db781e52f7cfebf19e (diff) | |
download | WebKitGtk-tarball-32761a6cee1d0dee366b885b7b9c777e67885688.tar.gz |
webkitgtk-2.4.11webkitgtk-2.4.11
Diffstat (limited to 'Source/JavaScriptCore/inspector/JSInjectedScriptHost.h')
-rw-r--r-- | Source/JavaScriptCore/inspector/JSInjectedScriptHost.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/Source/JavaScriptCore/inspector/JSInjectedScriptHost.h b/Source/JavaScriptCore/inspector/JSInjectedScriptHost.h index 2ff5fac39..dc2356802 100644 --- a/Source/JavaScriptCore/inspector/JSInjectedScriptHost.h +++ b/Source/JavaScriptCore/inspector/JSInjectedScriptHost.h @@ -26,6 +26,8 @@ #ifndef JSInjectedScriptHost_h #define JSInjectedScriptHost_h +#if ENABLE(INSPECTOR) + #include "JSDestructibleObject.h" namespace Inspector { @@ -35,7 +37,6 @@ class InjectedScriptHost; class JSInjectedScriptHost : public JSC::JSDestructibleObject { public: typedef JSC::JSDestructibleObject Base; - static const unsigned StructureFlags = Base::StructureFlags; DECLARE_INFO; @@ -44,9 +45,9 @@ public: return JSC::Structure::create(vm, globalObject, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), info()); } - static JSInjectedScriptHost* create(JSC::VM& vm, JSC::Structure* structure, Ref<InjectedScriptHost>&& impl) + static JSInjectedScriptHost* create(JSC::VM& vm, JSC::Structure* structure, PassRefPtr<InjectedScriptHost> impl) { - JSInjectedScriptHost* instance = new (NotNull, JSC::allocateCell<JSInjectedScriptHost>(vm.heap)) JSInjectedScriptHost(vm, structure, WTFMove(impl)); + JSInjectedScriptHost* instance = new (NotNull, JSC::allocateCell<JSInjectedScriptHost>(vm.heap)) JSInjectedScriptHost(vm, structure, impl); instance->finishCreation(vm); return instance; } @@ -54,7 +55,8 @@ public: static JSC::JSObject* createPrototype(JSC::VM&, JSC::JSGlobalObject*); static void destroy(JSC::JSCell*); - InjectedScriptHost& impl() const { return const_cast<InjectedScriptHost&>(m_wrapped.get()); } + InjectedScriptHost& impl() const { return *m_impl; } + void releaseImpl(); // Attributes. JSC::JSValue evaluate(JSC::ExecState*) const; @@ -62,24 +64,27 @@ public: // Functions. JSC::JSValue internalConstructorName(JSC::ExecState*); JSC::JSValue isHTMLAllCollection(JSC::ExecState*); - JSC::JSValue subtype(JSC::ExecState*); + JSC::JSValue type(JSC::ExecState*); JSC::JSValue functionDetails(JSC::ExecState*); JSC::JSValue getInternalProperties(JSC::ExecState*); - JSC::JSValue weakMapSize(JSC::ExecState*); - JSC::JSValue weakMapEntries(JSC::ExecState*); - JSC::JSValue weakSetSize(JSC::ExecState*); - JSC::JSValue weakSetEntries(JSC::ExecState*); - JSC::JSValue iteratorEntries(JSC::ExecState*); protected: + static const unsigned StructureFlags = Base::StructureFlags; + void finishCreation(JSC::VM&); private: - JSInjectedScriptHost(JSC::VM&, JSC::Structure*, Ref<InjectedScriptHost>&&); + JSInjectedScriptHost(JSC::VM&, JSC::Structure*, PassRefPtr<InjectedScriptHost>); + ~JSInjectedScriptHost(); - Ref<InjectedScriptHost> m_wrapped; + InjectedScriptHost* m_impl; }; +JSC::JSValue toJS(JSC::ExecState*, JSC::JSGlobalObject*, InjectedScriptHost*); +JSInjectedScriptHost* toJSInjectedScriptHost(JSC::JSValue); + } // namespace Inspector +#endif // ENABLE(INSPECTOR) + #endif // !defined(JSInjectedScriptHost_h) |