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

Unified Diff: gin/arguments.cc

Issue 59153005: Begin implementing V8 bindings for Mojo (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix skipped comment Created 7 years, 1 month 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 | « gin/arguments.h ('k') | gin/array_buffer.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gin/arguments.cc
diff --git a/gin/arguments.cc b/gin/arguments.cc
new file mode 100644
index 0000000000000000000000000000000000000000..15802b8eaa0fa202b42aa573983b0a5bc1bc1444
--- /dev/null
+++ b/gin/arguments.cc
@@ -0,0 +1,36 @@
+// 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/arguments.h"
+
+#include <sstream>
+#include "gin/converter.h"
+
+namespace gin {
+
+Arguments::Arguments(const v8::FunctionCallbackInfo<v8::Value>& info)
+ : isolate_(info.GetIsolate()),
+ info_(info),
+ next_(0),
+ insufficient_arguments_(false) {
+}
+
+Arguments::~Arguments() {
+}
+
+void Arguments::ThrowError() {
+ if (insufficient_arguments_)
+ return ThrowTypeError("Insufficient number of arguments.");
+
+ std::stringstream stream;
+ stream << "Error processing argument " << next_ - 1 << ".";
Aaron Boodman 2013/11/11 21:37:32 This will do the wrong thing when the client calls
Aaron Boodman 2013/11/11 21:38:59 Nevermind. LGTM.
+ ThrowTypeError(stream.str());
+}
+
+void Arguments::ThrowTypeError(const std::string& message) {
+ isolate_->ThrowException(v8::Exception::TypeError(
+ StringToV8(isolate_, message)));
+}
+
+} // namespace gin
« no previous file with comments | « gin/arguments.h ('k') | gin/array_buffer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698