LLVM 20.0.0git
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
llvm::vfs::ProxyFileSystem Class Reference

By default, this delegates all calls to the underlying file system. More...

#include "llvm/Support/VirtualFileSystem.h"

Inheritance diagram for llvm::vfs::ProxyFileSystem:
Inheritance graph
[legend]

Public Member Functions

 ProxyFileSystem (IntrusiveRefCntPtr< FileSystem > FS)
 
llvm::ErrorOr< Statusstatus (const Twine &Path) override
 
bool exists (const Twine &Path) override
 
llvm::ErrorOr< std::unique_ptr< File > > openFileForRead (const Twine &Path) override
 
directory_iterator dir_begin (const Twine &Dir, std::error_code &EC) override
 
llvm::ErrorOr< std::string > getCurrentWorkingDirectory () const override
 
std::error_code setCurrentWorkingDirectory (const Twine &Path) override
 
std::error_code getRealPath (const Twine &Path, SmallVectorImpl< char > &Output) override
 
std::error_code isLocal (const Twine &Path, bool &Result) override
 
- Public Member Functions inherited from llvm::RTTIExtends< ProxyFileSystem, FileSystem >
const void * dynamicClassID () const override
 
bool isA (const void *const ClassID) const override
 

Static Public Attributes

static const char ID = 0
 

Protected Member Functions

FileSystemgetUnderlyingFS () const
 
void visitChildFileSystems (VisitCallbackTy Callback) override
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::RTTIExtends< ProxyFileSystem, FileSystem >
static const void * classID ()
 
static bool classof (const RTTIRoot *R)
 

Detailed Description

By default, this delegates all calls to the underlying file system.

This is useful when derived file systems want to override some calls and still proxy other calls.

Definition at line 438 of file VirtualFileSystem.h.

Constructor & Destructor Documentation

◆ ProxyFileSystem()

llvm::vfs::ProxyFileSystem::ProxyFileSystem ( IntrusiveRefCntPtr< FileSystem FS)
inlineexplicit

Definition at line 441 of file VirtualFileSystem.h.

Member Function Documentation

◆ dir_begin()

directory_iterator llvm::vfs::ProxyFileSystem::dir_begin ( const Twine Dir,
std::error_code &  EC 
)
inlineoverride

Definition at line 452 of file VirtualFileSystem.h.

◆ exists()

bool llvm::vfs::ProxyFileSystem::exists ( const Twine Path)
inlineoverride

Definition at line 447 of file VirtualFileSystem.h.

◆ getCurrentWorkingDirectory()

llvm::ErrorOr< std::string > llvm::vfs::ProxyFileSystem::getCurrentWorkingDirectory ( ) const
inlineoverride

Definition at line 455 of file VirtualFileSystem.h.

◆ getRealPath()

std::error_code llvm::vfs::ProxyFileSystem::getRealPath ( const Twine Path,
SmallVectorImpl< char > &  Output 
)
inlineoverride

Definition at line 461 of file VirtualFileSystem.h.

◆ getUnderlyingFS()

FileSystem & llvm::vfs::ProxyFileSystem::getUnderlyingFS ( ) const
inlineprotected

Definition at line 470 of file VirtualFileSystem.h.

◆ isLocal()

std::error_code llvm::vfs::ProxyFileSystem::isLocal ( const Twine Path,
bool Result 
)
inlineoverride

Definition at line 465 of file VirtualFileSystem.h.

◆ openFileForRead()

llvm::ErrorOr< std::unique_ptr< File > > llvm::vfs::ProxyFileSystem::openFileForRead ( const Twine Path)
inlineoverride

Definition at line 449 of file VirtualFileSystem.h.

◆ setCurrentWorkingDirectory()

std::error_code llvm::vfs::ProxyFileSystem::setCurrentWorkingDirectory ( const Twine Path)
inlineoverride

Definition at line 458 of file VirtualFileSystem.h.

◆ status()

llvm::ErrorOr< Status > llvm::vfs::ProxyFileSystem::status ( const Twine Path)
inlineoverride

Definition at line 444 of file VirtualFileSystem.h.

◆ visitChildFileSystems()

void llvm::vfs::ProxyFileSystem::visitChildFileSystems ( VisitCallbackTy  Callback)
inlineoverrideprotected

Definition at line 471 of file VirtualFileSystem.h.

Member Data Documentation

◆ ID

const char ProxyFileSystem::ID = 0
static

Definition at line 440 of file VirtualFileSystem.h.


The documentation for this class was generated from the following files: