libzypp 17.37.10

zypp::PathInfo Class Reference

Wrapper class for stat/lstat. More...

`#include <zypp-core/fs/PathInfo.h>`

## Public Types
enum | Mode { STAT , LSTAT }
| stat() or lstat() More...

## Public Member Functions
Construct from Pathname.
Default mode is `STAT`.
| PathInfo ()
| PathInfo (Pathname path, Mode initial=STAT)
| PathInfo (const std::string &path, Mode initial=STAT)
| PathInfo (const char *path, Mode initial=STAT)
| ~PathInfo ()
| Dtor.
const Pathname & | path () const
| Return current Pathname.
const std::string & | asString () const
| Return current Pathname as String.
const char * | c_str () const
| Return current Pathname as C-string.
Mode | mode () const
| Return current stat Mode.
int | error () const
| Return error returned from last stat/lstat call.
void | setPath (const Pathname &path)
| Set a new Pathname.
void | setMode (Mode mode)
| Set a new Mode .
bool | stat (const Pathname &path)
| STAT path.
bool | stat ()
| STAT current path.
bool | lstat (const Pathname &path)
| LSTAT path.
bool | lstat ()
| LSTAT current path.
bool | operator() (const Pathname &path)
| Restat path using current mode.
bool | operator() ()
| Restat current path using current mode.
bool | isExist () const
| Return whether valid stat info exists.
Query StatMode attibutes.
Combines zypp::PathInfo::isExist and zypp::filesystem::StatMode query. Note Mode restrictions usually do not apply to root (IamRoot).
FileType | fileType () const
bool | isFile () const
bool | isDir () const
bool | isLink () const
bool | isChr () const
bool | isBlk () const
bool | isFifo () const
bool | isSock () const
bool | isRUsr () const
bool | isWUsr () const
bool | isXUsr () const
bool | isR () const
bool | isW () const
bool | isX () const
bool | isRGrp () const
bool | isWGrp () const
bool | isXGrp () const
bool | isROth () const
bool | isWOth () const
bool | isXOth () const
bool | isUid () const
bool | isGid () const
bool | isVtx () const
bool | isPerm (mode_t m) const
bool | hasPerm (mode_t m) const
mode_t | uperm () const
mode_t | gperm () const
mode_t | operm () const
mode_t | perm () const
mode_t | st_mode () const
StatMode | asStatMode () const
| Return st_mode() as filesystem::StatMode.
nlink_t | nlink () const
Owner and group
uid_t | owner () const
gid_t | group () const
Permission according to current uid/gid.
Note Mode restrictions usually do not apply to root (IamRoot).
mode_t | userMay () const
| Returns current users permission ([0-7])
bool | userMayR () const
bool | userMayW () const
bool | userMayX () const
bool | userMayRW () const
bool | userMayRX () const
bool | userMayWX () const
bool | userMayRWX () const
Device and inode info.
ino_t | ino () const
dev_t | dev () const
dev_t | rdev () const
unsigned int | devMajor () const
unsigned int | devMinor () const
Size info.
off_t | size () const
unsigned long | blksize () const
unsigned long | blocks () const

## Friends
std::ostream & | operator<< (std::ostream &str, const PathInfo &obj)

## Related Symbols
(Note that these are not member symbols.)
std::ostream & | operator<< (std::ostream &str, const PathInfo &obj) ZYPP_API
| Stream output.

## Time stamps.
Pathname | path_t
struct stat | statbuf_C
Mode | mode_e
int | error_i
time_t | atime () const
time_t | mtime () const
time_t | ctime () const

## Detailed Description

Wrapper class for stat/lstat.

Dragged into namespace zypp.

Note
  All attribute quieries test for isExist(), and return `false` or `0`, if stat was not successful.
  For convenience PathInfo is available as zypp::PathInfo too.

Definition at line 225 of file PathInfo.h.

## Member Enumeration Documentation

## ◆ Mode

enum zypp::filesystem::PathInfo::Mode

stat() or lstat()

Enumerator
STAT |
LSTAT |

Definition at line 231 of file PathInfo.h.

## Constructor & Destructor Documentation

## ◆ PathInfo() [1/4]

zypp::filesystem::PathInfo::PathInfo | ( |  | ) |

Definition at line 131 of file PathInfo.cc.

## ◆ PathInfo() [2/4]

zypp::filesystem::PathInfo::PathInfo | ( | Pathname | path,
|  | Mode | initial = STAT )
| explicit

Definition at line 141 of file PathInfo.cc.

