LLVM
8.0.1
|
Namespaces | |
detail | |
Classes | |
class | directory_entry |
A member of a directory, yielded by a directory_iterator. More... | |
class | directory_iterator |
An input iterator over the entries in a virtual path, similar to llvm::sys::fs::directory_iterator. More... | |
class | File |
Represents an open file. More... | |
class | FileSystem |
The virtual file system interface. More... | |
class | InMemoryFileSystem |
An in-memory file system. More... | |
class | OverlayFileSystem |
A file system that allows overlaying one AbstractFileSystem on top of another. More... | |
class | ProxyFileSystem |
By default, this delegates all calls to the underlying file system. More... | |
class | recursive_directory_iterator |
An input iterator over the recursive contents of a virtual path, similar to llvm::sys::fs::recursive_directory_iterator. More... | |
class | RedirectingFileSystem |
A virtual file system parsed from a YAML file. More... | |
class | RedirectingFileSystemParser |
A helper class to hold the common YAML parsing state. More... | |
class | Status |
The result of a status operation. More... | |
class | VFSFromYamlDirIterImpl |
struct | YAMLVFSEntry |
class | YAMLVFSWriter |
Functions | |
IntrusiveRefCntPtr< FileSystem > | getRealFileSystem () |
Gets an vfs::FileSystem for the 'real' file system, as seen by the operating system. More... | |
llvm::sys::fs::UniqueID | getNextVirtualUniqueID () |
Get a globally unique ID for a virtual file or directory. More... | |
IntrusiveRefCntPtr< FileSystem > | getVFSFromYAML (std::unique_ptr< llvm::MemoryBuffer > Buffer, llvm::SourceMgr::DiagHandlerTy DiagHandler, StringRef YAMLFilePath, void *DiagContext=nullptr, IntrusiveRefCntPtr< FileSystem > ExternalFS=getRealFileSystem()) |
Gets a FileSystem for a virtual file system described in YAML format. More... | |
void | collectVFSFromYAML (std::unique_ptr< llvm::MemoryBuffer > Buffer, llvm::SourceMgr::DiagHandlerTy DiagHandler, StringRef YAMLFilePath, SmallVectorImpl< YAMLVFSEntry > &CollectedEntries, void *DiagContext=nullptr, IntrusiveRefCntPtr< FileSystem > ExternalFS=getRealFileSystem()) |
Collect all pairs of <virtual path, real path> entries from the YAMLFilePath . More... | |
static ErrorOr< const detail::InMemoryNode * > | lookupInMemoryNode (const InMemoryFileSystem &FS, detail::InMemoryDirectory *Dir, const Twine &P) |
void llvm::vfs::collectVFSFromYAML | ( | std::unique_ptr< llvm::MemoryBuffer > | Buffer, |
llvm::SourceMgr::DiagHandlerTy | DiagHandler, | ||
StringRef | YAMLFilePath, | ||
SmallVectorImpl< YAMLVFSEntry > & | CollectedEntries, | ||
void * | DiagContext = nullptr , |
||
IntrusiveRefCntPtr< FileSystem > | ExternalFS = getRealFileSystem() |
||
) |
Collect all pairs of <virtual path, real path> entries from the YAMLFilePath
.
This is used by the module dependency collector to forward the entries into the reproducer output VFS YAML file.
Referenced by getVFSEntries().
UniqueID llvm::vfs::getNextVirtualUniqueID | ( | ) |
Get a globally unique ID for a virtual file or directory.
Definition at line 1798 of file VirtualFileSystem.cpp.
References llvm::max().
Referenced by llvm::vfs::InMemoryFileSystem::getCurrentWorkingDirectory().
IntrusiveRefCntPtr< FileSystem > llvm::vfs::getRealFileSystem | ( | ) |
Gets an vfs::FileSystem
for the 'real' file system, as seen by the operating system.
Definition at line 307 of file VirtualFileSystem.cpp.
References llvm::sys::fs::directory_iterator::increment(), llvm::sys::fs::directory_entry::path(), and llvm::sys::fs::directory_entry::type().
Referenced by llvm::vfs::InMemoryFileSystem::getCurrentWorkingDirectory().
IntrusiveRefCntPtr<FileSystem> llvm::vfs::getVFSFromYAML | ( | std::unique_ptr< llvm::MemoryBuffer > | Buffer, |
llvm::SourceMgr::DiagHandlerTy | DiagHandler, | ||
StringRef | YAMLFilePath, | ||
void * | DiagContext = nullptr , |
||
IntrusiveRefCntPtr< FileSystem > | ExternalFS = getRealFileSystem() |
||
) |
Gets a FileSystem
for a virtual file system described in YAML format.
Referenced by llvm::vfs::InMemoryFileSystem::getCurrentWorkingDirectory(), and llvm::vfs::RedirectingFileSystem::getRealPath().
|
static |
Definition at line 762 of file VirtualFileSystem.cpp.
References assert(), llvm::sys::path::begin(), E, llvm::SmallVectorBase::empty(), llvm::sys::path::end(), I, llvm::vfs::FileSystem::makeAbsolute(), llvm::sys::path::remove_dots(), llvm::Twine::toVector(), and llvm::vfs::InMemoryFileSystem::useNormalizedPaths().
Referenced by llvm::vfs::InMemoryFileSystem::addHardLink().