aboutsummaryrefslogtreecommitdiff
path: root/source/Plugins/Process/Windows/Common/ForwardDecl.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/Plugins/Process/Windows/Common/ForwardDecl.h')
-rw-r--r--source/Plugins/Process/Windows/Common/ForwardDecl.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/source/Plugins/Process/Windows/Common/ForwardDecl.h b/source/Plugins/Process/Windows/Common/ForwardDecl.h
new file mode 100644
index 000000000000..cfe1b79cee11
--- /dev/null
+++ b/source/Plugins/Process/Windows/Common/ForwardDecl.h
@@ -0,0 +1,42 @@
+//===-- ForwardDecl.h -------------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef liblldb_Plugins_Process_Windows_ForwardDecl_H_
+#define liblldb_Plugins_Process_Windows_ForwardDecl_H_
+
+#include <memory>
+
+// ExceptionResult is returned by the debug delegate to specify how it processed
+// the exception.
+enum class ExceptionResult {
+ BreakInDebugger, // Break in the debugger and give the user a chance to
+ // interact with
+ // the program before continuing.
+ MaskException, // Eat the exception and don't let the application know it
+ // occurred.
+ SendToApplication // Send the exception to the application to be handled as if
+ // there were
+ // no debugger attached.
+};
+
+namespace lldb_private {
+
+class ProcessWindows;
+
+class IDebugDelegate;
+class DebuggerThread;
+class ExceptionRecord;
+
+typedef std::shared_ptr<IDebugDelegate> DebugDelegateSP;
+typedef std::shared_ptr<DebuggerThread> DebuggerThreadSP;
+typedef std::shared_ptr<ExceptionRecord> ExceptionRecordSP;
+typedef std::unique_ptr<ExceptionRecord> ExceptionRecordUP;
+}
+
+#endif \ No newline at end of file