1//===-- SymbolFileDWARFDwoDwp.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//===----------------------------------------------------------------------===// 8 9#ifndef SymbolFileDWARFDwoDwp_SymbolFileDWARFDwoDwp_h_ 10#define SymbolFileDWARFDwoDwp_SymbolFileDWARFDwoDwp_h_ 11 12#include "SymbolFileDWARFDwo.h" 13#include "SymbolFileDWARFDwp.h" 14 15class SymbolFileDWARFDwoDwp : public SymbolFileDWARFDwo { 16 /// LLVM RTTI support. 17 static char ID; 18 19public: 20 /// LLVM RTTI support. 21 /// \{ 22 bool isA(const void *ClassID) const override { 23 return ClassID == &ID || SymbolFileDWARFDwo::isA(ClassID); 24 } 25 static bool classof(const SymbolFile *obj) { return obj->isA(&ID); } 26 /// \} 27 SymbolFileDWARFDwoDwp(SymbolFileDWARFDwp *dwp_symfile, 28 lldb::ObjectFileSP objfile, DWARFCompileUnit &dwarf_cu, 29 uint64_t dwo_id); 30 31protected: 32 void LoadSectionData(lldb::SectionType sect_type, 33 lldb_private::DWARFDataExtractor &data) override; 34 35 SymbolFileDWARFDwp *m_dwp_symfile; 36 uint64_t m_dwo_id; 37}; 38 39#endif // SymbolFileDWARFDwoDwp_SymbolFileDWARFDwoDwp_h_ 40