1 //===-- lldb-private.h ------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef lldb_lldb_private_h_
11 #define lldb_lldb_private_h_
13 #if defined(__cplusplus)
16 #include "lldb/Host/windows/win32.h"
19 #include "lldb/lldb-public.h"
20 #include "lldb/lldb-private-enumerations.h"
21 #include "lldb/lldb-private-interfaces.h"
22 #include "lldb/lldb-private-log.h"
23 #include "lldb/lldb-private-types.h"
25 namespace lldb_private {
27 //------------------------------------------------------------------
30 /// This function should be called prior to using any lldb
31 /// classes to ensure they have a chance to do any static
32 /// initialization that they need to do.
33 //------------------------------------------------------------------
38 //------------------------------------------------------------------
39 /// Notifies any classes that lldb will be terminating soon.
41 /// This function will be called when the Debugger shared instance
42 /// is being destructed and will give classes the ability to clean
43 /// up any threads or other resources they have that they might not
44 /// be able to clean up in their own destructors.
46 /// Internal classes that need this ability will need to add their
47 /// void T::WillTerminate() method in the body of this function in
48 /// lldb.cpp to ensure it will get called.
50 /// TODO: when we start having external plug-ins, we will need a way
51 /// for plug-ins to register a WillTerminate callback.
52 //------------------------------------------------------------------
56 //------------------------------------------------------------------
59 /// This function optionally can be called when clients are done
60 /// using lldb functionality to free up any static resources
61 /// that have been allocated during initialization or during
62 /// function calls. No lldb functions should be called after
63 /// calling this function without again calling DCInitialize()
65 //------------------------------------------------------------------
74 GetVoteAsCString (Vote vote);
77 GetSectionTypeAsCString (lldb::SectionType sect_type);
80 NameMatches (const char *name, NameMatchType match_type, const char *match);
82 } // namespace lldb_private
85 #endif // defined(__cplusplus)
88 #endif // lldb_lldb_private_h_