blob: 8786392b9e6fc982d1b65cc60a3ce9f7f0ba440a [file] [log] [blame]
// Copyright 2013 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 "gin/modules/console.h"
#include <stdio.h>
#include "base/strings/string_util.h"
#include "gin/arguments.h"
#include "gin/converter.h"
namespace gin {
namespace {
void Log(const v8::FunctionCallbackInfo<v8::Value>& info) {
Arguments args(info);
std::vector<std::string> messages;
if (!args.GetRemaining(&messages)) {
args.ThrowError();
return;
}
printf("%s\n", base::JoinString(messages, " ").c_str());
}
} // namespace
// static
void Console::Register(v8::Isolate* isolate,
v8::Local<v8::ObjectTemplate> templ) {
v8::Local<v8::FunctionTemplate> log_templ =
v8::FunctionTemplate::New(isolate, Log);
log_templ->RemovePrototype();
templ->Set(StringToSymbol(isolate, "log"), log_templ);
}
} // namespace gin