class Status

Declaration

class Status { /* full declaration omitted */ };

Description

The result of a \p status operation.

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:48

Member Variables

private std::string Name
private llvm::sys::fs::UniqueID UID
private llvm::sys::TimePoint<> MTime
private uint32_t User
private uint32_t Group
private uint64_t Size
private llvm::sys::fs::file_type Type = llvm::sys::fs::file_type::status_error
private llvm::sys::fs::perms Perms
public bool IsVFSMapped = false
public bool ExposesExternalVFSPath = false
FIXME: Currently the external path is exposed by replacing the virtual path in this Status object. Instead, we should leave the path in the Status intact (matching the requested virtual path) - see FileManager::getFileRef for how how we plan to fix this.

Method Overview

  • public Status(const llvm::sys::fs::file_status & Status)
  • public Status(const llvm::Twine & Name, llvm::sys::fs::UniqueID UID, llvm::sys::TimePoint<> MTime, uint32_t User, uint32_t Group, uint64_t Size, llvm::sys::fs::file_type Type, llvm::sys::fs::perms Perms)
  • public Status()
  • public static llvm::vfs::Status copyWithNewName(const llvm::vfs::Status & In, const llvm::Twine & NewName)
  • public static llvm::vfs::Status copyWithNewName(const llvm::sys::fs::file_status & In, const llvm::Twine & NewName)
  • public static llvm::vfs::Status copyWithNewSize(const llvm::vfs::Status & In, uint64_t NewSize)
  • public bool equivalent(const llvm::vfs::Status & Other) const
  • public bool exists() const
  • public uint32_t getGroup() const
  • public llvm::sys::TimePoint<> getLastModificationTime() const
  • public llvm::StringRef getName() const
  • public llvm::sys::fs::perms getPermissions() const
  • public uint64_t getSize() const
  • public llvm::sys::fs::file_type getType() const
  • public llvm::sys::fs::UniqueID getUniqueID() const
  • public uint32_t getUser() const
  • public bool isDirectory() const
  • public bool isOther() const
  • public bool isRegularFile() const
  • public bool isStatusKnown() const
  • public bool isSymlink() const

Methods

Status(const llvm::sys::fs::file_status& Status)

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:74

Parameters

const llvm::sys::fs::file_status& Status

Status(const llvm::Twine& Name,
       llvm::sys::fs::UniqueID UID,
       llvm::sys::TimePoint<> MTime,
       uint32_t User,
       uint32_t Group,
       uint64_t Size,
       llvm::sys::fs::file_type Type,
       llvm::sys::fs::perms Perms)

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:75

Parameters

const llvm::Twine& Name
llvm::sys::fs::UniqueID UID
llvm::sys::TimePoint<> MTime
uint32_t User
uint32_t Group
uint64_t Size
llvm::sys::fs::file_type Type
llvm::sys::fs::perms Perms

Status()

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:73

static llvm::vfs::Status copyWithNewName(
    const llvm::vfs::Status& In,
    const llvm::Twine& NewName)

Description

Get a copy of a Status with a different name.

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:83

Parameters

const llvm::vfs::Status& In
const llvm::Twine& NewName

static llvm::vfs::Status copyWithNewName(
    const llvm::sys::fs::file_status& In,
    const llvm::Twine& NewName)

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:84

Parameters

const llvm::sys::fs::file_status& In
const llvm::Twine& NewName

static llvm::vfs::Status copyWithNewSize(
    const llvm::vfs::Status& In,
    uint64_t NewSize)

Description

Get a copy of a Status with a different size.

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:81

Parameters

const llvm::vfs::Status& In
uint64_t NewSize

bool equivalent(
    const llvm::vfs::Status& Other) const

Description

@ } These are static queries in llvm::sys::fs. @ {

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:103

Parameters

const llvm::vfs::Status& Other

bool exists() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:109

uint32_t getGroup() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:97

llvm::sys::TimePoint<> getLastModificationTime()
    const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:94

llvm::StringRef getName() const

Description

Returns the name that should be used for this file or directory.

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:88

llvm::sys::fs::perms getPermissions() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:93

uint64_t getSize() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:98

llvm::sys::fs::file_type getType() const

Description

@ {

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:92

llvm::sys::fs::UniqueID getUniqueID() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:95

uint32_t getUser() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:96

bool isDirectory() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:104

bool isOther() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:106

bool isRegularFile() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:105

bool isStatusKnown() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:108

bool isSymlink() const

Declared at: llvm/include/llvm/Support/VirtualFileSystem.h:107