Boost logo

Boost :

Subject: [boost] [lclcontext] Any interest in Pythonesque "with-as" statement in C++.
From: Mostafa (mostafa_working_away_at_[hidden])
Date: 2015-08-16 20:33:06


I think Python's concept of Context and Context Managers useful and I've
adapted, to the best of my abilities, a similar concept in C++. For those
not familiar with this concept, I'll quote a brief snippet from the
documentation:

"Simply stated, this library enables the use of the Pythonesque
with-statement construct in C++. More
broadly, this library seeks to formalize a generalized version of a subset
of the RAII (Resource
Acquisition is Initialization) idiom that, for the lack of preexisting
terms, I shall refer here to as the
STEP (Scope Triggered Event Processing) idiom. The STEP idiom is the
commonly occurring use case
where for a given block of code some user specified action(s) must execute
on entry and on exit, and
the failure to do so will result in some deterministic behavior."

You can find the library here:

https://github.com/m-w-a/WG

Documentation is here:

https://github.com/m-w-a/WG/tree/master/Local/Docs

(In the same repository I've also redid Boost's local_function, but that
the subject of another posting.)

If there is enough interest from the community for such a library then I
will go ahead and "Boostify" it.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk