]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - source/Plugins/Process/Windows/Live/ForwardDecl.h
Vendor import of lldb trunk r256945:
[FreeBSD/FreeBSD.git] / source / Plugins / Process / Windows / Live / ForwardDecl.h
1 //===-- ForwardDecl.h -------------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #ifndef liblldb_Plugins_Process_Windows_ForwardDecl_H_
11 #define liblldb_Plugins_Process_Windows_ForwardDecl_H_
12
13 #include <memory>
14
15 // ExceptionResult is returned by the debug delegate to specify how it processed
16 // the exception.
17 enum class ExceptionResult
18 {
19     BreakInDebugger,  // Break in the debugger and give the user a chance to interact with
20                       // the program before continuing.
21     MaskException,    // Eat the exception and don't let the application know it occurred.
22     SendToApplication // Send the exception to the application to be handled as if there were
23                       // no debugger attached.
24 };
25
26 namespace lldb_private
27 {
28
29 class ProcessWindows;
30
31 class IDebugDelegate;
32 class DebuggerThread;
33 class ExceptionRecord;
34
35 typedef std::shared_ptr<IDebugDelegate> DebugDelegateSP;
36 typedef std::shared_ptr<DebuggerThread> DebuggerThreadSP;
37 typedef std::shared_ptr<ExceptionRecord> ExceptionRecordSP;
38 typedef std::unique_ptr<ExceptionRecord> ExceptionRecordUP;
39 }
40
41 #endif