libwreport 3.36
wreport::sys::Path::iterator Struct Reference

Iterator for directory entries. More...

#include <sys.h>

Public Types

using iterator_category = std::input_iterator_tag
using value_type = struct dirent
using difference_type = int
using pointer = struct dirent*
using reference = struct dirent&

Public Member Functions

 iterator (Path &dir)
 iterator (iterator &)=delete
 iterator (iterator &&o)
iterator & operator= (iterator &)=delete
iterator & operator= (iterator &&)=delete
bool operator== (const iterator &i) const
bool operator!= (const iterator &i) const
struct dirent & operator* () const
struct dirent * operator-> () const
void operator++ ()
bool isdir () const
bool isblk () const
bool ischr () const
bool isfifo () const
bool islnk () const
bool isreg () const
bool issock () const
Path open_path (int flags=0) const
 Return a Path object for this entry.

Data Fields

Pathpath = nullptr
DIR * dir = nullptr
struct dirent * cur_entry = nullptr

Detailed Description

Iterator for directory entries.

Member Function Documentation

◆ isblk()

bool wreport::sys::Path::iterator::isblk ( ) const
Returns
true if we refer to a block device, else false

◆ ischr()

bool wreport::sys::Path::iterator::ischr ( ) const
Returns
true if we refer to a character device, else false

◆ isdir()

bool wreport::sys::Path::iterator::isdir ( ) const
Returns
true if we refer to a directory, else false

◆ isfifo()

bool wreport::sys::Path::iterator::isfifo ( ) const
Returns
true if we refer to a named pipe (FIFO).

◆ islnk()

bool wreport::sys::Path::iterator::islnk ( ) const
Returns
true if we refer to a symbolic link.

◆ isreg()

bool wreport::sys::Path::iterator::isreg ( ) const
Returns
true if we refer to a regular file.

◆ issock()

bool wreport::sys::Path::iterator::issock ( ) const
Returns
true if we refer to a Unix domain socket.

The documentation for this struct was generated from the following file: