1317017Sdim//===- NativeCompilandSymbol.h - native impl for compiland syms -*- C++ -*-===// 2317017Sdim// 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 6317017Sdim// 7317017Sdim//===----------------------------------------------------------------------===// 8317017Sdim 9317017Sdim#ifndef LLVM_DEBUGINFO_PDB_NATIVE_NATIVECOMPILANDSYMBOL_H 10317017Sdim#define LLVM_DEBUGINFO_PDB_NATIVE_NATIVECOMPILANDSYMBOL_H 11317017Sdim 12317778Sdim#include "llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h" 13317017Sdim#include "llvm/DebugInfo/PDB/Native/NativeRawSymbol.h" 14317017Sdim 15317017Sdimnamespace llvm { 16317017Sdimnamespace pdb { 17317017Sdim 18317017Sdimclass NativeCompilandSymbol : public NativeRawSymbol { 19317017Sdimpublic: 20320970Sdim NativeCompilandSymbol(NativeSession &Session, SymIndexId SymbolId, 21320397Sdim DbiModuleDescriptor MI); 22320397Sdim 23344779Sdim void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, 24344779Sdim PdbSymbolIdField RecurseIdFields) const override; 25320397Sdim 26317017Sdim PDB_SymType getSymTag() const override; 27317017Sdim bool isEditAndContinueEnabled() const override; 28344779Sdim SymIndexId getLexicalParentId() const override; 29317017Sdim std::string getLibraryName() const override; 30317017Sdim std::string getName() const override; 31317017Sdim 32317017Sdimprivate: 33317969Sdim DbiModuleDescriptor Module; 34317017Sdim}; 35317017Sdim 36317017Sdim} // namespace pdb 37317017Sdim} // namespace llvm 38317017Sdim 39317017Sdim#endif 40