BloombergLP::bdls::FileDescriptorGuard

This class implements a guard that conditionally closes an open file descriptor upon its destruction.

Synopsis

Declared in <bdls_filedescriptorguard.h>

struct FileDescriptorGuard;

Member Functions

NameDescription
FileDescriptorGuard [constructor]Create a guard object that will manage the specified descriptor, closing it upon destruction (unless either realease or closeAndRelease has been called). It is permissible for descriptor to be FilesystemUtil::k_INVALID_FD, in which case the guard created will not manage anything.
~FileDescriptorGuard [destructor]If this guard object manages a file, close that file.
closeAndRelease Close the file managed by this guard and release that file from management by this object. The behavior is undefined unless this object is managing a file.
descriptor If this guard is managing a file, return the file descriptor referring to that file, and return FilesystemUtil::k_INVALID_FD otherwise.
release Release the file from management by this object (without closing it) and return the formerly managed descriptor. The behavior is undefined unless this object is managing a file.

Data Members

Name
d_descriptor