14a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com// Copyright 2010 the V8 project authors. All rights reserved.
23484964a86451e86dcf04be9bd8c0d76ee04f081rossberg@chromium.org// Use of this source code is governed by a BSD-style license that can be
33484964a86451e86dcf04be9bd8c0d76ee04f081rossberg@chromium.org// found in the LICENSE file.
44a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
5196eb601290dc49c3754da728dc58700dff2de1bmachenbach@chromium.org#include "src/extensions/gc-extension.h"
65de0074a922429f5e0ec2cf140c2d2989bf88140yangguo@chromium.org
75de0074a922429f5e0ec2cf140c2d2989bf88140yangguo@chromium.org#include "src/base/platform/platform.h"
84a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
94a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.comnamespace v8 {
104a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.comnamespace internal {
114a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
124a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
139f18d9111f676f2899d9aa2444130c985eb75395machenbach@chromium.orgv8::Handle<v8::FunctionTemplate> GCExtension::GetNativeFunctionTemplate(
149f18d9111f676f2899d9aa2444130c985eb75395machenbach@chromium.org    v8::Isolate* isolate,
154a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com    v8::Handle<v8::String> str) {
164f99be9ff2091451687891a05d99cc31990de709hpayer@chromium.org  return v8::FunctionTemplate::New(isolate, GCExtension::GC);
174a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com}
184a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
194a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
20d4be0f0c0edfc0a0b46e745055c3dc497c0ffcb5verwaest@chromium.orgvoid GCExtension::GC(const v8::FunctionCallbackInfo<v8::Value>& args) {
21c8cbc43a1fd5fda5d6a1e172f720cbd1215157c8machenbach@chromium.org  args.GetIsolate()->RequestGarbageCollectionForTesting(
22c8cbc43a1fd5fda5d6a1e172f720cbd1215157c8machenbach@chromium.org      args[0]->BooleanValue() ? v8::Isolate::kMinorGarbageCollection
23c8cbc43a1fd5fda5d6a1e172f720cbd1215157c8machenbach@chromium.org                              : v8::Isolate::kFullGarbageCollection);
244a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com}
254a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com
264a6c3279070e8f133607a74c08d8c08ac394ab98erik.corry@gmail.com} }  // namespace v8::internal
27