================
@@ -711,6 +696,36 @@ Module::LookupInfo::LookupInfo(ConstString name,
}
}
+std::vector<Module::LookupInfo>
+Module::LookupInfo::MakeLookupInfos(ConstString name,
+ lldb::FunctionNameType name_type_mask,
+ lldb::LanguageType lang_type) {
+ std::vector<LanguageType> lang_types;
+ if (lang_type != eLanguageTypeUnknown) {
+ lang_types.push_back(lang_type);
+ } else {
+ // If the language type was not specified, look up in every language
+ // available.
+ Language::ForEach([&](Language *lang) {
+ auto lang_type = lang->GetLanguageType();
+ if (!llvm::is_contained(lang_types, lang_type))
+ lang_types.push_back(lang_type);
+ return IterationAction::Continue;
+ });
+
+ if (lang_types.empty())
+ lang_types = {eLanguageTypeObjC, eLanguageTypeC_plus_plus};
+ }
+
+ std::vector<Module::LookupInfo> infos;
+ infos.reserve(lang_types.size());
+ for (LanguageType lang_type : lang_types) {
+ Module::LookupInfo info(name, name_type_mask, lang_type);
+ infos.push_back(info);
----------------
augusto2112 wrote:
Hmm apparently we can't because LookupInfo's constructor is private so
vector<LookupInfo> can't access it.
https://github.com/llvm/llvm-project/pull/168797
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits