File indexing completed on 2026-05-10 08:43:44
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLVM_DEBUGINFO_PDB_DIA_DIASOURCEFILE_H
0010 #define LLVM_DEBUGINFO_PDB_DIA_DIASOURCEFILE_H
0011
0012 #include "DIASupport.h"
0013 #include "llvm/DebugInfo/PDB/IPDBSourceFile.h"
0014
0015 namespace llvm {
0016 namespace pdb {
0017 class DIASession;
0018
0019 class DIASourceFile : public IPDBSourceFile {
0020 public:
0021 explicit DIASourceFile(const DIASession &Session,
0022 CComPtr<IDiaSourceFile> DiaSourceFile);
0023
0024 std::string getFileName() const override;
0025 uint32_t getUniqueId() const override;
0026 std::string getChecksum() const override;
0027 PDB_Checksum getChecksumType() const override;
0028 std::unique_ptr<IPDBEnumChildren<PDBSymbolCompiland>>
0029 getCompilands() const override;
0030
0031 CComPtr<IDiaSourceFile> getDiaFile() const { return SourceFile; }
0032
0033 private:
0034 const DIASession &Session;
0035 CComPtr<IDiaSourceFile> SourceFile;
0036 };
0037 }
0038 }
0039
0040 #endif