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