diff options
Diffstat (limited to 'source/DataFormatters/TypeSummary.cpp')
| -rw-r--r-- | source/DataFormatters/TypeSummary.cpp | 56 |
1 files changed, 52 insertions, 4 deletions
diff --git a/source/DataFormatters/TypeSummary.cpp b/source/DataFormatters/TypeSummary.cpp index e5d80174c3cc..ff089af58cb7 100644 --- a/source/DataFormatters/TypeSummary.cpp +++ b/source/DataFormatters/TypeSummary.cpp @@ -34,6 +34,50 @@ using namespace lldb; using namespace lldb_private; +TypeSummaryOptions::TypeSummaryOptions () : + m_lang(eLanguageTypeUnknown), + m_capping(eTypeSummaryCapped) +{} + +TypeSummaryOptions::TypeSummaryOptions (const TypeSummaryOptions& rhs) : + m_lang(rhs.m_lang), + m_capping(rhs.m_capping) +{} + +TypeSummaryOptions& +TypeSummaryOptions::operator = (const TypeSummaryOptions& rhs) +{ + m_lang = rhs.m_lang; + m_capping = rhs.m_capping; + return *this; +} + +lldb::LanguageType +TypeSummaryOptions::GetLanguage () const +{ + return m_lang; +} + +lldb::TypeSummaryCapping +TypeSummaryOptions::GetCapping () const +{ + return m_capping; +} + +TypeSummaryOptions& +TypeSummaryOptions::SetLanguage (lldb::LanguageType lang) +{ + m_lang = lang; + return *this; +} + +TypeSummaryOptions& +TypeSummaryOptions::SetCapping (lldb::TypeSummaryCapping cap) +{ + m_capping = cap; + return *this; +} + TypeSummaryImpl::TypeSummaryImpl (const TypeSummaryImpl::Flags& flags) : m_flags(flags) { @@ -51,7 +95,8 @@ m_format() bool StringSummaryFormat::FormatObject (ValueObject *valobj, - std::string& retval) + std::string& retval, + const TypeSummaryOptions& options) { if (!valobj) { @@ -115,11 +160,12 @@ m_description(description ? description : "") bool CXXFunctionSummaryFormat::FormatObject (ValueObject *valobj, - std::string& dest) + std::string& dest, + const TypeSummaryOptions& options) { dest.clear(); StreamString stream; - if (!m_impl || m_impl(*valobj,stream) == false) + if (!m_impl || m_impl(*valobj,stream,options) == false) return false; dest.assign(stream.GetData()); return true; @@ -160,7 +206,8 @@ m_script_function_sp() bool ScriptSummaryFormat::FormatObject (ValueObject *valobj, - std::string& retval) + std::string& retval, + const TypeSummaryOptions& options) { Timer scoped_timer (__PRETTY_FUNCTION__, __PRETTY_FUNCTION__); @@ -190,6 +237,7 @@ ScriptSummaryFormat::FormatObject (ValueObject *valobj, return script_interpreter->GetScriptedSummary(m_function_name.c_str(), valobj->GetSP(), m_script_function_sp, + options, retval); } |
