diff options
author | Adrian Prantl <adrian-prantl@users.noreply.github.com> | 2024-03-08 10:39:34 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-08 10:39:34 -0800 |
commit | 99118c809367d518ffe4de60c16da953744b68b9 (patch) | |
tree | f2ddb99f41bea20094075be71533e3d25f3775ff /lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp | |
parent | 839a8fecb4c5dfe1b4484d5fc942a9490867c47a (diff) | |
download | llvm-99118c809367d518ffe4de60c16da953744b68b9.zip llvm-99118c809367d518ffe4de60c16da953744b68b9.tar.gz llvm-99118c809367d518ffe4de60c16da953744b68b9.tar.bz2 |
Change GetNumChildren()/CalculateNumChildren() methods return llvm::Expected (#84219)
Change GetNumChildren()/CalculateNumChildren() methods return
llvm::Expected
This is an NFC change that does not yet add any error handling or change
any code to return any errors.
This is the second big change in the patch series started with
https://github.com/llvm/llvm-project/pull/83501
A follow-up PR will wire up error handling.
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp')
-rw-r--r-- | lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp b/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp index 6d24eb0..ec5b320 100644 --- a/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp +++ b/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp @@ -177,7 +177,7 @@ public: ~LibcxxStdMapSyntheticFrontEnd() override = default; - uint32_t CalculateNumChildren() override; + llvm::Expected<uint32_t> CalculateNumChildren() override; lldb::ValueObjectSP GetChildAtIndex(uint32_t idx) override; @@ -209,8 +209,8 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd:: Update(); } -uint32_t lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd:: - CalculateNumChildren() { +llvm::Expected<uint32_t> lldb_private::formatters:: + LibcxxStdMapSyntheticFrontEnd::CalculateNumChildren() { if (m_count != UINT32_MAX) return m_count; @@ -311,13 +311,13 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetChildAtIndex( uint32_t idx) { static ConstString g_cc_("__cc_"), g_cc("__cc"); static ConstString g_nc("__nc"); - - if (idx >= CalculateNumChildren()) + uint32_t num_children = CalculateNumChildrenIgnoringErrors(); + if (idx >= num_children) return lldb::ValueObjectSP(); if (m_tree == nullptr || m_root_node == nullptr) return lldb::ValueObjectSP(); - MapIterator iterator(m_root_node, CalculateNumChildren()); + MapIterator iterator(m_root_node, num_children); const bool need_to_skip = (idx > 0); size_t actual_advancde = idx; @@ -382,7 +382,7 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetChildAtIndex( name.Printf("[%" PRIu64 "]", (uint64_t)idx); auto potential_child_sp = iterated_sp->Clone(ConstString(name.GetString())); if (potential_child_sp) { - switch (potential_child_sp->GetNumChildren()) { + switch (potential_child_sp->GetNumChildrenIgnoringErrors()) { case 1: { auto child0_sp = potential_child_sp->GetChildAtIndex(0); if (child0_sp && |