LLVM
15.0.0git
|
#include "llvm/Support/VirtualFileSystem.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/IntrusiveRefCntPtr.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/Optional.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/ADT/Twine.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Chrono.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/Errc.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/ErrorOr.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/FileSystem/UniqueID.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/SMLoc.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/YAMLParser.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <atomic>
#include <cassert>
#include <cstdint>
#include <iterator>
#include <limits>
#include <memory>
#include <string>
#include <system_error>
#include <utility>
#include <vector>
Go to the source code of this file.
Classes | |
class | llvm::vfs::detail::InMemoryNode |
The in memory file system is a tree of Nodes. More... | |
class | llvm::vfs::detail::InMemoryFile |
class | llvm::vfs::detail::InMemoryDirectory |
class | llvm::vfs::RedirectingFSDirIterImpl |
Directory iterator implementation for RedirectingFileSystem's directory entries. More... | |
class | llvm::vfs::RedirectingFileSystemParser |
A helper class to hold the common YAML parsing state. More... | |
Namespaces | |
llvm | |
This is an optimization pass for GlobalISel generic memory operations. | |
llvm::vfs | |
llvm::vfs::detail | |
Enumerations | |
enum | llvm::vfs::detail::InMemoryNodeKind { llvm::vfs::detail::IME_File, llvm::vfs::detail::IME_Directory, llvm::vfs::detail::IME_HardLink } |
Functions | |
static bool | isTraversalComponent (StringRef Component) |
static bool | pathHasTraversal (StringRef Path) |
static sys::fs::UniqueID | llvm::vfs::getUniqueID (hash_code Hash) |
static sys::fs::UniqueID | llvm::vfs::getFileID (sys::fs::UniqueID Parent, llvm::StringRef Name, llvm::StringRef Contents) |
static sys::fs::UniqueID | llvm::vfs::getDirectoryID (sys::fs::UniqueID Parent, llvm::StringRef Name) |
static ErrorOr< const detail::InMemoryNode * > | llvm::vfs::lookupInMemoryNode (const InMemoryFileSystem &FS, detail::InMemoryDirectory *Dir, const Twine &P) |
static Status | getRedirectedFileStatus (const Twine &OriginalPath, bool UseExternalNames, Status ExternalStatus) |
static void | getVFSEntries (RedirectingFileSystem::Entry *SrcE, SmallVectorImpl< StringRef > &Path, SmallVectorImpl< YAMLVFSEntry > &Entries) |
|
static |
Definition at line 2163 of file VirtualFileSystem.cpp.
References llvm::vfs::Status::copyWithNewName(), llvm::vfs::Status::ExposesExternalVFSPath, and S.
Referenced by llvm::vfs::RedirectingFileSystem::openFileForRead().
|
static |
Definition at line 2416 of file VirtualFileSystem.cpp.
|
static |
Definition at line 159 of file VirtualFileSystem.cpp.
Referenced by pathHasTraversal().
|
static |
Definition at line 163 of file VirtualFileSystem.cpp.
References llvm::sys::path::begin(), llvm::sys::path::end(), isTraversalComponent(), and llvm::make_range().