10 #ifndef LLVM_DEBUGINFO_PDB_NATIVE_DBIMODULELIST_H 11 #define LLVM_DEBUGINFO_PDB_NATIVE_DBIMODULELIST_H 30 struct FileInfoSubstreamHeader;
34 std::random_access_iterator_tag, StringRef> {
37 std::random_access_iterator_tag,
StringRef>;
43 DbiModuleSourceFilesIterator &
44 operator=(
const DbiModuleSourceFilesIterator &R) =
default;
46 bool operator==(
const DbiModuleSourceFilesIterator &R)
const;
48 const StringRef &
operator*()
const {
return ThisValue; }
51 bool operator<(
const DbiModuleSourceFilesIterator &RHS)
const;
52 std::ptrdiff_t
operator-(
const DbiModuleSourceFilesIterator &R)
const;
53 DbiModuleSourceFilesIterator &
operator+=(std::ptrdiff_t
N);
54 DbiModuleSourceFilesIterator &
operator-=(std::ptrdiff_t N);
60 bool isCompatible(
const DbiModuleSourceFilesIterator &R)
const;
61 bool isUniversalEnd()
const;
78 uint16_t getSourceFileCount(
uint32_t Modi)
const;
101 std::vector<uint32_t> ModuleInitialFileIndex;
106 std::vector<uint32_t> ModuleDescriptorOffsets;
118 #endif // LLVM_DEBUGINFO_PDB_NATIVE_DBIMODULELIST_H DbiModuleSourceFilesIterator & operator-=(std::ptrdiff_t N)
This class represents lattice values for constants.
DbiModuleSourceFilesIterator & operator+=(std::ptrdiff_t N)
This provides a very simple, boring adaptor for a begin and end iterator into a range type...
FixedStreamArray is similar to VarStreamArray, except with each record having a fixed-length.
Tagged union holding either a T or a Error.
DbiModuleSourceFilesIterator & operator=(const DbiModuleSourceFilesIterator &R)=default
DbiModuleSourceFilesIterator()=default
CRTP base class which implements the entire standard iterator facade in terms of a minimal subset of ...
static Expected< StringRef > getFileName(const DebugStringTableSubsectionRef &Strings, const DebugChecksumsSubsectionRef &Checksums, uint32_t FileID)
bool operator==(const DbiModuleSourceFilesIterator &R) const
std::ptrdiff_t operator-(const DbiModuleSourceFilesIterator &R) const
BinaryStreamRef is to BinaryStream what ArrayRef is to an Array.
A range adaptor for a pair of iterators.
static void initialize(TargetLibraryInfoImpl &TLI, const Triple &T, ArrayRef< StringRef > StandardNames)
Initialize the set of available library functions based on the specified target triple.
const StringRef & operator*() const
Lightweight error class with error context and mandatory checking.
StringRef - Represent a constant reference to a string, i.e.
bool operator<(const DbiModuleSourceFilesIterator &RHS) const