14 #ifndef LLVM_CLANG_BASIC_FILESYSTEMSTATCACHE_H 15 #define LLVM_CLANG_BASIC_FILESYSTEMSTATCACHE_H 18 #include "llvm/ADT/StringMap.h" 19 #include "llvm/ADT/StringRef.h" 20 #include "llvm/Support/Allocator.h" 21 #include "llvm/Support/FileSystem.h" 22 #include "llvm/Support/VirtualFileSystem.h" 35 virtual void anchor();
50 static std::error_code
51 get(StringRef Path, llvm::vfs::Status &Status,
bool isFile,
52 std::unique_ptr<llvm::vfs::File> *F,
59 virtual std::error_code
getStat(StringRef Path, llvm::vfs::Status &Status,
61 std::unique_ptr<llvm::vfs::File> *F,
62 llvm::vfs::FileSystem &FS) = 0;
71 llvm::StringMap<llvm::vfs::Status, llvm::BumpPtrAllocator>
StatCalls;
74 llvm::StringMap<llvm::vfs::Status,
75 llvm::BumpPtrAllocator>::const_iterator;
80 std::error_code
getStat(StringRef Path, llvm::vfs::Status &Status,
82 std::unique_ptr<llvm::vfs::File> *F,
83 llvm::vfs::FileSystem &FS)
override;
88 #endif // LLVM_CLANG_BASIC_FILESYSTEMSTATCACHE_H TypePropertyCache< Private > Cache
virtual ~FileSystemStatCache()=default
Abstract interface for introducing a FileManager cache for 'stat' system calls, which is used by prec...
Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified...
Dataflow Directional Tag Classes.
virtual std::error_code getStat(StringRef Path, llvm::vfs::Status &Status, bool isFile, std::unique_ptr< llvm::vfs::File > *F, llvm::vfs::FileSystem &FS)=0
llvm::StringMap< llvm::vfs::Status, llvm::BumpPtrAllocator > StatCalls
The set of stat() calls that have been seen.
A stat "cache" that can be used by FileManager to keep track of the results of stat() calls that occu...