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

Unified Diff: webkit/extensions/v8/heap_profiler_extension.cc

Issue 10117022: Cleanup of v8 extension stuff. Playback extension is only used in chrome, so move it to chrome\rend… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/extensions/v8/heap_profiler_extension.h ('k') | webkit/extensions/v8/playback_extension.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/extensions/v8/heap_profiler_extension.cc
===================================================================
--- webkit/extensions/v8/heap_profiler_extension.cc (revision 132793)
+++ webkit/extensions/v8/heap_profiler_extension.cc (working copy)
@@ -1,112 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "webkit/extensions/v8/heap_profiler_extension.h"
-
-#include "base/basictypes.h"
-#include "v8/include/v8.h"
-
-#if defined(USE_TCMALLOC) && !defined(OS_WIN)
-#include "third_party/tcmalloc/chromium/src/gperftools/heap-profiler.h"
-#endif
-
-namespace extensions_v8 {
-
-namespace {
-
-const char kHeapProfilerExtensionName[] = "v8/HeapProfiler";
-
-class HeapProfilerWrapper : public v8::Extension {
- public:
- HeapProfilerWrapper()
- : v8::Extension(kHeapProfilerExtensionName,
- "if (typeof(chromium) == 'undefined') {"
- " chromium = {};"
- "}"
- "(function() {"
- " native function HeapProfilerStart();"
- " native function HeapProfilerStop();"
- " native function HeapProfilerDump();"
- " chromium.HeapProfiler = {};"
- " chromium.HeapProfiler.start = function(opt_prefix) {"
- " var prefix = opt_prefix;"
- " if (!prefix) {"
- " var d = new Date();"
- " prefix = \"chromium-\" + "
- " (1900 + d.getYear()) + "
- " \"-\" + d.getMonth() + "
- " \"-\" + d.getDay() + "
- " \"-\" + d.getTime();"
- " }"
- " HeapProfilerStart(prefix);"
- " };"
- " chromium.HeapProfiler.stop = function() {"
- " HeapProfilerStop();"
- " };"
- " chromium.HeapProfiler.dump = function(opt_reason) {"
- " HeapProfilerDump(opt_reason || \"\");"
- " };"
- "})();") {}
-
- virtual v8::Handle<v8::FunctionTemplate> GetNativeFunction(
- v8::Handle<v8::String> name) {
- if (name->Equals(v8::String::New("HeapProfilerStart"))) {
- return v8::FunctionTemplate::New(HeapProfilerStart);
- } else if (name->Equals(v8::String::New("HeapProfilerStop"))) {
- return v8::FunctionTemplate::New(HeapProfilerStop);
- } else if (name->Equals(v8::String::New("HeapProfilerDump"))) {
- return v8::FunctionTemplate::New(HeapProfilerDump);
- }
- return v8::Handle<v8::FunctionTemplate>();
- }
-
-#if defined(USE_TCMALLOC) && !defined(OS_WIN)
- static v8::Handle<v8::Value> HeapProfilerStart(const v8::Arguments& args) {
- if (args.Length() >= 1 && args[0]->IsString()) {
- v8::Local<v8::String> js_prefix = args[0]->ToString();
- char prefix[256];
- js_prefix->WriteAscii(prefix, 0, arraysize(prefix) - 1);
- ::HeapProfilerStart(prefix);
- }
- return v8::Undefined();
- }
-
- static v8::Handle<v8::Value> HeapProfilerStop(const v8::Arguments& args) {
- ::HeapProfilerStop();
- return v8::Undefined();
- }
-
- static v8::Handle<v8::Value> HeapProfilerDump(const v8::Arguments& args) {
- if (args.Length() >= 1 && args[0]->IsString()) {
- v8::Local<v8::String> js_reason = args[0]->ToString();
- char reason[256];
- js_reason->WriteAscii(reason, 0, arraysize(reason) - 1);
- ::HeapProfilerDump(reason);
- }
- return v8::Undefined();
- }
-
-#else
-
- static v8::Handle<v8::Value> HeapProfilerStart(const v8::Arguments& args) {
- return v8::Undefined();
- }
-
- static v8::Handle<v8::Value> HeapProfilerStop(const v8::Arguments& args) {
- return v8::Undefined();
- }
-
- static v8::Handle<v8::Value> HeapProfilerDump(const v8::Arguments& args) {
- return v8::Undefined();
- }
-#endif
-};
-
-} // namespace
-
-v8::Extension* HeapProfilerExtension::Get() {
- return new HeapProfilerWrapper;
-}
-
-} // namespace extensions_v8
« no previous file with comments | « webkit/extensions/v8/heap_profiler_extension.h ('k') | webkit/extensions/v8/playback_extension.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698