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

Unified Diff: extensions/common/stack_frame.h

Issue 23007021: Report Javascript Runtime Errors to the Error Console (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@dc_ec_feldman
Patch Set: Created 7 years, 4 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
Index: extensions/common/stack_frame.h
diff --git a/extensions/common/stack_frame.h b/extensions/common/stack_frame.h
new file mode 100644
index 0000000000000000000000000000000000000000..b20cfbc7d23bc3e7934fdaa104d9196a399c3b95
--- /dev/null
+++ b/extensions/common/stack_frame.h
@@ -0,0 +1,78 @@
+// 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.
+
+#ifndef EXTENSIONS_COMMON_STACK_FRAME
+#define EXTENSIONS_COMMON_STACK_FRAME
+
+#include <vector>
+
+#include "base/memory/scoped_ptr.h"
+#include "base/strings/string16.h"
+
+namespace extensions {
+
+/*
jam 2013/08/30 16:04:39 ?
Devlin 2013/08/30 16:33:37 Dang, sorry.
+class StackFrame {
+ public:
+ StackFrame();
+ StackFrame(size_t line_number,
+ size_t column_number,
+ const base::string16& source,
+ const base::string16& function);
+ ~StackFrame();
+
+ // Construct a stack frame from a reported plain-text frame.
+ static scoped_ptr<StackFrame> CreateFromText(
+ const base::string16& frame_text);
+
+ size_t line_number() const { return line_number_; }
+ size_t column_number() const { return column_number_; }
+ const base::string16& source() const { return source_; }
+ const base::string16& function() const { return function_; }
+
+ // set_ functions are for IPC use.
+ void set_line_number(size_t line_number) { line_number_ = line_number; }
+ void set_column_number(size_t column_number) {
+ column_number_ = column_number;
+ }
+ void set_source(const base::string16& source) { source_ = source; }
+ void set_function(const base::string16& function) { function_ = function; }
+
+ bool operator==(const StackFrame& rhs) const;
+
+ private:
+ size_t line_number_;
+ size_t column_number_;
+ base::string16 source_;
+ base::string16 function_; // optional
+};
+*/
+
+struct StackFrame {
+ StackFrame();
+ StackFrame(const StackFrame& frame);
+ StackFrame(size_t line_number,
+ size_t column_number,
+ const base::string16& source,
+ const base::string16& function);
+ ~StackFrame();
+
+ // Construct a stack frame from a reported plain-text frame.
+ static scoped_ptr<StackFrame> CreateFromText(
+ const base::string16& frame_text);
+
+ bool operator==(const StackFrame& rhs) const;
+
+ size_t line_number;
+ size_t column_number;
+ base::string16 source;
+ base::string16 function; // optional
+};
+
+typedef std::vector<StackFrame> StackTrace;
+
+} // namespace extensions
+
+#endif // EXTENSIONS_COMMON_STACK_FRAME
+

Powered by Google App Engine
This is Rietveld 408576698