9 #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_INDEX_BACKGROUND_INDEX_LOADER_H 10 #define LLVM_CLANG_TOOLS_EXTRA_CLANGD_INDEX_BACKGROUND_INDEX_LOADER_H 14 #include "llvm/ADT/ArrayRef.h" 15 #include "llvm/ADT/DenseMap.h" 16 #include "llvm/ADT/Optional.h" 17 #include "llvm/ADT/StringMap.h" 18 #include "llvm/ADT/StringRef.h" 19 #include "llvm/Support/VirtualFileSystem.h" 42 std::unique_ptr<IndexFileIn>
Shard;
46 std::vector<LoadedShard>
FileDigest Digest
Digest of the source file contents that produced this shard.
llvm::unique_function< BackgroundIndexStorage *(PathRef)> Factory
Path DependentTU
Path to a TU that is depending on this shard.
std::array< uint8_t, 8 > FileDigest
Path AbsolutePath
Path of the source file that produced this shard.
bool CountReferences
Whether the RefSlab in Shard should be used for updating symbol reference counts when building an ind...
Provides compilation arguments used for parsing C and C++ files.
std::string Path
A typedef to represent a file path.
std::vector< LoadedShard > loadIndexShards(llvm::ArrayRef< Path > MainFiles, BackgroundIndexStorage::Factory &IndexStorageFactory, const GlobalCompilationDatabase &CDB)
Loads all shards for the TU MainFile from Storage.
Represents a shard loaded from storage, stores contents in Shard and metadata about the source file t...
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
bool HadErrors
Whether the indexing action producing that shard had errors.
std::unique_ptr< IndexFileIn > Shard
Will be nullptr when index storage couldn't provide a valid shard for AbsolutePath.