labath created this revision.
labath added reviewers: JDevlieghere, clayborg, jingham.
Some of these were present in files which should never be read by swig
(and we also had one in the interface file, which is only read by swig).
They are probably leftovers from the time when we were running swig over
lldb headers directly.
The reason I'm putting this up for review is that the patch also
contains mild functional changes. While writing this patch, I noticed
that some of the #ifdefs were guarding public functions that were
operating on lldb_private data types. While it wasn't strictly
necessary, I made these private, as nobody should really be accessing
them. This can potentially break existing code if it happened to use
these methods, though it will only break at build time -- if someone
builds against an old header, he should still be able to link to a new
lldb library, since the functions are still there.
We could keep these public for backward compatbility, but I would argue
that if anyone was actually using these functions for anything, his code
is already broken.
https://reviews.llvm.org/D60400
Files:
include/lldb/API/SBDefines.h
include/lldb/API/SBThread.h
include/lldb/API/SBThreadPlan.h
include/lldb/Core/Address.h
include/lldb/Core/SourceManager.h
include/lldb/Target/Process.h
scripts/interface/SBFrame.i
source/API/SBThread.cpp
source/API/SBThreadPlan.cpp
Index: source/API/SBThreadPlan.cpp
===================================================================
--- source/API/SBThreadPlan.cpp
+++ source/API/SBThreadPlan.cpp
@@ -89,11 +89,7 @@
//----------------------------------------------------------------------
SBThreadPlan::~SBThreadPlan() {}
-lldb_private::ThreadPlan *SBThreadPlan::get() {
- LLDB_RECORD_METHOD_NO_ARGS(lldb_private::ThreadPlan *, SBThreadPlan, get);
-
- return LLDB_RECORD_RESULT(m_opaque_sp.get());
-}
+lldb_private::ThreadPlan *SBThreadPlan::get() { return m_opaque_sp.get(); }
bool SBThreadPlan::IsValid() const {
LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThreadPlan, IsValid);
@@ -402,7 +398,6 @@
LLDB_REGISTER_CONSTRUCTOR(SBThreadPlan, (lldb::SBThread &, const char *));
LLDB_REGISTER_METHOD(const lldb::SBThreadPlan &,
SBThreadPlan, operator=,(const lldb::SBThreadPlan &));
- LLDB_REGISTER_METHOD(lldb_private::ThreadPlan *, SBThreadPlan, get, ());
LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, IsValid, ());
LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, operator bool, ());
LLDB_REGISTER_METHOD(void, SBThreadPlan, Clear, ());
Index: source/API/SBThread.cpp
===================================================================
--- source/API/SBThread.cpp
+++ source/API/SBThread.cpp
@@ -1398,21 +1398,11 @@
}
lldb_private::Thread *SBThread::operator->() {
- LLDB_RECORD_METHOD_NO_ARGS(lldb_private::Thread *, SBThread, operator->);
-
- ThreadSP thread_sp(m_opaque_sp->GetThreadSP());
- if (thread_sp)
- return LLDB_RECORD_RESULT(thread_sp.get());
- return nullptr;
+ return get();
}
lldb_private::Thread *SBThread::get() {
- LLDB_RECORD_METHOD_NO_ARGS(lldb_private::Thread *, SBThread, get);
-
- ThreadSP thread_sp(m_opaque_sp->GetThreadSP());
- if (thread_sp)
- return LLDB_RECORD_RESULT(thread_sp.get());
- return nullptr;
+ return m_opaque_sp->GetThreadSP().get();
}
namespace lldb_private {
@@ -1516,8 +1506,6 @@
LLDB_REGISTER_METHOD(lldb::SBThread, SBThread, GetCurrentExceptionBacktrace,
());
LLDB_REGISTER_METHOD(bool, SBThread, SafeToCallFunctions, ());
- LLDB_REGISTER_METHOD(lldb_private::Thread *, SBThread, operator->,());
- LLDB_REGISTER_METHOD(lldb_private::Thread *, SBThread, get, ());
}
}
Index: scripts/interface/SBFrame.i
===================================================================
--- scripts/interface/SBFrame.i
+++ scripts/interface/SBFrame.i
@@ -210,15 +210,12 @@
void
Clear();
-#ifndef SWIG
bool
operator == (const lldb::SBFrame &rhs) const;
bool
operator != (const lldb::SBFrame &rhs) const;
-#endif
-
%feature("docstring", "
/// The version that doesn't supply a 'use_dynamic' value will use the
/// target's default.
Index: include/lldb/Target/Process.h
===================================================================
--- include/lldb/Target/Process.h
+++ include/lldb/Target/Process.h
@@ -418,7 +418,6 @@
/// \see RegisterNotificationCallbacks (const Notifications&) @see
/// UnregisterNotificationCallbacks (const Notifications&)
//------------------------------------------------------------------
-#ifndef SWIG
typedef struct {
void *baton;
void (*initialize)(void *baton, Process *process);
@@ -503,7 +502,6 @@
DISALLOW_COPY_AND_ASSIGN(ProcessEventData);
};
-#endif // SWIG
//------------------------------------------------------------------
/// Construct with a shared pointer to a target, and the Process listener.
@@ -824,9 +822,7 @@
///
/// \see Process::Notifications
//------------------------------------------------------------------
-#ifndef SWIG
void RegisterNotificationCallbacks(const Process::Notifications &callbacks);
-#endif
//------------------------------------------------------------------
/// Unregister for process and thread notifications.
@@ -844,9 +840,7 @@
///
/// \see Process::Notifications
//------------------------------------------------------------------
-#ifndef SWIG
bool UnregisterNotificationCallbacks(const Process::Notifications &callbacks);
-#endif
//==================================================================
// Built in Process Control functions
Index: include/lldb/Core/SourceManager.h
===================================================================
--- include/lldb/Core/SourceManager.h
+++ include/lldb/Core/SourceManager.h
@@ -39,7 +39,6 @@
class SourceManager {
public:
-#ifndef SWIG
class File {
friend bool operator==(const SourceManager::File &lhs,
const SourceManager::File &rhs);
@@ -99,11 +98,9 @@
private:
void CommonInitializer(const FileSpec &file_spec, Target *target);
};
-#endif // SWIG
typedef std::shared_ptr<File> FileSP;
-#ifndef SWIG
// The SourceFileCache class separates the source manager from the cache of
// source files, so the cache can be stored in the Debugger, but the source
// managers can be per target.
@@ -119,7 +116,6 @@
typedef std::map<FileSpec, FileSP> FileCache;
FileCache m_file_cache;
};
-#endif // SWIG
//------------------------------------------------------------------
// Constructors and Destructors
Index: include/lldb/Core/Address.h
===================================================================
--- include/lldb/Core/Address.h
+++ include/lldb/Core/Address.h
@@ -194,9 +194,7 @@
/// \return
/// A const Address object reference to \a this.
//------------------------------------------------------------------
-#ifndef SWIG
const Address &operator=(const Address &rhs);
-#endif
//------------------------------------------------------------------
/// Clear the object's state.
Index: include/lldb/API/SBThreadPlan.h
===================================================================
--- include/lldb/API/SBThreadPlan.h
+++ include/lldb/API/SBThreadPlan.h
@@ -103,11 +103,7 @@
SBThreadPlan QueueThreadPlanForStepScripted(const char *script_class_name,
SBError &error);
-#ifndef SWIG
- lldb_private::ThreadPlan *get();
-#endif
-
-protected:
+private:
friend class SBBreakpoint;
friend class SBBreakpointLocation;
friend class SBFrame;
@@ -117,11 +113,9 @@
friend class lldb_private::QueueImpl;
friend class SBQueueItem;
-#ifndef SWIG
+ lldb_private::ThreadPlan *get();
void SetThreadPlan(const lldb::ThreadPlanSP &lldb_object_sp);
-#endif
-private:
lldb::ThreadPlanSP m_opaque_sp;
};
Index: include/lldb/API/SBThread.h
===================================================================
--- include/lldb/API/SBThread.h
+++ include/lldb/API/SBThread.h
@@ -205,14 +205,7 @@
bool SafeToCallFunctions();
-#ifndef SWIG
- lldb_private::Thread *operator->();
-
- lldb_private::Thread *get();
-
-#endif
-
-protected:
+private:
friend class SBBreakpoint;
friend class SBBreakpointLocation;
friend class SBBreakpointCallbackBaton;
@@ -223,16 +216,18 @@
friend class SBValue;
friend class lldb_private::QueueImpl;
friend class SBQueueItem;
+ friend class SBThreadPlan;
void SetThread(const lldb::ThreadSP &lldb_object_sp);
-#ifndef SWIG
SBError ResumeNewPlan(lldb_private::ExecutionContext &exe_ctx,
lldb_private::ThreadPlan *new_plan);
-#endif
-private:
lldb::ExecutionContextRefSP m_opaque_sp;
+
+ lldb_private::Thread *operator->();
+
+ lldb_private::Thread *get();
};
} // namespace lldb
Index: include/lldb/API/SBDefines.h
===================================================================
--- include/lldb/API/SBDefines.h
+++ include/lldb/API/SBDefines.h
@@ -16,10 +16,6 @@
#include "lldb/lldb-types.h"
#include "lldb/lldb-versioning.h"
-#ifdef SWIG
-#define LLDB_API
-#endif
-
// Forward Declarations
namespace lldb {
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits