LLDB  mainline
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Static Private Member Functions | Private Attributes | List of all members
lldb_private::FileSystem Class Reference

#include <FileSystem.h>

Collaboration diagram for lldb_private::FileSystem:
Collaboration graph
[legend]

Public Types

enum  EnumerateDirectoryResult { eEnumerateDirectoryResultNext, eEnumerateDirectoryResultEnter, eEnumerateDirectoryResultQuit }
 
typedef EnumerateDirectoryResult(* EnumerateDirectoryCallbackType) (void *baton, llvm::sys::fs::file_type file_type, llvm::StringRef)
 
typedef std::function< EnumerateDirectoryResult(llvm::sys::fs::file_type file_type, llvm::StringRef)> DirectoryCallback
 

Public Member Functions

 FileSystem ()
 
 FileSystem (std::shared_ptr< llvm::FileCollectorBase > collector)
 
 FileSystem (llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > fs, bool mapped=false)
 
 FileSystem (const FileSystem &fs)=delete
 
FileSystemoperator= (const FileSystem &fs)=delete
 
Status Symlink (const FileSpec &src, const FileSpec &dst)
 
Status Readlink (const FileSpec &src, FileSpec &dst)
 
Status ResolveSymbolicLink (const FileSpec &src, FileSpec &dst)
 
FILE * Fopen (const char *path, const char *mode)
 Wraps ::fopen in a platform-independent way. More...
 
int Open (const char *path, int flags, int mode)
 Wraps ::open in a platform-independent way. More...
 
llvm::Expected< std::unique_ptr< File > > Open (const FileSpec &file_spec, File::OpenOptions options, uint32_t permissions=lldb::eFilePermissionsFileDefault, bool should_close_fd=true)
 
bool ResolveExecutableLocation (FileSpec &file_spec)
 Call into the Host to see if it can help find the file. More...
 
bool GetHomeDirectory (llvm::SmallVectorImpl< char > &path) const
 Get the user home directory. More...
 
bool GetHomeDirectory (FileSpec &file_spec) const
 
void EnumerateDirectory (llvm::Twine path, bool find_directories, bool find_files, bool find_other, EnumerateDirectoryCallbackType callback, void *callback_baton)
 
std::error_code GetRealPath (const llvm::Twine &path, llvm::SmallVectorImpl< char > &output) const
 
llvm::ErrorOr< std::stringGetExternalPath (const llvm::Twine &path)
 
llvm::ErrorOr< std::stringGetExternalPath (const FileSpec &file_spec)
 
llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > GetVirtualFileSystem ()
 
void Collect (const FileSpec &file_spec)
 
void Collect (const llvm::Twine &file)
 
void SetHomeDirectory (std::string home_directory)
 
llvm::vfs::directory_iterator DirBegin (const FileSpec &file_spec, std::error_code &ec)
 Get a directory iterator. More...
 
llvm::vfs::directory_iterator DirBegin (const llvm::Twine &dir, std::error_code &ec)
 
llvm::ErrorOr< llvm::vfs::Status > GetStatus (const FileSpec &file_spec) const
 Returns the Status object for the given file. More...
 
llvm::ErrorOr< llvm::vfs::Status > GetStatus (const llvm::Twine &path) const
 
llvm::sys::TimePoint GetModificationTime (const FileSpec &file_spec) const
 Returns the modification time of the given file. More...
 
llvm::sys::TimePoint GetModificationTime (const llvm::Twine &path) const
 
uint64_t GetByteSize (const FileSpec &file_spec) const
 Returns the on-disk size of the given file in bytes. More...
 
uint64_t GetByteSize (const llvm::Twine &path) const
 
uint32_t GetPermissions (const FileSpec &file_spec) const
 Return the current permissions of the given file. More...
 
uint32_t GetPermissions (const llvm::Twine &path) const
 
uint32_t GetPermissions (const FileSpec &file_spec, std::error_code &ec) const
 
uint32_t GetPermissions (const llvm::Twine &path, std::error_code &ec) const
 
bool Exists (const FileSpec &file_spec) const
 Returns whether the given file exists. More...
 
bool Exists (const llvm::Twine &path) const
 
