libept
Public Member Functions | Static Public Member Functions | List of all members
ept::sys::File Class Reference

open(2) file descriptors More...

#include <sys.h>

Inheritance diagram for ept::sys::File:
ept::sys::NamedFileDescriptor ept::sys::FileDescriptor

Public Member Functions

 File (File &&)=default
 
 File (const File &)=delete
 
 File (const std::string &pathname, int flags, mode_t mode=0777)
 Wrapper around open(2) More...
 
 ~File ()
 The destructor closes the file descriptor, but does not check errors on ::close(). More...
 
Fileoperator= (const File &)=delete
 
Fileoperator= (File &&)=default
 
- Public Member Functions inherited from ept::sys::NamedFileDescriptor
 NamedFileDescriptor (int fd, const std::string &pathname)
 
 NamedFileDescriptor (NamedFileDescriptor &&)
 
NamedFileDescriptoroperator= (NamedFileDescriptor &&)
 
virtual void throw_error (const char *desc)
 Throw an exception based on errno and the given message. More...
 
const std::string & name () const
 Return the file pathname. More...
 
- Public Member Functions inherited from ept::sys::FileDescriptor
 FileDescriptor ()
 
 FileDescriptor (FileDescriptor &&o)
 
 FileDescriptor (int fd)
 
virtual ~FileDescriptor ()
 
void close ()
 
void fstat (struct stat &st)
 
void fchmod (mode_t mode)
 
size_t write (const void *buf, size_t count)
 
void write_all (const void *buf, size_t count)
 Write all the data in buf, retrying partial writes. More...
 
MMap mmap (size_t length, int prot, int flags, off_t offset=0)
 
 operator int () const
 

Static Public Member Functions

static File mkstemp (const std::string &prefix)
 

Additional Inherited Members

- Protected Attributes inherited from ept::sys::NamedFileDescriptor
std::string pathname
 
- Protected Attributes inherited from ept::sys::FileDescriptor
int fd = -1
 

Detailed Description

open(2) file descriptors

Constructor & Destructor Documentation

◆ File() [1/3]

ept::sys::File::File ( File &&  )
default

Referenced by mkstemp().

◆ File() [2/3]

ept::sys::File::File ( const File )
delete

◆ File() [3/3]

ept::sys::File::File ( const std::string &  pathname,
int  flags,
mode_t  mode = 0777 
)

Wrapper around open(2)

References ept::sys::FileDescriptor::fd.

◆ ~File()

ept::sys::File::~File ( )

The destructor closes the file descriptor, but does not check errors on ::close().

In normal program flow, it is a good idea to explicitly call File::close() in places where it can throw safely.

References ept::sys::FileDescriptor::close(), and ept::sys::FileDescriptor::fd.

Member Function Documentation

◆ mkstemp()

File ept::sys::File::mkstemp ( const std::string &  prefix)
static

◆ operator=() [1/2]

File& ept::sys::File::operator= ( const File )
delete

◆ operator=() [2/2]

File& ept::sys::File::operator= ( File &&  )
default

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