// Copyright (c) 2013 GitHub, Inc. All rights reserved. // Use of this source code is governed by the MIT license that can be // found in the LICENSE file. #ifndef ATOM_BROWSER_JAVASCRIPT_ENVIRONMENT_H_ #define ATOM_BROWSER_JAVASCRIPT_ENVIRONMENT_H_ #include "base/basictypes.h" #include "v8/include/v8.h" namespace atom { class JavascriptEnvironment { public: JavascriptEnvironment(); v8::Isolate* isolate() const { return isolate_; } v8::Local context() const { return v8::Local::New(isolate_, context_); } private: v8::Isolate* isolate_; v8::Locker locker_; v8::HandleScope handle_scope_; v8::UniquePersistent context_; v8::Context::Scope context_scope_; DISALLOW_COPY_AND_ASSIGN(JavascriptEnvironment); }; } // namespace atom #endif // ATOM_BROWSER_JAVASCRIPT_ENVIRONMENT_H_