## ◆ PathInfo() [3/4]

zypp::filesystem::PathInfo::PathInfo | ( | const std::string & | path,
|  | Mode | initial = STAT )
| explicit

Definition at line 154 of file PathInfo.cc.

## ◆ PathInfo() [4/4]

zypp::filesystem::PathInfo::PathInfo | ( | const char * | path,
|  | Mode | initial = STAT )
| explicit

Definition at line 167 of file PathInfo.cc.

## ◆ ~PathInfo()

zypp::filesystem::PathInfo::~PathInfo | ( |  | ) |

Dtor.

Definition at line 180 of file PathInfo.cc.

## Member Function Documentation

## ◆ path()

const Pathname & zypp::filesystem::PathInfo::path | ( |  | ) | const
| inline

Return current Pathname.

Definition at line 251 of file PathInfo.h.

## ◆ asString()

const std::string & zypp::filesystem::PathInfo::asString | ( |  | ) | const
| inline

Return current Pathname as String.

Definition at line 253 of file PathInfo.h.

## ◆ c_str()

const char * zypp::filesystem::PathInfo::c_str | ( |  | ) | const
| inline

Return current Pathname as C-string.

Definition at line 255 of file PathInfo.h.

## ◆ mode()

Mode zypp::filesystem::PathInfo::mode | ( |  | ) | const
| inline

Return current stat Mode.

Definition at line 257 of file PathInfo.h.

## ◆ error()

int zypp::filesystem::PathInfo::error | ( |  | ) | const
| inline

Return error returned from last stat/lstat call.

Definition at line 259 of file PathInfo.h.

## ◆ setPath()

void zypp::filesystem::PathInfo::setPath | ( | const Pathname & | path | ) |
| inline

Set a new Pathname.

Definition at line 262 of file PathInfo.h.

## ◆ setMode()

void zypp::filesystem::PathInfo::setMode | ( | Mode | mode | ) |
| inline

Set a new Mode .

Definition at line 264 of file PathInfo.h.

## ◆ stat() [1/2]

bool zypp::filesystem::PathInfo::stat | ( | const Pathname & | path | ) |
| inline

STAT path.

Definition at line 267 of file PathInfo.h.

## ◆ stat() [2/2]

bool zypp::filesystem::PathInfo::stat | ( |  | ) |
| inline

STAT current path.

Definition at line 274 of file PathInfo.h.

## ◆ lstat() [1/2]

bool zypp::filesystem::PathInfo::lstat | ( | const Pathname & | path | ) |
| inline

LSTAT path.

Definition at line 269 of file PathInfo.h.

## ◆ lstat() [2/2]

bool zypp::filesystem::PathInfo::lstat | ( |  | ) |
| inline

LSTAT current path.

Definition at line 276 of file PathInfo.h.

## ◆ operator()() [1/2]

bool zypp::filesystem::PathInfo::operator() | ( | const Pathname & | path | ) |
| inline

Restat path using current mode.

Definition at line 271 of file PathInfo.h.

## ◆ operator()() [2/2]

bool zypp::filesystem::PathInfo::operator() | ( |  | ) |

Restat current path using current mode.

Definition at line 189 of file PathInfo.cc.

## ◆ isExist()

bool zypp::filesystem::PathInfo::isExist | ( |  | ) | const
| inline

Return whether valid stat info exists.

That's usg. whether the file exist and you had permission to stat it.

Definition at line 286 of file PathInfo.h.

## ◆ fileType()

FileType zypp::filesystem::PathInfo::fileType | ( |  | ) | const

Definition at line 213 of file PathInfo.cc.

## ◆ isFile()

bool zypp::filesystem::PathInfo::isFile | ( |  | ) | const
| inline

Definition at line 295 of file PathInfo.h.

## ◆ isDir()

bool zypp::filesystem::PathInfo::isDir | ( |  | ) | const
| inline

Definition at line 296 of file PathInfo.h.

## ◆ isLink()

bool zypp::filesystem::PathInfo::isLink | ( |  | ) | const
| inline

Definition at line 297 of file PathInfo.h.

## ◆ isChr()

bool zypp::filesystem::PathInfo::isChr | ( |  | ) | const
| inline

Definition at line 298 of file PathInfo.h.

## ◆ isBlk()

bool zypp::filesystem::PathInfo::isBlk | ( |  | ) | const
| inline

Definition at line 299 of file PathInfo.h.

## ◆ isFifo()

