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

Name

Description

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

Created with MrDocs