1 //===-- DeclVendor.h --------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_DeclVendor_h_
11 #define liblldb_DeclVendor_h_
13 #include "lldb/Core/ClangForward.h"
17 namespace lldb_private {
19 //----------------------------------------------------------------------
20 // The Decl vendor class is intended as a generic interface to search
21 // for named declarations that are not necessarily backed by a specific
23 //----------------------------------------------------------------------
27 //------------------------------------------------------------------
28 // Constructors and Destructors
29 //------------------------------------------------------------------
39 //------------------------------------------------------------------
40 /// Look up the set of Decls that the DeclVendor currently knows about
41 /// matching a given name.
44 /// The name to look for.
47 /// If true, FindDecls will clear "decls" when it starts.
49 /// @param[in] max_matches
50 /// The maximum number of Decls to return. UINT32_MAX means "as
51 /// many as possible."
54 /// The number of Decls added to decls; will not exceed
56 //------------------------------------------------------------------
58 FindDecls (const ConstString &name,
61 std::vector <clang::NamedDecl*> &decls) = 0;
64 //------------------------------------------------------------------
65 // For DeclVendor only
66 //------------------------------------------------------------------
67 DISALLOW_COPY_AND_ASSIGN (DeclVendor);
71 } // namespace lldb_private