bool zypp::filesystem::PathInfo::isFifo | ( |  | ) | const
| inline

Definition at line 300 of file PathInfo.h.

## ◆ isSock()

bool zypp::filesystem::PathInfo::isSock | ( |  | ) | const
| inline

Definition at line 301 of file PathInfo.h.

## ◆ isRUsr()

bool zypp::filesystem::PathInfo::isRUsr | ( |  | ) | const
| inline

Definition at line 304 of file PathInfo.h.

## ◆ isWUsr()

bool zypp::filesystem::PathInfo::isWUsr | ( |  | ) | const
| inline

Definition at line 305 of file PathInfo.h.

## ◆ isXUsr()

bool zypp::filesystem::PathInfo::isXUsr | ( |  | ) | const
| inline

Definition at line 306 of file PathInfo.h.

## ◆ isR()

bool zypp::filesystem::PathInfo::isR | ( |  | ) | const
| inline

Definition at line 308 of file PathInfo.h.

## ◆ isW()

bool zypp::filesystem::PathInfo::isW | ( |  | ) | const
| inline

Definition at line 309 of file PathInfo.h.

## ◆ isX()

bool zypp::filesystem::PathInfo::isX | ( |  | ) | const
| inline

Definition at line 310 of file PathInfo.h.

## ◆ isRGrp()

bool zypp::filesystem::PathInfo::isRGrp | ( |  | ) | const
| inline

Definition at line 312 of file PathInfo.h.

## ◆ isWGrp()

bool zypp::filesystem::PathInfo::isWGrp | ( |  | ) | const
| inline

Definition at line 313 of file PathInfo.h.

## ◆ isXGrp()

bool zypp::filesystem::PathInfo::isXGrp | ( |  | ) | const
| inline

Definition at line 314 of file PathInfo.h.

## ◆ isROth()

bool zypp::filesystem::PathInfo::isROth | ( |  | ) | const
| inline

Definition at line 316 of file PathInfo.h.

## ◆ isWOth()

bool zypp::filesystem::PathInfo::isWOth | ( |  | ) | const
| inline

Definition at line 317 of file PathInfo.h.

## ◆ isXOth()

bool zypp::filesystem::PathInfo::isXOth | ( |  | ) | const
| inline

Definition at line 318 of file PathInfo.h.

## ◆ isUid()

bool zypp::filesystem::PathInfo::isUid | ( |  | ) | const
| inline

Definition at line 320 of file PathInfo.h.

## ◆ isGid()

bool zypp::filesystem::PathInfo::isGid | ( |  | ) | const
| inline

Definition at line 321 of file PathInfo.h.

## ◆ isVtx()

bool zypp::filesystem::PathInfo::isVtx | ( |  | ) | const
| inline

Definition at line 322 of file PathInfo.h.

## ◆ isPerm()

bool zypp::filesystem::PathInfo::isPerm | ( | mode_t | m | ) | const
| inline

Definition at line 324 of file PathInfo.h.

## ◆ hasPerm()

bool zypp::filesystem::PathInfo::hasPerm | ( | mode_t | m | ) | const
| inline

Definition at line 325 of file PathInfo.h.

## ◆ uperm()

mode_t zypp::filesystem::PathInfo::uperm | ( |  | ) | const
| inline

Definition at line 327 of file PathInfo.h.

## ◆ gperm()

mode_t zypp::filesystem::PathInfo::gperm | ( |  | ) | const
| inline

Definition at line 328 of file PathInfo.h.

## ◆ operm()

mode_t zypp::filesystem::PathInfo::operm | ( |  | ) | const
| inline

Definition at line 329 of file PathInfo.h.

## ◆ perm()

mode_t zypp::filesystem::PathInfo::perm | ( |  | ) | const
| inline

Definition at line 330 of file PathInfo.h.

## ◆ st_mode()

mode_t zypp::filesystem::PathInfo::st_mode | ( |  | ) | const
| inline

Definition at line 332 of file PathInfo.h.

## ◆ asStatMode()

StatMode zypp::filesystem::PathInfo::asStatMode | ( |  | ) | const
| inline

Return st_mode() as filesystem::StatMode.

Definition at line 336 of file PathInfo.h.

## ◆ nlink()

nlink_t zypp::filesystem::PathInfo::nlink | ( |  | ) | const
| inline

Definition at line 338 of file PathInfo.h.

## ◆ owner()

uid_t zypp::filesystem::PathInfo::owner | ( |  | ) | const
| inline

Definition at line 342 of file PathInfo.h.

