Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/JsContext.h

Issue 29661564: Template out V8 and prepare for other JS engine implementations
Patch Set: Created Jan. 10, 2018, 1:29 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/GlobalJsObject.cpp ('k') | src/JsContext.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/JsContext.h
===================================================================
--- a/src/JsContext.h
+++ b/src/JsContext.h
@@ -23,23 +23,25 @@
namespace AdblockPlus
{
- class JsContext
+ template <typename T> class JsContextTemplate
{
public:
- explicit JsContext(JsEngine& jsEngine);
+ explicit JsContextTemplate<T>(JsEngine& jsEngine);
- v8::Local<v8::Context> GetV8Context() const
+ typename T::LocalContext GetJSEngineContext() const
{
return context;
}
private:
- const v8::Locker locker;
- const v8::Isolate::Scope isolateScope;
- const v8::HandleScope handleScope;
- const v8::Local<v8::Context> context;
- const v8::Context::Scope contextScope;
+ const typename T::Locker locker;
+ const typename T::Isolate::Scope isolateScope;
+ const typename T::HandleScope handleScope;
+ const typename T::LocalContext context;
+ const typename T::Context::Scope contextScope;
};
+
+ typedef JsContextTemplate<JsEngineNamespaceImpl> JsContext;
}
#endif
« no previous file with comments | « src/GlobalJsObject.cpp ('k') | src/JsContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld