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_
15 // Other libraries and framework includes
17 #include "lldb/Symbol/SymbolVendor.h"
18 #include "lldb/lldb-private.h"
20 class SymbolVendorELF : public lldb_private::SymbolVendor {
22 //------------------------------------------------------------------
23 // Constructors and Destructors
24 //------------------------------------------------------------------
25 SymbolVendorELF(const lldb::ModuleSP &module_sp);
27 ~SymbolVendorELF() override;
29 //------------------------------------------------------------------
31 //------------------------------------------------------------------
32 static void Initialize();
34 static void Terminate();
36 static lldb_private::ConstString GetPluginNameStatic();
38 static const char *GetPluginDescriptionStatic();
40 static lldb_private::SymbolVendor *
41 CreateInstance(const lldb::ModuleSP &module_sp,
42 lldb_private::Stream *feedback_strm);
44 //------------------------------------------------------------------
45 // PluginInterface protocol
46 //------------------------------------------------------------------
47 lldb_private::ConstString GetPluginName() override;
49 uint32_t GetPluginVersion() override;
52 DISALLOW_COPY_AND_ASSIGN(SymbolVendorELF);
55 #endif // liblldb_SymbolVendorELF_h_