29 lines · cpp
1//===-- DeclVendor.cpp ----------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "lldb/Symbol/DeclVendor.h"10#include "lldb/Symbol/CompilerDecl.h"11#include "lldb/Symbol/TypeSystem.h"12 13#include <vector>14 15using namespace lldb;16using namespace lldb_private;17 18std::vector<CompilerType> DeclVendor::FindTypes(ConstString name,19 uint32_t max_matches) {20 std::vector<CompilerType> ret;21 std::vector<CompilerDecl> decls;22 if (FindDecls(name, /*append*/ true, max_matches, decls))23 for (auto decl : decls)24 if (auto type =25 decl.GetTypeSystem()->GetTypeForDecl(decl.GetOpaqueDecl()))26 ret.push_back(type);27 return ret;28}29