Boost logo

Boost :

Subject: Re: [boost] File Handle and FILE* wrappers?
From: Josh Juran (jjuran_at_[hidden])
Date: 2014-11-26 15:28:00

On Nov 26, 2014, at 11:10 AM, Olaf van der Spek <ml_at_[hidden]> wrote:

[Please don't top-post.]

> On Thu, Nov 20, 2014 at 9:10 AM, Olaf van der Spek <ml_at_[hidden]> wrote:
>> On Wed, Nov 19, 2014 at 1:47 PM, Sylvester-Bradley, Gareth
>> <Gareth.Sylvester-Bradley_at_[hidden]> wrote:
>>>> shared_ptr/unique_ptr work fine for me with FILE*, one only has to
>>>> write a deleter. A dedicated class would be needed for POSIX file
>>>> descriptors though.
>>> Peter Sommerlad and Andrew L. Sandoval's unique_resource RAII proposal uses both FILE* and POSIX file descriptors as examples.
>>> I think this is the latest revision:
>> It does solve the RAII part but it doesn't provide a standard
>> interface for native IO.
> Not many responses...
> Does noone use native IO?

I use POSIX I/O calls frequently. I adapted Lisa Lippincott and Marshall Clow's work on Nitrogen to create a library called poseven, based on the same 'nucleus' core library. p7::fd_t is an enum type for a file descriptor, and n::owned<p7::fd_t> and n::shared<p7::fd_t> are smart resources that work like unique_ptr and shared_ptr (loosely speaking) respectively. Much of it is about a decade old, early in my exposure to generic programming, though just recently I added p7::coprocess.

Let me know if you're interested in more info.



Boost list run by bdawes at, gregod at, cpdaniel at, john at