diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-13 23:26:13 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-13 23:26:13 +0000 |
commit | bad146c5b3b1a7d0368320fecdbd5b50dbe97501 (patch) | |
tree | 8d5aad70f51fcfba24ccebd3359b7d33209370d7 /webkit/port/bindings/v8/v8_proxy.h | |
parent | ccef48cca72fbc8905a643759092ee0d913aca9c (diff) | |
download | chromium_src-bad146c5b3b1a7d0368320fecdbd5b50dbe97501.zip chromium_src-bad146c5b3b1a7d0368320fecdbd5b50dbe97501.tar.gz chromium_src-bad146c5b3b1a7d0368320fecdbd5b50dbe97501.tar.bz2 |
Commit 40144. I had to move to to a separate CL to use gcl's
"try multiple commits" feature.
Review URL: http://codereview.chromium.org/46062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11683 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/port/bindings/v8/v8_proxy.h')
-rw-r--r-- | webkit/port/bindings/v8/v8_proxy.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/webkit/port/bindings/v8/v8_proxy.h b/webkit/port/bindings/v8/v8_proxy.h index 69747b5..cb0e433 100644 --- a/webkit/port/bindings/v8/v8_proxy.h +++ b/webkit/port/bindings/v8/v8_proxy.h @@ -13,10 +13,12 @@ #include "ChromiumBridge.h" #include "Node.h" #include "NodeFilter.h" -#include "SecurityOrigin.h" // for WebCore::SecurityOrigin #include "PlatformString.h" // for WebCore::String -#include <wtf/PassRefPtr.h> // so generated bindings don't have to +#include "ScriptSourceCode.h" // for WebCore::ScriptSourceCode +#include "SecurityOrigin.h" // for WebCore::SecurityOrigin #include <wtf/Assertions.h> +#include <wtf/PassRefPtr.h> // so generated bindings don't have to +#include <wtf/Vector.h> #include <iterator> #include <list> @@ -230,11 +232,16 @@ class V8Proxy { void setEventHandlerLineno(int lineno) { m_handlerLineno = lineno; } void finishedWithEvent(Event* event) { } + // Evaluate JavaScript in a new context. The script gets its own global scope + // and its own prototypes for intrinsic JavaScript objects (String, Array, + // and so-on). It shares the wrappers for all DOM nodes and DOM constructors. + void evaluateInNewContext(const Vector<ScriptSourceCode>& sources); + // Evaluate a script file in the current execution environment. // The caller must hold an execution context. // If cannot evalute the script, it returns an error. - v8::Local<v8::Value> Evaluate(const String& filename, int baseLine, - const String& code, Node* node); + v8::Local<v8::Value> evaluate(const ScriptSourceCode& source, + Node* node); // Run an already compiled script. v8::Local<v8::Value> RunScript(v8::Handle<v8::Script> script, @@ -445,6 +452,7 @@ class V8Proxy { static void RegisterExtension(v8::Extension* extension); private: + v8::Persistent<v8::Context> createNewContext(v8::Handle<v8::Object> global); void InitContextIfNeeded(); void DisconnectEventListeners(); void SetSecurityToken(); |