bool Readable (const FileSpec &file_spec) const
 Returns whether the given file is readable. More...
 
bool Readable (const llvm::Twine &path) const
 
bool IsDirectory (const FileSpec &file_spec) const
 Returns whether the given path is a directory. More...
 
bool IsDirectory (const llvm::Twine &path) const
 
bool IsLocal (const FileSpec &file_spec) const
 Returns whether the given path is local to the file system. More...
 
bool IsLocal (const llvm::Twine &path) const
 
std::error_code MakeAbsolute (llvm::SmallVectorImpl< char > &path) const
 Make the given file path absolute. More...
 
std::error_code MakeAbsolute (FileSpec &file_spec) const
 
void Resolve (llvm::SmallVectorImpl< char > &path)
 Resolve path to make it canonical. More...
 
void Resolve (FileSpec &file_spec)
 
std::shared_ptr< DataBufferLLVMCreateDataBuffer (const llvm::Twine &path, uint64_t size=0, uint64_t offset=0)
 Create memory buffer from path. More...
 
std::shared_ptr< DataBufferLLVMCreateDataBuffer (const FileSpec &file_spec, uint64_t size=0, uint64_t offset=0)
 

Static Public Member Functions

static FileSystemInstance ()
 
static void Initialize ()
 
static void Initialize (std::shared_ptr< llvm::FileCollectorBase > collector)
 
static llvm::Error Initialize (const FileSpec &mapping)
 
static void Initialize (llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > fs)
 
static void Terminate ()
 

Static Public Attributes

static const char * DEV_NULL = "/dev/null"
 
static const char * PATH_CONVERSION_ERROR
 

Static Private Member Functions

static llvm::Optional< FileSystem > & InstanceImpl ()
 

Private Attributes

llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > m_fs
 
std::shared_ptr< llvm::FileCollectorBase > m_collector
 
std::string m_home_directory
 
bool m_mapped
 

Detailed Description

Definition at line 29 of file FileSystem.h.

Member Typedef Documentation

◆ DirectoryCallback

typedef std::function<EnumerateDirectoryResult( llvm::sys::fs::file_type file_type, llvm::StringRef)> lldb_private::FileSystem::DirectoryCallback

Definition at line 177 of file FileSystem.h.

◆ EnumerateDirectoryCallbackType

typedef EnumerateDirectoryResult(* lldb_private::FileSystem::EnumerateDirectoryCallbackType) (void *baton, llvm::sys::fs::file_type file_type, llvm::StringRef)

Definition at line 172 of file FileSystem.h.

Member Enumeration Documentation

◆ EnumerateDirectoryResult

Enumerator
eEnumerateDirectoryResultNext 

Enumerate next entry in the current directory.

eEnumerateDirectoryResultEnter 

Recurse into the current entry if it is a directory or symlink, or next if not.

eEnumerateDirectoryResultQuit 

Stop directory enumerations at any level.

Definition at line 162 of file FileSystem.h.

Constructor & Destructor Documentation

◆ FileSystem() [1/4]

lldb_private::FileSystem::FileSystem ( )
inline

Definition at line 34 of file FileSystem.h.

◆ FileSystem() [2/4]

lldb_private::FileSystem::FileSystem ( std::shared_ptr< llvm::FileCollectorBase >  collector)
inline

Definition at line 37 of file FileSystem.h.

◆ FileSystem() [3/4]

lldb_private::FileSystem::FileSystem ( llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem >  fs,
bool  mapped = false 
)
inline

Definition at line 40 of file FileSystem.h.

◆ FileSystem() [4/4]

lldb_private::FileSystem::FileSystem ( const FileSystem fs)
delete

Member Function Documentation

◆ Collect() [1/2]

void FileSystem::Collect ( const FileSpec file_spec)

◆ Collect() [2/2]

void FileSystem::Collect ( const llvm::Twine &  file)

Definition at line 503 of file common/FileSystem.cpp.

◆ CreateDataBuffer() [1/2]

std::shared_ptr< DataBufferLLVM > FileSystem::CreateDataBuffer ( const FileSpec file_spec,
uint64_t  size = 0,
uint64_t  offset = 0 
)

Definition at line 325 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

