aboutsummaryrefslogtreecommitdiff
path: root/include/lldb/API
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2015-07-03 16:57:06 +0000
committerEd Maste <emaste@FreeBSD.org>2015-07-03 16:57:06 +0000
commit5e95aa85bb660d45e9905ef1d7180b2678280660 (patch)
tree3c2e41c3be19b7fc7666ed45a5f91ec3b6e35f2a /include/lldb/API
parent12bd4897ff0678fa663e09d78ebc22dd255ceb86 (diff)
Notes
Diffstat (limited to 'include/lldb/API')
-rw-r--r--include/lldb/API/LLDB.h1
-rw-r--r--include/lldb/API/SBAddress.h2
-rw-r--r--include/lldb/API/SBAttachInfo.h149
-rw-r--r--include/lldb/API/SBBlock.h2
-rw-r--r--include/lldb/API/SBBreakpoint.h2
-rw-r--r--include/lldb/API/SBBreakpointLocation.h6
-rw-r--r--include/lldb/API/SBBroadcaster.h2
-rw-r--r--include/lldb/API/SBCommandInterpreter.h33
-rw-r--r--include/lldb/API/SBCommandReturnObject.h2
-rw-r--r--include/lldb/API/SBCommunication.h5
-rw-r--r--include/lldb/API/SBCompileUnit.h2
-rw-r--r--include/lldb/API/SBData.h2
-rw-r--r--include/lldb/API/SBDebugger.h4
-rw-r--r--include/lldb/API/SBDeclaration.h2
-rw-r--r--include/lldb/API/SBDefines.h3
-rw-r--r--include/lldb/API/SBError.h2
-rw-r--r--include/lldb/API/SBEvent.h3
-rw-r--r--include/lldb/API/SBExecutionContext.h2
-rw-r--r--include/lldb/API/SBExpressionOptions.h8
-rw-r--r--include/lldb/API/SBFileSpec.h2
-rw-r--r--include/lldb/API/SBFileSpecList.h2
-rw-r--r--include/lldb/API/SBFrame.h21
-rw-r--r--include/lldb/API/SBFunction.h2
-rw-r--r--include/lldb/API/SBHostOS.h2
-rw-r--r--include/lldb/API/SBInstruction.h2
-rw-r--r--include/lldb/API/SBInstructionList.h2
-rw-r--r--include/lldb/API/SBLanguageRuntime.h29
-rw-r--r--include/lldb/API/SBLaunchInfo.h13
-rw-r--r--include/lldb/API/SBLineEntry.h2
-rw-r--r--include/lldb/API/SBListener.h2
-rw-r--r--include/lldb/API/SBModule.h21
-rw-r--r--include/lldb/API/SBModuleSpec.h2
-rw-r--r--include/lldb/API/SBPlatform.h6
-rw-r--r--include/lldb/API/SBProcess.h24
-rw-r--r--include/lldb/API/SBQueue.h2
-rw-r--r--include/lldb/API/SBQueueItem.h2
-rw-r--r--include/lldb/API/SBSection.h2
-rw-r--r--include/lldb/API/SBSourceManager.h2
-rw-r--r--include/lldb/API/SBStream.h2
-rw-r--r--include/lldb/API/SBStringList.h2
-rw-r--r--include/lldb/API/SBSymbol.h2
-rw-r--r--include/lldb/API/SBSymbolContext.h2
-rw-r--r--include/lldb/API/SBSymbolContextList.h2
-rw-r--r--include/lldb/API/SBTarget.h165
-rw-r--r--include/lldb/API/SBThread.h2
-rw-r--r--include/lldb/API/SBThreadCollection.h2
-rw-r--r--include/lldb/API/SBThreadPlan.h2
-rw-r--r--include/lldb/API/SBType.h2
-rw-r--r--include/lldb/API/SBTypeCategory.h2
-rw-r--r--include/lldb/API/SBTypeEnumMember.h2
-rw-r--r--include/lldb/API/SBTypeFilter.h2
-rw-r--r--include/lldb/API/SBTypeFormat.h2
-rw-r--r--include/lldb/API/SBTypeNameSpecifier.h2
-rw-r--r--include/lldb/API/SBTypeSummary.h2
-rw-r--r--include/lldb/API/SBTypeSynthetic.h2
-rw-r--r--include/lldb/API/SBUnixSignals.h2
-rw-r--r--include/lldb/API/SBValue.h14
-rw-r--r--include/lldb/API/SBValueList.h2
-rw-r--r--include/lldb/API/SBVariablesOptions.h98
-rw-r--r--include/lldb/API/SBWatchpoint.h2
-rw-r--r--include/lldb/API/SystemInitializerFull.h40
61 files changed, 515 insertions, 212 deletions
diff --git a/include/lldb/API/LLDB.h b/include/lldb/API/LLDB.h
index 4026b2b61ba8..66e095395f13 100644
--- a/include/lldb/API/LLDB.h
+++ b/include/lldb/API/LLDB.h
@@ -52,5 +52,6 @@
#include "lldb/API/SBType.h"
#include "lldb/API/SBValue.h"
#include "lldb/API/SBValueList.h"
+#include "lldb/API/SBVariablesOptions.h"
#endif // LLDB_LLDB_h_
diff --git a/include/lldb/API/SBAddress.h b/include/lldb/API/SBAddress.h
index c2d07b6e9bcc..4cbbee9fd132 100644
--- a/include/lldb/API/SBAddress.h
+++ b/include/lldb/API/SBAddress.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBAddress
+class LLDB_API SBAddress
{
public:
diff --git a/include/lldb/API/SBAttachInfo.h b/include/lldb/API/SBAttachInfo.h
new file mode 100644
index 000000000000..712150e128be
--- /dev/null
+++ b/include/lldb/API/SBAttachInfo.h
@@ -0,0 +1,149 @@
+//===-- SBAttachInfo.h ------------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLDB_SBAttachInfo_h_
+#define LLDB_SBAttachInfo_h_
+
+#include "lldb/API/SBDefines.h"
+
+namespace lldb {
+
+class SBTarget;
+
+class LLDB_API SBAttachInfo
+{
+public:
+ SBAttachInfo ();
+
+ SBAttachInfo (lldb::pid_t pid);
+
+ SBAttachInfo (const char *path, bool wait_for);
+
+ SBAttachInfo (const SBAttachInfo &rhs);
+
+ ~SBAttachInfo();
+
+ SBAttachInfo &
+ operator = (const SBAttachInfo &rhs);
+
+ lldb::pid_t
+ GetProcessID ();
+
+ void
+ SetProcessID (lldb::pid_t pid);
+
+ void
+ SetExecutable (const char *path);
+
+ void
+ SetExecutable (lldb::SBFileSpec exe_file);
+
+ bool
+ GetWaitForLaunch ();
+
+ void
+ SetWaitForLaunch (bool b);
+
+ bool
+ GetIgnoreExisting ();
+
+ void
+ SetIgnoreExisting (bool b);
+
+ uint32_t
+ GetResumeCount ();
+
+ void
+ SetResumeCount (uint32_t c);
+
+ const char *
+ GetProcessPluginName ();
+
+ void
+ SetProcessPluginName (const char *plugin_name);
+
+ uint32_t
+ GetUserID();
+
+ uint32_t
+ GetGroupID();
+
+ bool
+ UserIDIsValid ();
+
+ bool
+ GroupIDIsValid ();
+
+ void
+ SetUserID (uint32_t uid);
+
+ void
+ SetGroupID (uint32_t gid);
+
+ uint32_t
+ GetEffectiveUserID();
+
+ uint32_t
+ GetEffectiveGroupID();
+
+ bool
+ EffectiveUserIDIsValid ();
+
+ bool
+ EffectiveGroupIDIsValid ();
+
+ void
+ SetEffectiveUserID (uint32_t uid);
+
+ void
+ SetEffectiveGroupID (uint32_t gid);
+
+ lldb::pid_t
+ GetParentProcessID ();
+
+ void
+ SetParentProcessID (lldb::pid_t pid);
+
+ bool
+ ParentProcessIDIsValid();
+
+ //----------------------------------------------------------------------
+ /// Get the listener that will be used to receive process events.
+ ///
+ /// If no listener has been set via a call to
+ /// SBLaunchInfo::SetListener(), then an invalid SBListener will be
+ /// returned (SBListener::IsValid() will return false). If a listener
+ /// has been set, then the valid listener object will be returned.
+ //----------------------------------------------------------------------
+ SBListener
+ GetListener ();
+
+ //----------------------------------------------------------------------
+ /// Set the listener that will be used to receive process events.
+ ///
+ /// By default the SBDebugger, which has a listener, that the SBTarget
+ /// belongs to will listen for the process events. Calling this function
+ /// allows a different listener to be used to listen for process events.
+ //----------------------------------------------------------------------
+ void
+ SetListener (SBListener &listener);
+
+
+protected:
+ friend class SBTarget;
+
+ lldb_private::ProcessAttachInfo &
+ ref ();
+
+ ProcessAttachInfoSP m_opaque_sp;
+};
+
+} // namespace lldb
+
+#endif // LLDB_SBAttachInfo_h_
diff --git a/include/lldb/API/SBBlock.h b/include/lldb/API/SBBlock.h
index b8e61fc6eb27..a18eab02088b 100644
--- a/include/lldb/API/SBBlock.h
+++ b/include/lldb/API/SBBlock.h
@@ -17,7 +17,7 @@
namespace lldb {
-class SBBlock
+class LLDB_API SBBlock
{
public:
diff --git a/include/lldb/API/SBBreakpoint.h b/include/lldb/API/SBBreakpoint.h
index 20a97a1fb5a0..c244ab8a9b48 100644
--- a/include/lldb/API/SBBreakpoint.h
+++ b/include/lldb/API/SBBreakpoint.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBBreakpoint
+class LLDB_API SBBreakpoint
{
public:
diff --git a/include/lldb/API/SBBreakpointLocation.h b/include/lldb/API/SBBreakpointLocation.h
index fd9f246de4ff..ab7049739c0b 100644
--- a/include/lldb/API/SBBreakpointLocation.h
+++ b/include/lldb/API/SBBreakpointLocation.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBBreakpointLocation
+class LLDB_API SBBreakpointLocation
{
public:
@@ -101,9 +101,7 @@ public:
private:
friend class SBBreakpoint;
-#ifndef LLDB_DISABLE_PYTHON
- friend class lldb_private::ScriptInterpreterPython;
-#endif
+
void
SetLocation (const lldb::BreakpointLocationSP &break_loc_sp);
diff --git a/include/lldb/API/SBBroadcaster.h b/include/lldb/API/SBBroadcaster.h
index 7b32d85faa0f..28b6686b79b3 100644
--- a/include/lldb/API/SBBroadcaster.h
+++ b/include/lldb/API/SBBroadcaster.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBBroadcaster
+class LLDB_API SBBroadcaster
{
public:
SBBroadcaster ();
diff --git a/include/lldb/API/SBCommandInterpreter.h b/include/lldb/API/SBCommandInterpreter.h
index 947e39164140..235a2f3ea603 100644
--- a/include/lldb/API/SBCommandInterpreter.h
+++ b/include/lldb/API/SBCommandInterpreter.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBCommandInterpreterRunOptions
+class LLDB_API SBCommandInterpreterRunOptions
{
friend class SBDebugger;
friend class SBCommandInterpreter;
@@ -94,6 +94,9 @@ public:
static const char *
GetArgumentDescriptionAsCString (const lldb::CommandArgumentType arg_type);
+
+ static bool
+ EventIsCommandInterpreterEvent (const lldb::SBEvent &event);
bool
IsValid() const;
@@ -216,6 +219,19 @@ public:
const char *
GetIOHandlerControlSequence(char ch);
+ bool
+ GetPromptOnQuit();
+
+ void
+ SetPromptOnQuit(bool b);
+
+ //----------------------------------------------------------------------
+ /// Resolve the command just as HandleCommand would, expanding abbreviations
+ /// and aliases. If successful, result->GetOutput has the full expansion.
+ //----------------------------------------------------------------------
+ void
+ ResolveCommand(const char *command_line, SBCommandReturnObject &result);
+
protected:
lldb_private::CommandInterpreter &
@@ -266,6 +282,21 @@ public:
const char*
GetHelp ();
+ const char*
+ GetHelpLong ();
+
+ void
+ SetHelp (const char*);
+
+ void
+ SetHelpLong (const char*);
+
+ uint32_t
+ GetFlags ();
+
+ void
+ SetFlags (uint32_t flags);
+
lldb::SBCommand
AddMultiwordCommand (const char* name, const char* help = NULL);
diff --git a/include/lldb/API/SBCommandReturnObject.h b/include/lldb/API/SBCommandReturnObject.h
index f2d274802330..c51d6bc8d2d5 100644
--- a/include/lldb/API/SBCommandReturnObject.h
+++ b/include/lldb/API/SBCommandReturnObject.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBCommandReturnObject
+class LLDB_API SBCommandReturnObject
{
public:
diff --git a/include/lldb/API/SBCommunication.h b/include/lldb/API/SBCommunication.h
index ecaaa3523c91..c4b2709de8ab 100644
--- a/include/lldb/API/SBCommunication.h
+++ b/include/lldb/API/SBCommunication.h
@@ -15,10 +15,11 @@
namespace lldb {
-class SBCommunication
+class LLDB_API SBCommunication
{
public:
- enum {
+ FLAGS_ANONYMOUS_ENUM()
+ {
eBroadcastBitDisconnected = (1 << 0), ///< Sent when the communications connection is lost.
eBroadcastBitReadThreadGotBytes = (1 << 1), ///< Sent by the read thread when bytes become available.
eBroadcastBitReadThreadDidExit = (1 << 2), ///< Sent by the read thread when it exits to inform clients.
diff --git a/include/lldb/API/SBCompileUnit.h b/include/lldb/API/SBCompileUnit.h
index e2c216445d94..a53d556679c4 100644
--- a/include/lldb/API/SBCompileUnit.h
+++ b/include/lldb/API/SBCompileUnit.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBCompileUnit
+class LLDB_API SBCompileUnit
{
public:
diff --git a/include/lldb/API/SBData.h b/include/lldb/API/SBData.h
index e7656a52d9c2..a2bd72fad570 100644
--- a/include/lldb/API/SBData.h
+++ b/include/lldb/API/SBData.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBData
+class LLDB_API SBData
{
public:
diff --git a/include/lldb/API/SBDebugger.h b/include/lldb/API/SBDebugger.h
index 6e43e12f7b16..4f2c1d7f8756 100644
--- a/include/lldb/API/SBDebugger.h
+++ b/include/lldb/API/SBDebugger.h
@@ -18,7 +18,7 @@
namespace lldb {
-class SBInputReader
+class LLDB_API SBInputReader
{
public:
SBInputReader();
@@ -28,7 +28,7 @@ public:
bool IsActive() const;
};
-class SBDebugger
+class LLDB_API SBDebugger
{
public:
diff --git a/include/lldb/API/SBDeclaration.h b/include/lldb/API/SBDeclaration.h
index 190026c0d2d0..5461a1f15c2e 100644
--- a/include/lldb/API/SBDeclaration.h
+++ b/include/lldb/API/SBDeclaration.h
@@ -15,7 +15,7 @@
namespace lldb {
- class SBDeclaration
+ class LLDB_API SBDeclaration
{
public:
diff --git a/include/lldb/API/SBDefines.h b/include/lldb/API/SBDefines.h
index b59b79580910..09bea502dd01 100644
--- a/include/lldb/API/SBDefines.h
+++ b/include/lldb/API/SBDefines.h
@@ -55,6 +55,8 @@ class LLDB_API SBFunction;
class LLDB_API SBHostOS;
class LLDB_API SBInstruction;
class LLDB_API SBInstructionList;
+class LLDB_API SBLanguageRuntime;
+class LLDB_API SBLaunchInfo;
class LLDB_API SBLineEntry;
class LLDB_API SBListener;
class LLDB_API SBModule;
@@ -90,6 +92,7 @@ class LLDB_API SBTypeSynthetic;
class LLDB_API SBTypeList;
class LLDB_API SBValue;
class LLDB_API SBValueList;
+class LLDB_API SBVariablesOptions;
class LLDB_API SBWatchpoint;
class LLDB_API SBUnixSignals;
diff --git a/include/lldb/API/SBError.h b/include/lldb/API/SBError.h
index b9908658c5bc..afdec0d3826d 100644
--- a/include/lldb/API/SBError.h
+++ b/include/lldb/API/SBError.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBError {
+class LLDB_API SBError {
public:
SBError ();
diff --git a/include/lldb/API/SBEvent.h b/include/lldb/API/SBEvent.h
index 1706d0c009b9..975c365f5916 100644
--- a/include/lldb/API/SBEvent.h
+++ b/include/lldb/API/SBEvent.h
@@ -20,7 +20,7 @@ namespace lldb {
class SBBroadcaster;
-class SBEvent
+class LLDB_API SBEvent
{
public:
SBEvent();
@@ -78,6 +78,7 @@ protected:
friend class SBBreakpoint;
friend class SBDebugger;
friend class SBProcess;
+ friend class SBTarget;
friend class SBThread;
friend class SBWatchpoint;
diff --git a/include/lldb/API/SBExecutionContext.h b/include/lldb/API/SBExecutionContext.h
index 9d889139f5cb..1d64497ae867 100644
--- a/include/lldb/API/SBExecutionContext.h
+++ b/include/lldb/API/SBExecutionContext.h
@@ -18,7 +18,7 @@
namespace lldb {
-class SBExecutionContext
+class LLDB_API SBExecutionContext
{
friend class SBCommandInterpreter;
diff --git a/include/lldb/API/SBExpressionOptions.h b/include/lldb/API/SBExpressionOptions.h
index c3592880c46a..ed2f9187b3e0 100644
--- a/include/lldb/API/SBExpressionOptions.h
+++ b/include/lldb/API/SBExpressionOptions.h
@@ -17,7 +17,7 @@
namespace lldb {
-class SBExpressionOptions
+class LLDB_API SBExpressionOptions
{
public:
SBExpressionOptions();
@@ -105,6 +105,12 @@ public:
void
SetSuppressPersistentResult (bool b = false);
+ const char *
+ GetPrefix () const;
+
+ void
+ SetPrefix (const char *prefix);
+
protected:
SBExpressionOptions (lldb_private::EvaluateExpressionOptions &expression_options);
diff --git a/include/lldb/API/SBFileSpec.h b/include/lldb/API/SBFileSpec.h
index 1eee3d10367c..d6f38f5b2d74 100644
--- a/include/lldb/API/SBFileSpec.h
+++ b/include/lldb/API/SBFileSpec.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBFileSpec
+class LLDB_API SBFileSpec
{
public:
SBFileSpec ();
diff --git a/include/lldb/API/SBFileSpecList.h b/include/lldb/API/SBFileSpecList.h
index 734e7d4d35cc..ff429a1815be 100644
--- a/include/lldb/API/SBFileSpecList.h
+++ b/include/lldb/API/SBFileSpecList.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBFileSpecList
+class LLDB_API SBFileSpecList
{
public:
SBFileSpecList ();
diff --git a/include/lldb/API/SBFrame.h b/include/lldb/API/SBFrame.h
index b93e36afecdf..2ca9e062490d 100644
--- a/include/lldb/API/SBFrame.h
+++ b/include/lldb/API/SBFrame.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBFrame
+class LLDB_API SBFrame
{
public:
SBFrame ();
@@ -25,7 +25,7 @@ public:
const lldb::SBFrame &
operator =(const lldb::SBFrame &rhs);
- ~SBFrame();
+ ~SBFrame();
bool
IsEqual (const lldb::SBFrame &that) const;
@@ -37,6 +37,9 @@ public:
GetFrameID () const;
lldb::addr_t
+ GetCFA () const;
+
+ lldb::addr_t
GetPC () const;
bool
@@ -88,12 +91,18 @@ public:
const char *
GetFunctionName();
+ const char *
+ GetFunctionName() const;
+
/// Return true if this frame represents an inlined function.
///
/// See also GetFunctionName().
bool
IsInlined();
-
+
+ bool
+ IsInlined() const;
+
/// The version that doesn't supply a 'use_dynamic' value will use the
/// target's default.
lldb::SBValue
@@ -157,6 +166,9 @@ public:
lldb::DynamicValueType use_dynamic);
lldb::SBValueList
+ GetVariables (const lldb::SBVariablesOptions& options);
+
+ lldb::SBValueList
GetRegisters ();
lldb::SBValue
@@ -210,9 +222,6 @@ protected:
friend class SBInstruction;
friend class SBThread;
friend class SBValue;
-#ifndef LLDB_DISABLE_PYTHON
- friend class lldb_private::ScriptInterpreterPython;
-#endif
lldb::StackFrameSP
GetFrameSP() const;
diff --git a/include/lldb/API/SBFunction.h b/include/lldb/API/SBFunction.h
index 1b0d53d11736..7d578393eb2c 100644
--- a/include/lldb/API/SBFunction.h
+++ b/include/lldb/API/SBFunction.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBFunction
+class LLDB_API SBFunction
{
public:
diff --git a/include/lldb/API/SBHostOS.h b/include/lldb/API/SBHostOS.h
index 7ab22caaaad9..d9bc97365632 100644
--- a/include/lldb/API/SBHostOS.h
+++ b/include/lldb/API/SBHostOS.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBHostOS
+class LLDB_API SBHostOS
{
public:
diff --git a/include/lldb/API/SBInstruction.h b/include/lldb/API/SBInstruction.h
index aad2d87f4f33..c4bded595761 100644
--- a/include/lldb/API/SBInstruction.h
+++ b/include/lldb/API/SBInstruction.h
@@ -20,7 +20,7 @@
namespace lldb {
-class SBInstruction
+class LLDB_API SBInstruction
{
public:
diff --git a/include/lldb/API/SBInstructionList.h b/include/lldb/API/SBInstructionList.h
index 944e144a1480..8ef163796629 100644
--- a/include/lldb/API/SBInstructionList.h
+++ b/include/lldb/API/SBInstructionList.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBInstructionList
+class LLDB_API SBInstructionList
{
public:
diff --git a/include/lldb/API/SBLanguageRuntime.h b/include/lldb/API/SBLanguageRuntime.h
new file mode 100644
index 000000000000..898604c496fa
--- /dev/null
+++ b/include/lldb/API/SBLanguageRuntime.h
@@ -0,0 +1,29 @@
+//===-- SBLanguageRuntime.h -------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLDB_SBLanguageRuntime_h_
+#define LLDB_SBLanguageRuntime_h_
+
+#include "lldb/API/SBDefines.h"
+
+namespace lldb {
+
+class SBLanguageRuntime
+{
+public:
+ static lldb::LanguageType
+ GetLanguageTypeFromString (const char *string);
+
+ static const char *
+ GetNameForLanguageType (lldb::LanguageType language);
+};
+
+} // namespace lldb
+
+#endif // LLDB_SBLanguageRuntime_h_
diff --git a/include/lldb/API/SBLaunchInfo.h b/include/lldb/API/SBLaunchInfo.h
index a5921ab90d48..68c0f386acde 100644
--- a/include/lldb/API/SBLaunchInfo.h
+++ b/include/lldb/API/SBLaunchInfo.h
@@ -17,7 +17,7 @@ namespace lldb {
class SBPlatform;
class SBTarget;
-class SBLaunchInfo
+class LLDB_API SBLaunchInfo
{
public:
SBLaunchInfo (const char **argv);
@@ -140,7 +140,13 @@ public:
void
SetShell (const char * path);
-
+
+ bool
+ GetShellExpandArguments ();
+
+ void
+ SetShellExpandArguments (bool glob);
+
uint32_t
GetResumeCount ();
@@ -178,6 +184,9 @@ protected:
lldb_private::ProcessLaunchInfo &
ref ();
+ const lldb_private::ProcessLaunchInfo &
+ ref () const;
+
ProcessLaunchInfoSP m_opaque_sp;
};
diff --git a/include/lldb/API/SBLineEntry.h b/include/lldb/API/SBLineEntry.h
index 2d099a297980..8311bbbafc90 100644
--- a/include/lldb/API/SBLineEntry.h
+++ b/include/lldb/API/SBLineEntry.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBLineEntry
+class LLDB_API SBLineEntry
{
public:
diff --git a/include/lldb/API/SBListener.h b/include/lldb/API/SBListener.h
index 58a8fe9a55b7..924f8109f638 100644
--- a/include/lldb/API/SBListener.h
+++ b/include/lldb/API/SBListener.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBListener
+class LLDB_API SBListener
{
public:
SBListener ();
diff --git a/include/lldb/API/SBModule.h b/include/lldb/API/SBModule.h
index e85654bccc72..4030d2b21797 100644
--- a/include/lldb/API/SBModule.h
+++ b/include/lldb/API/SBModule.h
@@ -18,7 +18,7 @@
namespace lldb {
-class SBModule
+class LLDB_API SBModule
{
public:
@@ -106,7 +106,7 @@ public:
/// or "./usr/lib", then the install path will be resolved using
/// the platform's current working directory as the base path.
///
- /// @param[in]
+ /// @param[in] file
/// A file specification object.
//------------------------------------------------------------------
bool
@@ -318,6 +318,23 @@ public:
GetVersion (uint32_t *versions,
uint32_t num_versions);
+ //------------------------------------------------------------------
+ /// Get accessor for the symbol file specification.
+ ///
+ /// When debugging an object file an additional debug information can
+ /// be provided in separate file. Therefore if you debugging something
+ /// like '/usr/lib/liba.dylib' then debug information can be located
+ /// in folder like '/usr/lib/liba.dylib.dSYM/'.
+ ///
+ /// @return
+ /// A const reference to the file specification object.
+ //------------------------------------------------------------------
+ lldb::SBFileSpec
+ GetSymbolFileSpec() const;
+
+ lldb::SBAddress
+ GetObjectFileHeaderAddress() const;
+
private:
friend class SBAddress;
friend class SBFrame;
diff --git a/include/lldb/API/SBModuleSpec.h b/include/lldb/API/SBModuleSpec.h
index a615e017cbc8..d533de3c7bce 100644
--- a/include/lldb/API/SBModuleSpec.h
+++ b/include/lldb/API/SBModuleSpec.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBModuleSpec
+class LLDB_API SBModuleSpec
{
public:
diff --git a/include/lldb/API/SBPlatform.h b/include/lldb/API/SBPlatform.h
index 42b2d0492895..db4a754103ca 100644
--- a/include/lldb/API/SBPlatform.h
+++ b/include/lldb/API/SBPlatform.h
@@ -21,7 +21,7 @@ namespace lldb {
class SBLaunchInfo;
- class SBPlatformConnectOptions
+ class LLDB_API SBPlatformConnectOptions
{
public:
SBPlatformConnectOptions (const char *url);
@@ -59,7 +59,7 @@ namespace lldb {
PlatformConnectOptions *m_opaque_ptr;
};
- class SBPlatformShellCommand
+ class LLDB_API SBPlatformShellCommand
{
public:
SBPlatformShellCommand (const char *shell_command);
@@ -104,7 +104,7 @@ namespace lldb {
PlatformShellCommand *m_opaque_ptr;
};
- class SBPlatform
+ class LLDB_API SBPlatform
{
public:
diff --git a/include/lldb/API/SBProcess.h b/include/lldb/API/SBProcess.h
index 3d6e49c4821d..71bca4fc697a 100644
--- a/include/lldb/API/SBProcess.h
+++ b/include/lldb/API/SBProcess.h
@@ -20,13 +20,13 @@ namespace lldb {
class SBEvent;
-class SBProcess
+class LLDB_API SBProcess
{
public:
//------------------------------------------------------------------
/// Broadcaster event bits definitions.
//------------------------------------------------------------------
- enum
+ FLAGS_ANONYMOUS_ENUM()
{
eBroadcastBitStateChanged = (1 << 0),
eBroadcastBitInterrupt = (1 << 1),
@@ -229,7 +229,22 @@ public:
uint32_t
GetStopID(bool include_expression_stops = false);
-
+
+ //------------------------------------------------------------------
+ /// Gets the stop event corresponding to stop ID.
+ //
+ /// Note that it wasn't fully implemented and tracks only the stop
+ /// event for the last natural stop ID.
+ ///
+ /// @param [in] stop_id
+ /// The ID of the stop event to return.
+ ///
+ /// @return
+ /// The stop event corresponding to stop ID.
+ //------------------------------------------------------------------
+ lldb::SBEvent
+ GetStopEventForStopID(uint32_t stop_id);
+
size_t
ReadMemory (addr_t addr, void *buf, size_t size, lldb::SBError &error);
@@ -260,6 +275,9 @@ public:
static lldb::SBProcess
GetProcessFromEvent (const lldb::SBEvent &event);
+
+ static bool
+ GetInterruptedFromEvent (const lldb::SBEvent &event);
static bool
EventIsProcessEvent (const lldb::SBEvent &event);
diff --git a/include/lldb/API/SBQueue.h b/include/lldb/API/SBQueue.h
index fbb1952902f8..2f453cddd5d1 100644
--- a/include/lldb/API/SBQueue.h
+++ b/include/lldb/API/SBQueue.h
@@ -17,7 +17,7 @@
namespace lldb {
-class SBQueue
+class LLDB_API SBQueue
{
public:
SBQueue ();
diff --git a/include/lldb/API/SBQueueItem.h b/include/lldb/API/SBQueueItem.h
index c90f36eeb573..9426a53b2376 100644
--- a/include/lldb/API/SBQueueItem.h
+++ b/include/lldb/API/SBQueueItem.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBQueueItem
+class LLDB_API SBQueueItem
{
public:
SBQueueItem ();
diff --git a/include/lldb/API/SBSection.h b/include/lldb/API/SBSection.h
index 5a49049502fd..0a22413b5b9c 100644
--- a/include/lldb/API/SBSection.h
+++ b/include/lldb/API/SBSection.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBSection
+class LLDB_API SBSection
{
public:
diff --git a/include/lldb/API/SBSourceManager.h b/include/lldb/API/SBSourceManager.h
index 5b52c49ff3ee..6e7358f16e77 100644
--- a/include/lldb/API/SBSourceManager.h
+++ b/include/lldb/API/SBSourceManager.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBSourceManager
+class LLDB_API SBSourceManager
{
public:
SBSourceManager (const SBDebugger &debugger);
diff --git a/include/lldb/API/SBStream.h b/include/lldb/API/SBStream.h
index cd33bfda32ba..2b25cd2c68f2 100644
--- a/include/lldb/API/SBStream.h
+++ b/include/lldb/API/SBStream.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBStream
+class LLDB_API SBStream
{
public:
diff --git a/include/lldb/API/SBStringList.h b/include/lldb/API/SBStringList.h
index 9d0be6e8a741..e0e58f765c6d 100644
--- a/include/lldb/API/SBStringList.h
+++ b/include/lldb/API/SBStringList.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBStringList
+class LLDB_API SBStringList
{
public:
diff --git a/include/lldb/API/SBSymbol.h b/include/lldb/API/SBSymbol.h
index 0a528a9ac96f..3d259a2c20c6 100644
--- a/include/lldb/API/SBSymbol.h
+++ b/include/lldb/API/SBSymbol.h
@@ -17,7 +17,7 @@
namespace lldb {
-class SBSymbol
+class LLDB_API SBSymbol
{
public:
diff --git a/include/lldb/API/SBSymbolContext.h b/include/lldb/API/SBSymbolContext.h
index fee2d19179d0..24c2ce9a1d6e 100644
--- a/include/lldb/API/SBSymbolContext.h
+++ b/include/lldb/API/SBSymbolContext.h
@@ -20,7 +20,7 @@
namespace lldb {
-class SBSymbolContext
+class LLDB_API SBSymbolContext
{
public:
SBSymbolContext ();
diff --git a/include/lldb/API/SBSymbolContextList.h b/include/lldb/API/SBSymbolContextList.h
index 6cc78e472c6f..79dcccdcbf84 100644
--- a/include/lldb/API/SBSymbolContextList.h
+++ b/include/lldb/API/SBSymbolContextList.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBSymbolContextList
+class LLDB_API SBSymbolContextList
{
public:
SBSymbolContextList ();
diff --git a/include/lldb/API/SBTarget.h b/include/lldb/API/SBTarget.h
index 322cf04159ff..dcca4e7b3a19 100644
--- a/include/lldb/API/SBTarget.h
+++ b/include/lldb/API/SBTarget.h
@@ -12,6 +12,7 @@
#include "lldb/API/SBDefines.h"
#include "lldb/API/SBAddress.h"
+#include "lldb/API/SBAttachInfo.h"
#include "lldb/API/SBBroadcaster.h"
#include "lldb/API/SBFileSpec.h"
#include "lldb/API/SBFileSpecList.h"
@@ -25,135 +26,7 @@ namespace lldb {
class SBPlatform;
-class SBAttachInfo
-{
-public:
- SBAttachInfo ();
-
- SBAttachInfo (lldb::pid_t pid);
-
- SBAttachInfo (const char *path, bool wait_for);
-
- SBAttachInfo (const SBAttachInfo &rhs);
-
- ~SBAttachInfo();
-
- SBAttachInfo &
- operator = (const SBAttachInfo &rhs);
-
- lldb::pid_t
- GetProcessID ();
-
- void
- SetProcessID (lldb::pid_t pid);
-
- void
- SetExecutable (const char *path);
-
- void
- SetExecutable (lldb::SBFileSpec exe_file);
-
- bool
- GetWaitForLaunch ();
-
- void
- SetWaitForLaunch (bool b);
-
- bool
- GetIgnoreExisting ();
-
- void
- SetIgnoreExisting (bool b);
-
- uint32_t
- GetResumeCount ();
-
- void
- SetResumeCount (uint32_t c);
-
- const char *
- GetProcessPluginName ();
-
- void
- SetProcessPluginName (const char *plugin_name);
-
- uint32_t
- GetUserID();
-
- uint32_t
- GetGroupID();
-
- bool
- UserIDIsValid ();
-
- bool
- GroupIDIsValid ();
-
- void
- SetUserID (uint32_t uid);
-
- void
- SetGroupID (uint32_t gid);
-
- uint32_t
- GetEffectiveUserID();
-
- uint32_t
- GetEffectiveGroupID();
-
- bool
- EffectiveUserIDIsValid ();
-
- bool
- EffectiveGroupIDIsValid ();
-
- void
- SetEffectiveUserID (uint32_t uid);
-
- void
- SetEffectiveGroupID (uint32_t gid);
-
- lldb::pid_t
- GetParentProcessID ();
-
- void
- SetParentProcessID (lldb::pid_t pid);
-
- bool
- ParentProcessIDIsValid();
-
- //----------------------------------------------------------------------
- /// Get the listener that will be used to receive process events.
- ///
- /// If no listener has been set via a call to
- /// SBLaunchInfo::SetListener(), then an invalid SBListener will be
- /// returned (SBListener::IsValid() will return false). If a listener
- /// has been set, then the valid listener object will be returned.
- //----------------------------------------------------------------------
- SBListener
- GetListener ();
-
- //----------------------------------------------------------------------
- /// Set the listener that will be used to receive process events.
- ///
- /// By default the SBDebugger, which has a listener, that the SBTarget
- /// belongs to will listen for the process events. Calling this function
- /// allows a different listener to be used to listen for process events.
- //----------------------------------------------------------------------
- void
- SetListener (SBListener &listener);
-
-
-protected:
- friend class SBTarget;
-
- lldb_private::ProcessAttachInfo &
- ref ();
-
- ProcessAttachInfoSP m_opaque_sp;
-};
-
-class SBTarget
+class LLDB_API SBTarget
{
public:
//------------------------------------------------------------------
@@ -187,7 +60,19 @@ public:
bool
IsValid() const;
+
+ static bool
+ EventIsTargetEvent (const lldb::SBEvent &event);
+
+ static lldb::SBTarget
+ GetTargetFromEvent (const lldb::SBEvent &event);
+ static uint32_t
+ GetNumModulesFromEvent (const lldb::SBEvent &event);
+
+ static lldb::SBModule
+ GetModuleAtIndexFromEvent (const uint32_t idx, const lldb::SBEvent &event);
+
static const char *
GetBroadcasterClassName ();
@@ -273,7 +158,7 @@ public:
/// @param[in] stop_at_entry
/// If false do not stop the inferior at the entry point.
///
- /// @param[out]
+ /// @param[out] error
/// An error object. Contains the reason if there is some failure.
///
/// @return
@@ -344,7 +229,7 @@ public:
/// @param[in] pid
/// The process ID to attach to.
///
- /// @param[out]
+ /// @param[out] error
/// An error explaining what went wrong if attach fails.
///
/// @return
@@ -378,7 +263,7 @@ public:
/// @param[in] wait_for
/// If true wait for a new instance of 'name' to be launched.
///
- /// @param[out]
+ /// @param[out] error
/// An error explaining what went wrong if attach fails.
///
/// @return
@@ -405,7 +290,7 @@ public:
/// @param[in] plugin_name
/// The plugin name to be used; can be NULL.
///
- /// @param[out]
+ /// @param[out] error
/// An error explaining what went wrong if the connect fails.
///
/// @return
@@ -764,13 +649,13 @@ public:
lldb::SBBreakpoint
BreakpointCreateBySourceRegex (const char *source_regex,
- const lldb::SBFileSpec &source_file,
+ const SBFileSpec &source_file,
const char *module_name = NULL);
lldb::SBBreakpoint
- BreakpointCreateBySourceRegex (const char *source_regex,
- const SBFileSpecList &module_list,
- const lldb::SBFileSpecList &source_file);
+ BreakpointCreateBySourceRegex (const char *source_regex,
+ const SBFileSpecList &module_list,
+ const SBFileSpecList &source_file);
lldb::SBBreakpoint
BreakpointCreateForException (lldb::LanguageType language,
@@ -888,6 +773,12 @@ public:
lldb::addr_t
GetStackRedZoneSize();
+
+ lldb::SBLaunchInfo
+ GetLaunchInfo () const;
+
+ void
+ SetLaunchInfo (const lldb::SBLaunchInfo &launch_info);
protected:
friend class SBAddress;
diff --git a/include/lldb/API/SBThread.h b/include/lldb/API/SBThread.h
index db15f651f2d5..2c45fa8d5120 100644
--- a/include/lldb/API/SBThread.h
+++ b/include/lldb/API/SBThread.h
@@ -18,7 +18,7 @@ namespace lldb {
class SBFrame;
-class SBThread
+class LLDB_API SBThread
{
public:
enum
diff --git a/include/lldb/API/SBThreadCollection.h b/include/lldb/API/SBThreadCollection.h
index b13cbd938e28..996ee3cd22aa 100644
--- a/include/lldb/API/SBThreadCollection.h
+++ b/include/lldb/API/SBThreadCollection.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBThreadCollection
+class LLDB_API SBThreadCollection
{
public:
diff --git a/include/lldb/API/SBThreadPlan.h b/include/lldb/API/SBThreadPlan.h
index e53942d65fa8..9cc0d0b89bb5 100644
--- a/include/lldb/API/SBThreadPlan.h
+++ b/include/lldb/API/SBThreadPlan.h
@@ -16,7 +16,7 @@
namespace lldb {
-class SBThreadPlan
+class LLDB_API SBThreadPlan
{
friend class lldb_private::ThreadPlan;
diff --git a/include/lldb/API/SBType.h b/include/lldb/API/SBType.h
index 7990fc0696a9..01f0c6afc795 100644
--- a/include/lldb/API/SBType.h
+++ b/include/lldb/API/SBType.h
@@ -16,7 +16,7 @@ namespace lldb {
class SBTypeList;
-class SBTypeMember
+class LLDB_API SBTypeMember
{
public:
SBTypeMember ();
diff --git a/include/lldb/API/SBTypeCategory.h b/include/lldb/API/SBTypeCategory.h
index f123e931e17d..30c338b28a46 100644
--- a/include/lldb/API/SBTypeCategory.h
+++ b/include/lldb/API/SBTypeCategory.h
@@ -14,7 +14,7 @@
namespace lldb {
- class SBTypeCategory
+ class LLDB_API SBTypeCategory
{
public:
diff --git a/include/lldb/API/SBTypeEnumMember.h b/include/lldb/API/SBTypeEnumMember.h
index 75c9917989c2..b141ba0a6bb0 100644
--- a/include/lldb/API/SBTypeEnumMember.h
+++ b/include/lldb/API/SBTypeEnumMember.h
@@ -15,7 +15,7 @@
namespace lldb {
-class SBTypeEnumMember
+class LLDB_API SBTypeEnumMember
{
public:
SBTypeEnumMember ();
diff --git a/include/lldb/API/SBTypeFilter.h b/include/lldb/API/SBTypeFilter.h
index 016954943e28..f030b6a99b60 100644
--- a/include/lldb/API/SBTypeFilter.h
+++ b/include/lldb/API/SBTypeFilter.h
@@ -14,7 +14,7 @@
namespace lldb {
- class SBTypeFilter
+ class LLDB_API SBTypeFilter
{
public:
diff --git a/include/lldb/API/SBTypeFormat.h b/include/lldb/API/SBTypeFormat.h
index eb45ff2b0eba..c24641ac15f5 100644
--- a/include/lldb/API/SBTypeFormat.h
+++ b/include/lldb/API/SBTypeFormat.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBTypeFormat
+class LLDB_API SBTypeFormat
{
public:
diff --git a/include/lldb/API/SBTypeNameSpecifier.h b/include/lldb/API/SBTypeNameSpecifier.h
index 19d1988aa0c5..71700a7123d5 100644
--- a/include/lldb/API/SBTypeNameSpecifier.h
+++ b/include/lldb/API/SBTypeNameSpecifier.h
@@ -14,7 +14,7 @@
namespace lldb {
- class SBTypeNameSpecifier
+ class LLDB_API SBTypeNameSpecifier
{
public:
diff --git a/include/lldb/API/SBTypeSummary.h b/include/lldb/API/SBTypeSummary.h
index 220451e6d70b..9b367ba5f982 100644
--- a/include/lldb/API/SBTypeSummary.h
+++ b/include/lldb/API/SBTypeSummary.h
@@ -15,7 +15,7 @@
#ifndef LLDB_DISABLE_PYTHON
namespace lldb {
- class SBTypeSummaryOptions
+ class LLDB_API SBTypeSummaryOptions
{
public:
SBTypeSummaryOptions();
diff --git a/include/lldb/API/SBTypeSynthetic.h b/include/lldb/API/SBTypeSynthetic.h
index e77cbfef598c..5dd11757ba40 100644
--- a/include/lldb/API/SBTypeSynthetic.h
+++ b/include/lldb/API/SBTypeSynthetic.h
@@ -16,7 +16,7 @@
namespace lldb {
- class SBTypeSynthetic
+ class LLDB_API SBTypeSynthetic
{
public:
diff --git a/include/lldb/API/SBUnixSignals.h b/include/lldb/API/SBUnixSignals.h
index 40bbed8b48ef..9eae30739bb8 100644
--- a/include/lldb/API/SBUnixSignals.h
+++ b/include/lldb/API/SBUnixSignals.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBUnixSignals {
+class LLDB_API SBUnixSignals {
public:
SBUnixSignals ();
diff --git a/include/lldb/API/SBValue.h b/include/lldb/API/SBValue.h
index bedac4ef1d2d..a070b149f34f 100644
--- a/include/lldb/API/SBValue.h
+++ b/include/lldb/API/SBValue.h
@@ -19,10 +19,8 @@ class ValueLocker;
namespace lldb {
-class SBValue
+class LLDB_API SBValue
{
-friend class ValueLocker;
-
public:
SBValue ();
@@ -84,6 +82,7 @@ public:
ValueType
GetValueType ();
+ // If you call this on a newly created ValueObject, it will always return false.
bool
GetValueDidChange ();
@@ -223,7 +222,7 @@ public:
/// and also if the target can be run to figure out the dynamic
/// type of the child value.
///
- /// @param[in] synthetic_allowed
+ /// @param[in] can_create_synthetic
/// If \b true, then allow child values to be created by index
/// for pointers and arrays for indexes that normally wouldn't
/// be allowed.
@@ -326,6 +325,9 @@ public:
//------------------------------------------------------------------
bool
MightHaveChildren ();
+
+ bool
+ IsRuntimeSupportValue ();
uint32_t
GetNumChildren ();
@@ -386,7 +388,7 @@ public:
/// @param[in] write
/// Stop when this value is modified
///
- /// @param[out]
+ /// @param[out] error
/// An error object. Contains the reason if there is some failure.
///
/// @return
@@ -419,7 +421,7 @@ public:
/// @param[in] write
/// Stop when this value is modified
///
- /// @param[out]
+ /// @param[out] error
/// An error object. Contains the reason if there is some failure.
///
/// @return
diff --git a/include/lldb/API/SBValueList.h b/include/lldb/API/SBValueList.h
index 812fdac91c11..563ca3d7e1bf 100644
--- a/include/lldb/API/SBValueList.h
+++ b/include/lldb/API/SBValueList.h
@@ -16,7 +16,7 @@ class ValueListImpl;
namespace lldb {
-class SBValueList
+class LLDB_API SBValueList
{
public:
diff --git a/include/lldb/API/SBVariablesOptions.h b/include/lldb/API/SBVariablesOptions.h
new file mode 100644
index 000000000000..527310f5dfc7
--- /dev/null
+++ b/include/lldb/API/SBVariablesOptions.h
@@ -0,0 +1,98 @@
+//===-- SBVariablesOptions.h ------------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLDB_SBVariablesOptions_h_
+#define LLDB_SBVariablesOptions_h_
+
+#include "lldb/API/SBDefines.h"
+
+class VariablesOptionsImpl;
+
+namespace lldb {
+
+class LLDB_API SBVariablesOptions
+{
+public:
+ SBVariablesOptions ();
+
+ SBVariablesOptions (const SBVariablesOptions& options);
+
+ SBVariablesOptions&
+ operator = (const SBVariablesOptions& options);
+
+ ~SBVariablesOptions ();
+
+ bool
+ IsValid () const;
+
+ bool
+ GetIncludeArguments () const;
+
+ void
+ SetIncludeArguments (bool);
+
+ bool
+ GetIncludeLocals () const;
+
+ void
+ SetIncludeLocals (bool);
+
+ bool
+ GetIncludeStatics () const;
+
+ void
+ SetIncludeStatics (bool);
+
+ bool
+ GetInScopeOnly () const;
+
+ void
+ SetInScopeOnly (bool);
+
+ bool
+ GetIncludeRuntimeSupportValues () const;
+
+ void
+ SetIncludeRuntimeSupportValues (bool);
+
+ lldb::DynamicValueType
+ GetUseDynamic () const;
+
+ void
+ SetUseDynamic (lldb::DynamicValueType);
+
+protected:
+ VariablesOptionsImpl *
+ operator->();
+
+ const VariablesOptionsImpl *
+ operator->() const;
+
+ VariablesOptionsImpl *
+ get ();
+
+ VariablesOptionsImpl &
+ ref();
+
+ const VariablesOptionsImpl &
+ ref() const;
+
+ SBVariablesOptions (VariablesOptionsImpl *lldb_object_ptr);
+
+ void
+ SetOptions (VariablesOptionsImpl *lldb_object_ptr);
+
+private:
+
+ std::unique_ptr<VariablesOptionsImpl> m_opaque_ap;
+};
+
+} // namespace lldb
+
+#endif // LLDB_SBValue_h_
diff --git a/include/lldb/API/SBWatchpoint.h b/include/lldb/API/SBWatchpoint.h
index 9bf51fd1ad05..5d0d48ee12f2 100644
--- a/include/lldb/API/SBWatchpoint.h
+++ b/include/lldb/API/SBWatchpoint.h
@@ -14,7 +14,7 @@
namespace lldb {
-class SBWatchpoint
+class LLDB_API SBWatchpoint
{
public:
diff --git a/include/lldb/API/SystemInitializerFull.h b/include/lldb/API/SystemInitializerFull.h
new file mode 100644
index 000000000000..6280fe8aef04
--- /dev/null
+++ b/include/lldb/API/SystemInitializerFull.h
@@ -0,0 +1,40 @@
+//===-- SystemInitializerFull.h ---------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLDB_API_SYSTEM_INITIALIZER_FULL_H
+#define LLDB_API_SYSTEM_INITIALIZER_FULL_H
+
+#include "lldb/Initialization/SystemInitializerCommon.h"
+
+namespace lldb_private
+{
+//------------------------------------------------------------------
+/// Initializes lldb.
+///
+/// This class is responsible for initializing all of lldb system
+/// services needed to use the full LLDB application. This class is
+/// not intended to be used externally, but is instead used
+/// internally by SBDebugger to initialize the system.
+//------------------------------------------------------------------
+class SystemInitializerFull : public SystemInitializerCommon
+{
+ public:
+ SystemInitializerFull();
+ virtual ~SystemInitializerFull();
+
+ void Initialize() override;
+ void Terminate() override;
+
+ private:
+ void InitializeSWIG();
+ void TerminateSWIG();
+};
+}
+
+#endif