1 //===-- SymbolVendorELF.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_SymbolVendorELF_h_
11 #define liblldb_SymbolVendorELF_h_
13 #include "lldb/Symbol/SymbolVendor.h"
14 #include "lldb/lldb-private.h"
16 class SymbolVendorELF : public lldb_private::SymbolVendor {
18 //------------------------------------------------------------------
19 // Constructors and Destructors
20 //------------------------------------------------------------------
21 SymbolVendorELF(const lldb::ModuleSP &module_sp);
23 ~SymbolVendorELF() override;
25 //------------------------------------------------------------------
27 //------------------------------------------------------------------
28 static void Initialize();
30 static void Terminate();
32 static lldb_private::ConstString GetPluginNameStatic();
34 static const char *GetPluginDescriptionStatic();
36 static lldb_private::SymbolVendor *
37 CreateInstance(const lldb::ModuleSP &module_sp,
38 lldb_private::Stream *feedback_strm);
40 //------------------------------------------------------------------
41 // PluginInterface protocol
42 //------------------------------------------------------------------
43 lldb_private::ConstString GetPluginName() override;
45 uint32_t GetPluginVersion() override;
48 DISALLOW_COPY_AND_ASSIGN(SymbolVendorELF);
51 #endif // liblldb_SymbolVendorELF_h_