◆ CreateDataBuffer() [2/2]

std::shared_ptr< DataBufferLLVM > FileSystem::CreateDataBuffer ( const llvm::Twine &  path,
uint64_t  size = 0,
uint64_t  offset = 0 
)

◆ DirBegin() [1/2]

vfs::directory_iterator FileSystem::DirBegin ( const FileSpec file_spec,
std::error_code &  ec 
)

Get a directory iterator.

Definition at line 88 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

Referenced by DiskFilesOrDirectories().

◆ DirBegin() [2/2]

llvm::vfs::directory_iterator lldb_private::FileSystem::DirBegin ( const llvm::Twine &  dir,
std::error_code &  ec 
)

◆ EnumerateDirectory()

void FileSystem::EnumerateDirectory ( llvm::Twine  path,
bool  find_directories,
bool  find_files,
bool  find_other,
EnumerateDirectoryCallbackType  callback,
void *  callback_baton 
)

Definition at line 203 of file common/FileSystem.cpp.

Referenced by lldb_private::Platform::Install(), and RecurseCopy_Callback().

◆ Exists() [1/2]

bool FileSystem::Exists ( const FileSpec file_spec) const

◆ Exists() [2/2]

bool lldb_private::FileSystem::Exists ( const llvm::Twine &  path) const

◆ Fopen()

FILE * FileSystem::Fopen ( const char *  path,
const char *  mode 
)

Wraps ::fopen in a platform-independent way.

Definition at line 74 of file FileSystemPosix.cpp.

Referenced by lldb::SBDebugger::SetInputFile(), and lldb_private::Instruction::TestEmulation().

◆ GetByteSize() [1/2]

uint64_t FileSystem::GetByteSize ( const FileSpec file_spec) const

Returns the on-disk size of the given file in bytes.

Definition at line 129 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

Referenced by lldb_private::Module::GetObjectFile(), and lldb_private::ModuleSpec::ModuleSpec().

◆ GetByteSize() [2/2]

uint64_t lldb_private::FileSystem::GetByteSize ( const llvm::Twine &  path) const

◆ GetExternalPath() [1/2]

ErrorOr< std::string > FileSystem::GetExternalPath ( const FileSpec file_spec)

Definition at line 495 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

◆ GetExternalPath() [2/2]

ErrorOr< std::string > FileSystem::GetExternalPath ( const llvm::Twine &  path)

Definition at line 476 of file common/FileSystem.cpp.

References string().

◆ GetHomeDirectory() [1/2]

bool FileSystem::GetHomeDirectory ( FileSpec file_spec) const

Definition at line 371 of file common/FileSystem.cpp.

References lldb_private::FileSpec::SetPath().

◆ GetHomeDirectory() [2/2]

bool FileSystem::GetHomeDirectory ( llvm::SmallVectorImpl< char > &  path) const

Get the user home directory.

Definition at line 363 of file common/FileSystem.cpp.

Referenced by lldb_private::line_editor::EditlineHistory::GetHistoryFilePath().

◆ GetModificationTime() [1/2]

sys::TimePoint FileSystem::GetModificationTime ( const FileSpec file_spec) const

◆ GetModificationTime() [2/2]

llvm::sys::TimePoint lldb_private::FileSystem::GetModificationTime ( const llvm::Twine &  path) const

◆ GetPermissions() [1/4]

uint32_t FileSystem::GetPermissions ( const FileSpec file_spec) const

Return the current permissions of the given file.

Returns a bitmask for the current permissions of the file (zero or more of the permission bits defined in File::Permissions).

Definition at line 142 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath(), and GetPermissions().

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_Mode(), lldb_private::Platform::Install(), and lldb_private::RemoteAwarePlatform::ResolveExecutable().

◆ GetPermissions() [2/4]

uint32_t FileSystem::GetPermissions ( const FileSpec file_spec,
std::error_code &  ec 
) const

Definition at line 146 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath(), and GetPermissions().

◆ GetPermissions() [3/4]

uint32_t lldb_private::FileSystem::GetPermissions ( const llvm::Twine &  path) const

◆ GetPermissions() [4/4]

uint32_t lldb_private::FileSystem::GetPermissions ( const llvm::Twine &  path,
std::error_code &  ec 
) const

