summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2015-10-01 23:07:06 +0000
committerSean Callanan <scallanan@apple.com>2015-10-01 23:07:06 +0000
commit9301ec11910dbb7fd13becd0e77b0a1faeff5915 (patch)
tree573c59b37f44c0c36df9b9ccbcf17c6b890c2dc5 /lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp
parentb660b619544d110808a93e4bb069a630c8a20900 (diff)
downloadbcm5719-llvm-9301ec11910dbb7fd13becd0e77b0a1faeff5915.tar.gz
bcm5719-llvm-9301ec11910dbb7fd13becd0e77b0a1faeff5915.zip
Eliminated redundant "constructors" for ClangExpressionVariable.
The ClangExpressionVariable::CreateVariableInList functions looked cute, but caused more confusion than they solved. I removed them, and instead made sure that there are adequate facilities for easily adding newly-constructed ExpressionVariables to lists. I also made some of the constructors that are common be generic, so that it's possible to construct expression variables from generic places (like the ABI and ValueObject) without having to know the specifics about the class. llvm-svn: 249095
Diffstat (limited to 'lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp')
-rw-r--r--lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp
index f78ee3a8f62..908546b3ecd 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp
@@ -53,6 +53,21 @@ ClangExpressionVariable::ClangExpressionVariable (const lldb::ValueObjectSP &val
m_frozen_sp = valobj_sp;
}
+ClangExpressionVariable::ClangExpressionVariable(ExecutionContextScope *exe_scope,
+ const ConstString &name,
+ const TypeFromUser& user_type,
+ lldb::ByteOrder byte_order,
+ uint32_t addr_byte_size) :
+ ExpressionVariable(LLVMCastKind::eKindClang),
+ m_parser_vars(),
+ m_jit_vars()
+{
+ m_flags = EVNone;
+ m_frozen_sp = ValueObjectConstResult::Create (exe_scope, byte_order, addr_byte_size);
+ SetName (name);
+ SetCompilerType (user_type);
+}
+
TypeFromUser
ClangExpressionVariable::GetTypeFromUser()
{
OpenPOWER on IntegriCloud