## ◆ group()

gid_t zypp::filesystem::PathInfo::group | ( |  | ) | const
| inline

Definition at line 343 of file PathInfo.h.

## ◆ userMay()

mode_t zypp::filesystem::PathInfo::userMay | ( |  | ) | const

Returns current users permission ([0-7])

Definition at line 225 of file PathInfo.cc.

## ◆ userMayR()

bool zypp::filesystem::PathInfo::userMayR | ( |  | ) | const
| inline

Definition at line 353 of file PathInfo.h.

## ◆ userMayW()

bool zypp::filesystem::PathInfo::userMayW | ( |  | ) | const
| inline

Definition at line 354 of file PathInfo.h.

## ◆ userMayX()

bool zypp::filesystem::PathInfo::userMayX | ( |  | ) | const
| inline

Definition at line 355 of file PathInfo.h.

## ◆ userMayRW()

bool zypp::filesystem::PathInfo::userMayRW | ( |  | ) | const
| inline

Definition at line 357 of file PathInfo.h.

## ◆ userMayRX()

bool zypp::filesystem::PathInfo::userMayRX | ( |  | ) | const
| inline

Definition at line 358 of file PathInfo.h.

## ◆ userMayWX()

bool zypp::filesystem::PathInfo::userMayWX | ( |  | ) | const
| inline

Definition at line 359 of file PathInfo.h.

## ◆ userMayRWX()

bool zypp::filesystem::PathInfo::userMayRWX | ( |  | ) | const
| inline

Definition at line 361 of file PathInfo.h.

## ◆ ino()

ino_t zypp::filesystem::PathInfo::ino | ( |  | ) | const
| inline

Definition at line 366 of file PathInfo.h.

## ◆ dev()

dev_t zypp::filesystem::PathInfo::dev | ( |  | ) | const
| inline

Definition at line 367 of file PathInfo.h.

## ◆ rdev()

dev_t zypp::filesystem::PathInfo::rdev | ( |  | ) | const
| inline

Definition at line 368 of file PathInfo.h.

## ◆ devMajor()

unsigned int zypp::filesystem::PathInfo::devMajor | ( |  | ) | const

Definition at line 242 of file PathInfo.cc.

## ◆ devMinor()

unsigned int zypp::filesystem::PathInfo::devMinor | ( |  | ) | const

Definition at line 252 of file PathInfo.cc.

## ◆ size()

off_t zypp::filesystem::PathInfo::size | ( |  | ) | const
| inline

Definition at line 376 of file PathInfo.h.

## ◆ blksize()

unsigned long zypp::filesystem::PathInfo::blksize | ( |  | ) | const
| inline

Definition at line 377 of file PathInfo.h.

## ◆ blocks()

unsigned long zypp::filesystem::PathInfo::blocks | ( |  | ) | const
| inline

Definition at line 378 of file PathInfo.h.

## ◆ atime()

time_t zypp::filesystem::PathInfo::atime | ( |  | ) | const
| inline

Definition at line 383 of file PathInfo.h.

## ◆ mtime()

time_t zypp::filesystem::PathInfo::mtime | ( |  | ) | const
| inline

Definition at line 384 of file PathInfo.h.

## ◆ ctime()

time_t zypp::filesystem::PathInfo::ctime | ( |  | ) | const
| inline

Definition at line 385 of file PathInfo.h.

## Friends And Related Symbol Documentation

## ◆ operator<< [1/2]

std::ostream & operator<< | ( | std::ostream & | str,
|  | const PathInfo & | obj )
| friend

Definition at line 262 of file PathInfo.cc.

## ◆ operator<<() [2/2]

std::ostream & operator<< | ( | std::ostream & | str,
|  | const PathInfo & | obj )
| related

Stream output.

Definition at line 262 of file PathInfo.cc.

## Member Data Documentation

## ◆ path_t

Pathname zypp::filesystem::PathInfo::path_t
| private

Definition at line 389 of file PathInfo.h.

## ◆ statbuf_C

struct stat zypp::filesystem::PathInfo::statbuf_C
| private

Definition at line 390 of file PathInfo.h.

## ◆ mode_e

Mode zypp::filesystem::PathInfo::mode_e
| private

Definition at line 391 of file PathInfo.h.

## ◆ error_i

int zypp::filesystem::PathInfo::error_i
| private

Definition at line 392 of file PathInfo.h.

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

- zypp-core/fs/PathInfo.h
- zypp-core/fs/PathInfo.cc