◆ GetRealPath()

std::error_code FileSystem::GetRealPath ( const llvm::Twine &  path,
llvm::SmallVectorImpl< char > &  output 
) const

Definition at line 250 of file common/FileSystem.cpp.

◆ GetStatus() [1/2]

llvm::ErrorOr< vfs::Status > FileSystem::GetStatus ( const FileSpec file_spec) const

Returns the Status object for the given file.

Definition at line 104 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

Referenced by DiskFilesOrDirectories().

◆ GetStatus() [2/2]

llvm::ErrorOr<llvm::vfs::Status> lldb_private::FileSystem::GetStatus ( const llvm::Twine &  path) const

◆ GetVirtualFileSystem()

llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> lldb_private::FileSystem::GetVirtualFileSystem ( )
inline

◆ Initialize() [1/4]

void FileSystem::Initialize ( )
static

Definition at line 47 of file common/FileSystem.cpp.

References lldbassert.

Referenced by InitializeFileSystem().

◆ Initialize() [2/4]

llvm::Error FileSystem::Initialize ( const FileSpec mapping)
static

Definition at line 57 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath(), and lldbassert.

◆ Initialize() [3/4]

static void lldb_private::FileSystem::Initialize ( llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem >  fs)
static

◆ Initialize() [4/4]

static void lldb_private::FileSystem::Initialize ( std::shared_ptr< llvm::FileCollectorBase >  collector)
static

◆ Instance()

FileSystem & FileSystem::Instance ( )
static

