Add a new base class, Frame. It is a pure virtual function which
defines a protocol that all subclasses will implement. StackFrame
is currently the only subclass and the methods that Frame vends are
nearly identical to StackFrame's old methods.
Update all callers to use Frame*/Frame& instead of pointers to
StackFrames.
This is almost entirely a mechanical change that touches a lot of
the code base so I'm committing it alone. No new functionality is
added with this patch, no new subclasses of Frame exist yet.
I'll probably need to tweak some of the separation, possibly moving
some of StackFrame's methods up in to Frame, but this is a good
starting point.
<rdar://problem/15314068>
llvm-svn: 193907
diff --git a/lldb/source/Symbol/Variable.cpp b/lldb/source/Symbol/Variable.cpp
index 7276e0a..b864523 100644
--- a/lldb/source/Symbol/Variable.cpp
+++ b/lldb/source/Symbol/Variable.cpp
@@ -22,7 +22,7 @@
#include "lldb/Target/ABI.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterContext.h"
-#include "lldb/Target/StackFrame.h"
+#include "lldb/Target/Frame.h"
#include "lldb/Target/Thread.h"
#include "lldb/Target/Target.h"
@@ -207,7 +207,7 @@
}
bool
-Variable::LocationIsValidForFrame (StackFrame *frame)
+Variable::LocationIsValidForFrame (Frame *frame)
{
// Is the variable is described by a single location?
if (!m_location.IsLocationList())
@@ -271,7 +271,7 @@
}
bool
-Variable::IsInScope (StackFrame *frame)
+Variable::IsInScope (Frame *frame)
{
switch (m_scope)
{
@@ -520,7 +520,7 @@
static void
-PrivateAutoComplete (StackFrame *frame,
+PrivateAutoComplete (Frame *frame,
const std::string &partial_path,
const std::string &prefix_path, // Anything that has been resolved already will be in here
const ClangASTType& clang_type,
@@ -528,7 +528,7 @@
bool &word_complete);
static void
-PrivateAutoCompleteMembers (StackFrame *frame,
+PrivateAutoCompleteMembers (Frame *frame,
const std::string &partial_member_name,
const std::string &partial_path,
const std::string &prefix_path, // Anything that has been resolved already will be in here
@@ -537,7 +537,7 @@
bool &word_complete);
static void
-PrivateAutoCompleteMembers (StackFrame *frame,
+PrivateAutoCompleteMembers (Frame *frame,
const std::string &partial_member_name,
const std::string &partial_path,
const std::string &prefix_path, // Anything that has been resolved already will be in here
@@ -616,7 +616,7 @@
}
static void
-PrivateAutoComplete (StackFrame *frame,
+PrivateAutoComplete (Frame *frame,
const std::string &partial_path,
const std::string &prefix_path, // Anything that has been resolved already will be in here
const ClangASTType& clang_type,