1254721Semaste//===-- DWARFCompileUnit.h --------------------------------------*- C++ -*-===// 2254721Semaste// 3353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4353358Sdim// See https://llvm.org/LICENSE.txt for license information. 5353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6254721Semaste// 7254721Semaste//===----------------------------------------------------------------------===// 8254721Semaste 9254721Semaste#ifndef SymbolFileDWARF_DWARFCompileUnit_h_ 10254721Semaste#define SymbolFileDWARF_DWARFCompileUnit_h_ 11254721Semaste 12341825Sdim#include "DWARFUnit.h" 13353358Sdim#include "llvm/Support/Error.h" 14254721Semaste 15341825Sdimclass DWARFCompileUnit : public DWARFUnit { 16254721Semastepublic: 17353358Sdim void BuildAddressRangeTable(DWARFDebugAranges *debug_aranges) override; 18353358Sdim 19341825Sdim void Dump(lldb_private::Stream *s) const override; 20254721Semaste 21353358Sdim static bool classof(const DWARFUnit *unit) { return !unit->IsTypeUnit(); } 22254721Semaste 23353358Sdimprivate: 24353358Sdim DWARFCompileUnit(SymbolFileDWARF &dwarf, lldb::user_id_t uid, 25353358Sdim const DWARFUnitHeader &header, 26353358Sdim const DWARFAbbreviationDeclarationSet &abbrevs, 27360784Sdim DIERef::Section section, bool is_dwo) 28360784Sdim : DWARFUnit(dwarf, uid, header, abbrevs, section, is_dwo) {} 29254721Semaste 30314564Sdim DISALLOW_COPY_AND_ASSIGN(DWARFCompileUnit); 31353358Sdim 32353358Sdim friend class DWARFUnit; 33254721Semaste}; 34254721Semaste 35314564Sdim#endif // SymbolFileDWARF_DWARFCompileUnit_h_ 36