Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / lldb / source / Plugins / ExpressionParser / Clang / ClangDeclVendor.h
bloba9b2d4110ab2f64acced44c0ac11ed146ced1024
1 //===-- ClangDeclVendor.h ---------------------------------------*- C++ -*-===//
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-exception
6 //
7 //===----------------------------------------------------------------------===//
9 #ifndef LLDB_SOURCE_PLUGINS_EXPRESSIONPARSER_CLANG_CLANGDECLVENDOR_H
10 #define LLDB_SOURCE_PLUGINS_EXPRESSIONPARSER_CLANG_CLANGDECLVENDOR_H
12 #include "lldb/Symbol/DeclVendor.h"
14 namespace clang {
15 class NamedDecl;
18 namespace lldb_private {
20 // A clang specialized extension to DeclVendor.
21 class ClangDeclVendor : public DeclVendor {
22 public:
23 ClangDeclVendor(DeclVendorKind kind) : DeclVendor(kind) {}
25 ~ClangDeclVendor() override = default;
27 using DeclVendor::FindDecls;
29 uint32_t FindDecls(ConstString name, bool append, uint32_t max_matches,
30 std::vector<clang::NamedDecl *> &decls);
32 static bool classof(const DeclVendor *vendor) {
33 return vendor->GetKind() >= eClangDeclVendor &&
34 vendor->GetKind() < eLastClangDeclVendor;
37 private:
38 ClangDeclVendor(const ClangDeclVendor &) = delete;
39 const ClangDeclVendor &operator=(const ClangDeclVendor &) = delete;
41 } // namespace lldb_private
43 #endif