Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Side by Side Diff: Source/bindings/core/v8/V8ScriptRunner.h

Issue 989573002: Cleanly handle excessively long JS source strings. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: syntax error => general error Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | Source/bindings/core/v8/V8ScriptRunner.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 29 matching lines...) Expand all
40 class ScriptResource; 40 class ScriptResource;
41 class ScriptSourceCode; 41 class ScriptSourceCode;
42 class ExecutionContext; 42 class ExecutionContext;
43 class ScriptStreamer; 43 class ScriptStreamer;
44 44
45 class V8ScriptRunner { 45 class V8ScriptRunner {
46 public: 46 public:
47 // For the following methods, the caller sites have to hold 47 // For the following methods, the caller sites have to hold
48 // a HandleScope and a ContextScope. 48 // a HandleScope and a ContextScope.
49 static v8::Local<v8::Script> compileScript(const ScriptSourceCode&, v8::Isol ate*, AccessControlStatus = SharableCrossOrigin, V8CacheOptions = V8CacheOptions Default); 49 static v8::Local<v8::Script> compileScript(const ScriptSourceCode&, v8::Isol ate*, AccessControlStatus = SharableCrossOrigin, V8CacheOptions = V8CacheOptions Default);
50 static v8::Local<v8::Script> compileScript(const String&, const String& file Name, const String& sourceMapUrl, const TextPosition&, v8::Isolate*, CachedMetad ataHandler* = nullptr, AccessControlStatus = SharableCrossOrigin, V8CacheOptions = V8CacheOptionsDefault);
50 // CachedMetadataHandler is set when metadata caching is supported. For 51 // CachedMetadataHandler is set when metadata caching is supported. For
51 // normal scripe resources, CachedMetadataHandler is from ScriptResource. 52 // normal scripe resources, CachedMetadataHandler is from ScriptResource.
52 // For worker script, ScriptResource is null but CachedMetadataHandler may b e 53 // For worker script, ScriptResource is null but CachedMetadataHandler may b e
53 // set. When ScriptStreamer is set, ScriptResource must be set. 54 // set. When ScriptStreamer is set, ScriptResource must be set.
54 static v8::Local<v8::Script> compileScript(v8::Handle<v8::String>, const Str ing& fileName, const String& sourceMapUrl, const TextPosition&, v8::Isolate*, Sc riptResource* = nullptr, ScriptStreamer* = nullptr, CachedMetadataHandler* = nul lptr, AccessControlStatus = SharableCrossOrigin, V8CacheOptions = V8CacheOptions Default, bool isInternalScript = false); 55 static v8::Local<v8::Script> compileScript(v8::Handle<v8::String>, const Str ing& fileName, const String& sourceMapUrl, const TextPosition&, v8::Isolate*, Sc riptResource* = nullptr, ScriptStreamer* = nullptr, CachedMetadataHandler* = nul lptr, AccessControlStatus = SharableCrossOrigin, V8CacheOptions = V8CacheOptions Default, bool isInternalScript = false);
55 static v8::Local<v8::Value> runCompiledScript(v8::Isolate*, v8::Handle<v8::S cript>, ExecutionContext*); 56 static v8::Local<v8::Value> runCompiledScript(v8::Isolate*, v8::Handle<v8::S cript>, ExecutionContext*);
56 static v8::Local<v8::Value> compileAndRunInternalScript(v8::Handle<v8::Strin g>, v8::Isolate*, const String& = String(), const TextPosition& = TextPosition() ); 57 static v8::Local<v8::Value> compileAndRunInternalScript(v8::Handle<v8::Strin g>, v8::Isolate*, const String& = String(), const TextPosition& = TextPosition() );
57 static v8::Local<v8::Value> runCompiledInternalScript(v8::Isolate*, v8::Hand le<v8::Script>); 58 static v8::Local<v8::Value> runCompiledInternalScript(v8::Isolate*, v8::Hand le<v8::Script>);
58 static v8::Local<v8::Value> callInternalFunction(v8::Handle<v8::Function>, v 8::Handle<v8::Value> receiver, int argc, v8::Handle<v8::Value> info[], v8::Isola te*); 59 static v8::Local<v8::Value> callInternalFunction(v8::Handle<v8::Function>, v 8::Handle<v8::Value> receiver, int argc, v8::Handle<v8::Value> info[], v8::Isola te*);
59 static v8::Local<v8::Value> callFunction(v8::Handle<v8::Function>, Execution Context*, v8::Handle<v8::Value> receiver, int argc, v8::Handle<v8::Value> info[] , v8::Isolate*); 60 static v8::Local<v8::Value> callFunction(v8::Handle<v8::Function>, Execution Context*, v8::Handle<v8::Value> receiver, int argc, v8::Handle<v8::Value> info[] , v8::Isolate*);
60 static v8::Local<v8::Object> instantiateObject(v8::Isolate*, v8::Handle<v8:: ObjectTemplate>); 61 static v8::Local<v8::Object> instantiateObject(v8::Isolate*, v8::Handle<v8:: ObjectTemplate>);
61 static v8::Local<v8::Object> instantiateObject(v8::Isolate*, v8::Handle<v8:: Function>, int argc = 0, v8::Handle<v8::Value> argv[] = 0); 62 static v8::Local<v8::Object> instantiateObject(v8::Isolate*, v8::Handle<v8:: Function>, int argc = 0, v8::Handle<v8::Value> argv[] = 0);
62 static v8::Local<v8::Object> instantiateObjectInDocument(v8::Isolate*, v8::H andle<v8::Function>, ExecutionContext*, int argc = 0, v8::Handle<v8::Value> argv [] = 0); 63 static v8::Local<v8::Object> instantiateObjectInDocument(v8::Isolate*, v8::H andle<v8::Function>, ExecutionContext*, int argc = 0, v8::Handle<v8::Value> argv [] = 0);
63 64
64 static unsigned tagForParserCache(CachedMetadataHandler*); 65 static unsigned tagForParserCache(CachedMetadataHandler*);
65 static unsigned tagForCodeCache(CachedMetadataHandler*); 66 static unsigned tagForCodeCache(CachedMetadataHandler*);
66 }; 67 };
67 68
68 } // namespace blink 69 } // namespace blink
69 70
70 #endif // V8ScriptRunner_h 71 #endif // V8ScriptRunner_h
OLDNEW
« no previous file with comments | « no previous file | Source/bindings/core/v8/V8ScriptRunner.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698