Go to the documentation of this file.
9 #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_FS_H
10 #define LLVM_CLANG_TOOLS_EXTRA_CLANGD_FS_H
13 #include "clang/Basic/LLVM.h"
14 #include "llvm/ADT/Optional.h"
15 #include "llvm/ADT/StringMap.h"
16 #include "llvm/Support/VirtualFileSystem.h"
44 void update(
const llvm::vfs::FileSystem &FS, llvm::vfs::Status S);
47 llvm::Optional<llvm::vfs::Status>
lookup(llvm::StringRef
Path)
const;
56 IntrusiveRefCntPtr<llvm::vfs::FileSystem>
62 IntrusiveRefCntPtr<llvm::vfs::FileSystem>
63 getConsumingFS(IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS)
const;
66 std::string MainFilePath;
67 llvm::StringMap<llvm::vfs::Status> StatCache;
80 #endif // LLVM_CLANG_TOOLS_EXTRA_CLANGD_FS_H
std::string Path
A typedef to represent a file path.
llvm::Optional< llvm::vfs::Status > lookup(llvm::StringRef Path) const
Path is a path stored in preamble.
IntrusiveRefCntPtr< llvm::vfs::FileSystem > getProducingFS(IntrusiveRefCntPtr< llvm::vfs::FileSystem > FS)
Returns a VFS that collects file status.
void update(const llvm::vfs::FileSystem &FS, llvm::vfs::Status S)
IntrusiveRefCntPtr< llvm::vfs::FileSystem > getConsumingFS(IntrusiveRefCntPtr< llvm::vfs::FileSystem > FS) const
Returns a VFS that uses the cache collected.
llvm::StringRef PathRef
A typedef to represent a ref to file path.
PreambleFileStatusCache(llvm::StringRef MainFilePath)
MainFilePath is the absolute path of the main source file this preamble corresponds to.
Records status information for files open()ed or stat()ed during preamble build (except for the main ...
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Path removeDots(PathRef File)
Returns a version of File that doesn't contain dots and dot dots.