OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "webkit/support/gc_extension.h" | 5 #include "content/shell/renderer/gc_extension.h" |
6 | 6 |
7 #include "v8/include/v8.h" | 7 #include "v8/include/v8.h" |
8 | 8 |
9 const char kGCExtensionName[] = "v8/GCController"; | 9 const char kGCExtensionName[] = "v8/GCController"; |
10 | 10 |
11 namespace extensions_v8 { | 11 namespace extensions_v8 { |
12 | 12 |
13 // static | 13 // static |
14 v8::Extension* GCExtension::Get() { | 14 v8::Extension* GCExtension::Get() { |
15 v8::Extension* extension = new v8::Extension( | 15 v8::Extension* extension = new v8::Extension( |
16 kGCExtensionName, | 16 kGCExtensionName, |
17 "(function () {" | 17 "(function () {" |
18 " var v8_gc;" | 18 " var v8_gc;" |
19 " if (gc) v8_gc = gc;" | 19 " if (gc) v8_gc = gc;" |
20 " GCController = new Object();" | 20 " GCController = new Object();" |
21 " GCController.collect =" | 21 " GCController.collect =" |
22 " function() {if (v8_gc) v8_gc(); };" | 22 " function() {if (v8_gc) v8_gc(); };" |
23 " GCController.minorCollect =" | 23 " GCController.minorCollect =" |
24 " function() {if (v8_gc) v8_gc(true); };" | 24 " function() {if (v8_gc) v8_gc(true); };" |
25 " })();"); | 25 " })();"); |
26 return extension; | 26 return extension; |
27 } | 27 } |
28 | 28 |
29 } // namespace extensions_v8 | 29 } // namespace extensions_v8 |
OLD | NEW |