Definition at line 45 of file common/FileSystem.cpp.

Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo(), lldb_private::NativeProcessWindows::CacheLoadedModules(), ProcessElfCore::CanDebug(), lldb_private::ProcessWindows::CanDebug(), lldb_private::ClangExpressionParser::ClangExpressionParser(), lldb_private::SourceManager::File::CommonInitializer(), lldb_private::ComputeClangResourceDirectory(), lldb_private::HostInfoLinux::ComputeSupportExeDirectory(), lldb_private::HostInfoMacOSX::ComputeSupportExeDirectory(), lldb_private::HostInfoLinux::ComputeSystemPluginsDirectory(), lldb_private::HostInfoAndroid::ComputeTempFileBaseDirectory(), lldb_private::HostInfoMacOSX::ComputeUserPluginsDirectory(), lldb_private::ClangModulesDeclVendor::Create(), lldb_private::ScriptInterpreterIORedirect::Create(), lldb_private::TypeSystemClang::CreateASTContext(), ProcessElfCore::CreateInstance(), lldb_private::RemoteAwarePlatform::CreateSymlink(), lldb_private::TargetList::CreateTargetInternal(), DefaultComputeClangResourceDirectory(), DiskFilesOrDirectories(), lldb_private::Debugger::EnableLog(), lldb_private::Module::FileHasChanged(), lldb_private::PathMappingList::FindFile(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::FindModuleFile(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::FindModuleFile(), lldb_private::DynamicLoaderDarwin::FindTargetModuleForImageInfo(), GetEnvDeveloperDir(), lldb_private::SourceManager::GetFile(), lldb_private::OptionValueFileSpec::GetFileContents(), lldb_private::RemoteAwarePlatform::GetFileExists(), lldb_private::NativeProcessWindows::GetFileLoadAddress(), lldb_private::line_editor::EditlineHistory::GetHistoryFilePath(), lldb_private::process_netbsd::NativeProcessNetBSD::GetLoadedModuleFileSpec(), lldb_private::process_freebsd::NativeProcessFreeBSD::GetLoadedModuleFileSpec(), lldb_private::NativeProcessWindows::GetLoadedModuleFileSpec(), lldb_private::process_linux::NativeProcessLinux::GetLoadedModuleFileSpec(), lldb_private::HostProcessPosix::GetMainModule(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::GetModuleInfo(), lldb_private::Module::GetObjectFile(), lldb_private::ModuleList::GetSharedModule(), lldb_private::DynamicLoader::GetTargetExecutable(), lldb_private::Platform::GetWorkingDirectory(), lldb_private::HostInfoMacOSX::GetXcodeContentsDirectory(), lldb_private::HostInfoMacOSX::GetXcodeDeveloperDirectory(), GetXcodeSDK(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qPlatform_shell(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_Mode(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_Open(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_symlink(), lldb_private::CppModuleConfiguration::hasValidConfig(), lldb_private::ClangHighlighter::Highlight(), InitializeFileSystem(), lldb_private::Platform::Install(), lldb_private::platform_android::AdbClient::SyncService::internalPushFile(), lldb_private::REPL::IOHandlerInputComplete(), lldb_private::Process::Launch(), lldb_private::MonitoringProcessLauncher::LaunchProcess(), lldb_private::Lua::LoadModule(), lldb_private::process_gdb_remote::ProcessGDBRemote::LoadModules(), LoadPlugin(), lldb_private::ScriptInterpreterLua::LoadScriptingModule(), lldb_private::Module::LoadScriptingResourceInTarget(), lldb_private::ObjectFile::MapFileData(), lldb_private::Module::Module(), lldb_private::ModuleSpec::ModuleSpec(), lldb_private::ProcessWindows::OnDebuggerConnected(), lldb_private::process_linux::NativeProcessLinux::PopulateMemoryRegionCache(), lldb_private::Property::Property(), lldb_private::Platform::PutFile(), ReadCode(), RecurseCopy_Callback(), lldb_private::RemoteAwarePlatform::ResolveExecutable(), lldb_private::Platform::ResolveExecutable(), lldb_private::HostInfoAndroid::ResolveLibraryPath(), lldb_private::Platform::ResolveRemotePath(), lldb_private::Platform::ResolveSymbolFile(), lldb_private::Module::SetFileSpecAndObjectName(), lldb::SBDebugger::SetInputFile(), lldb_private::ProcessLaunchInfo::SetShell(), lldb_private::Module::SetSymbolFileFileSpec(), lldb_private::OptionValueFileSpec::SetValueFromString(), lldb_private::ObjectFile::SplitArchivePathWithObject(), lldb_private::process_gdb_remote::GDBRemoteCommunication::StartDebugserverProcess(), lldb_private::StreamFile::StreamFile(), lldb_private::Instruction::TestEmulation(), lldb_private::SourceManager::File::UpdateIfNeeded(), and VerifyClangPath().

◆ InstanceImpl()

Optional< FileSystem > & FileSystem::InstanceImpl ( )
staticprivate

Definition at line 83 of file common/FileSystem.cpp.

◆ IsDirectory() [1/2]

bool FileSystem::IsDirectory ( const FileSpec file_spec) const

Returns whether the given path is a directory.

Definition at line 189 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

Referenced by DiskFilesOrDirectories().

◆ IsDirectory() [2/2]

bool lldb_private::FileSystem::IsDirectory ( const llvm::Twine &  path) const

◆ IsLocal() [1/2]

bool FileSystem::IsLocal ( const FileSpec file_spec) const

Returns whether the given path is local to the file system.

Definition at line 199 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

◆ IsLocal() [2/2]

bool lldb_private::FileSystem::IsLocal ( const llvm::Twine &  path) const

◆ MakeAbsolute() [1/2]

std::error_code FileSystem::MakeAbsolute ( FileSpec file_spec) const

◆ MakeAbsolute() [2/2]

std::error_code FileSystem::MakeAbsolute ( llvm::SmallVectorImpl< char > &  path) const

Make the given file path absolute.

Definition at line 233 of file common/FileSystem.cpp.

◆ Open() [1/2]

int FileSystem::Open ( const char *  path,
int  flags,
int  mode 
)

◆ Open() [2/2]

Expected< FileUP > FileSystem::Open ( const FileSpec file_spec,
File::OpenOptions  options,
uint32_t  permissions = lldb::eFilePermissionsFileDefault,
bool  should_close_fd = true 
)

◆ operator=()

FileSystem& lldb_private::FileSystem::operator= ( const FileSystem fs)
delete

◆ Readable() [1/2]

bool FileSystem::Readable ( const FileSpec file_spec) const

Returns whether the given file is readable.

Definition at line 178 of file common/FileSystem.cpp.

References lldb_private::FileSpec::GetPath().

◆ Readable() [2/2]

bool lldb_private::FileSystem::Readable ( const llvm::Twine &  path) const

◆ Readlink()

Status FileSystem::Readlink ( const FileSpec src,
FileSpec dst 
)

◆ Resolve() [1/2]

void FileSystem::Resolve ( FileSpec file_spec)

◆ Resolve() [2/2]

void FileSystem::Resolve ( llvm::SmallVectorImpl< char > &  path)

Resolve path to make it canonical.

Definition at line 255 of file common/FileSystem.cpp.

References MakeAbsolute(), and lldb_private::TildeExpressionResolver::ResolveFullPath().

Referenced by lldb_private::process_gdb_remote::ProcessGDBRemote::BuildDynamicRegisterInfo(), lldb_private::NativeProcessWindows::CacheLoadedModules(), lldb_private::ComputeClangResourceDirectory(), lldb_private::HostInfoMacOSX::ComputeSupportExeDirectory(), lldb_private::HostInfoLinux::ComputeSystemPluginsDirectory(), lldb_private::HostInfoMacOSX::ComputeUserPluginsDirectory(), DefaultComputeClangResourceDirectory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::FindModuleFile(), lldb_private::NativeProcessWindows::GetFileLoadAddress(), lldb_private::process_netbsd::NativeProcessNetBSD::GetLoadedModuleFileSpec(), lldb_private::process_freebsd::NativeProcessFreeBSD::GetLoadedModuleFileSpec(), lldb_private::NativeProcessWindows::GetLoadedModuleFileSpec(), lldb_private::process_linux::NativeProcessLinux::GetLoadedModuleFileSpec(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::GetModuleInfo(), lldb_private::ModuleList::GetSharedModule(), lldb_private::Platform::GetWorkingDirectory(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qPlatform_shell(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_Mode(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_Open(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_vFile_symlink(), lldb_private::MonitoringProcessLauncher::LaunchProcess(), lldb_private::process_gdb_remote::ProcessGDBRemote::LoadModules(), lldb_private::ProcessWindows::OnDebuggerConnected(), lldb_private::process_linux::NativeProcessLinux::PopulateMemoryRegionCache(), lldb_private::Property::Property(), lldb_private::RemoteAwarePlatform::ResolveExecutable(), lldb_private::HostInfoAndroid::ResolveLibraryPath(), lldb_private::Platform::ResolveRemotePath(), and lldb_private::OptionValueFileSpec::SetValueFromString().

◆ ResolveExecutableLocation()

bool FileSystem::ResolveExecutableLocation ( FileSpec file_spec)

◆ ResolveSymbolicLink()

Status FileSystem::ResolveSymbolicLink ( const FileSpec src,
FileSpec dst 
)

◆ SetHomeDirectory()

void FileSystem::SetHomeDirectory ( std::string  home_directory)

Definition at line 513 of file common/FileSystem.cpp.

Referenced by InitializeFileSystem().

◆ Symlink()

Status FileSystem::Symlink ( const FileSpec src,
const FileSpec dst 
)

◆ Terminate()

void FileSystem::Terminate ( )
static

Definition at line 78 of file common/FileSystem.cpp.

References lldbassert.

Referenced by lldb_private::SystemInitializerCommon::Terminate().

Member Data Documentation

◆ DEV_NULL

const char * FileSystem::DEV_NULL = "/dev/null"
static

◆ m_collector

std::shared_ptr<llvm::FileCollectorBase> lldb_private::FileSystem::m_collector
private

Definition at line 202 of file FileSystem.h.

◆ m_fs

llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> lldb_private::FileSystem::m_fs
private

Definition at line 201 of file FileSystem.h.

Referenced by GetVirtualFileSystem().

◆ m_home_directory

std::string lldb_private::FileSystem::m_home_directory
private

Definition at line 203 of file FileSystem.h.

◆ m_mapped

bool lldb_private::FileSystem::m_mapped
private

Definition at line 204 of file FileSystem.h.

◆ PATH_CONVERSION_ERROR

const char * FileSystem::PATH_CONVERSION_ERROR
static
Initial value:
=
"Error converting path between UTF-8 and native encoding"

Definition at line 32 of file FileSystem.h.


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