Line data Source code
1 : //===- NativeCompilandSymbol.h - native impl for compiland syms -*- C++ -*-===//
2 : //
3 : // The LLVM Compiler Infrastructure
4 : //
5 : // This file is distributed under the University of Illinois Open Source
6 : // License. See LICENSE.TXT for details.
7 : //
8 : //===----------------------------------------------------------------------===//
9 :
10 : #ifndef LLVM_DEBUGINFO_PDB_NATIVE_NATIVECOMPILANDSYMBOL_H
11 : #define LLVM_DEBUGINFO_PDB_NATIVE_NATIVECOMPILANDSYMBOL_H
12 :
13 : #include "llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h"
14 : #include "llvm/DebugInfo/PDB/Native/NativeRawSymbol.h"
15 :
16 : namespace llvm {
17 : namespace pdb {
18 :
19 200 : class NativeCompilandSymbol : public NativeRawSymbol {
20 : public:
21 : NativeCompilandSymbol(NativeSession &Session, SymIndexId SymbolId,
22 : DbiModuleDescriptor MI);
23 :
24 : std::unique_ptr<NativeRawSymbol> clone() const override;
25 :
26 : PDB_SymType getSymTag() const override;
27 : bool isEditAndContinueEnabled() const override;
28 : uint32_t getLexicalParentId() const override;
29 : std::string getLibraryName() const override;
30 : std::string getName() const override;
31 :
32 : private:
33 : DbiModuleDescriptor Module;
34 : };
35 :
36 : } // namespace pdb
37 : } // namespace llvm
38 :
39 : #endif
|