Michael137 added a comment. In D139083#3964612 <https://reviews.llvm.org/D139083#3964612>, @aprantl wrote:
> This is definitely useful — I just have one question: Isn't ForEach a special > case of AnyOf? Could we implement on in terms of the other? Yup it is. But it looked a bit too clever and just iterating over `m_modules` seemed cleaner. bool ret = false; ForEach([&](auto const& module) { if (callback(module)) { ret = true; return false; } return true; } return ret; It looked a bit awkward ================ Comment at: lldb/include/lldb/Core/ModuleList.h:480 + /// This function is thread-safe. + bool AnyOf(std::function<bool(const lldb::ModuleSP &module_sp)> const + &callback) const; ---------------- Michael137 wrote: > aprantl wrote: > > Why not `std::function<bool(const lldb::Module &)>` ? > Unfortunately a lot of APIs of `Module` are non-const since they rely on > updating internal state :( Re. why shared_ptr, that's because I just waned to align it with `ForEach`. I suppose if we're starting fresh we could just pass the reference. It would have to be mutable though Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D139083/new/ https://reviews.llvm.org/D139083 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits