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"
36 virtual void anchor();
51 static std::error_code
52 get(StringRef Path, llvm::vfs::Status &Status,
bool isFile,
53 std::unique_ptr<llvm::vfs::File> *F,
60 virtual std::error_code
getStat(StringRef Path, llvm::vfs::Status &Status,
62 std::unique_ptr<llvm::vfs::File> *F,
63 llvm::vfs::FileSystem &FS) = 0;
72 llvm::StringMap<llvm::vfs::Status, llvm::BumpPtrAllocator>
StatCalls;
75 llvm::StringMap<llvm::vfs::Status,
76 llvm::BumpPtrAllocator>::const_iterator;
81 std::error_code
getStat(StringRef Path, llvm::vfs::Status &Status,
83 std::unique_ptr<llvm::vfs::File> *F,
84 llvm::vfs::FileSystem &FS)
override;
89 #endif // LLVM_CLANG_BASIC_FILESYSTEMSTATCACHE_H