|
Boost : |
Subject: [boost] [contract] Ready to release
From: Lorenzo Caminiti (lorcaminiti_at_[hidden])
Date: 2017-09-03 16:00:33
Hello all,
I *finally* got around finishing Boost.Contract after the library was
reviewed and accepted by Boost about 5 years ago?! (review results:
https://groups.google.com/forum/?fromgroups=#!topic/boost-list/jQ7OjAmos_Y).
Documentation: https://lcaminiti.github.io/boost-contract/doc/html/index.html
Source: https://github.com/lcaminiti/boost-contract
* All Contract Programming features (a.k.a., Design By Contract, DBC)
are supported: subcontracting, class invariants, postconditions (with
old and return values), preconditions, customizable actions on
assertion failure (terminate, throw, etc.), optional compilation of
assertions, disable assertions while already checking other assertions
(to avoid infinite recursion), etc.
* Leveraging the convenience of C++11 lambdas, this revision of the
library no longer requires "crazy" macros that alter C++ declaration
syntax. That makes the library much easier to use, faster to compile,
and generates readable compiler errors on misuse.
I was thinking to add Boost.Contract to the next, or next next, Boost release...
Thanks,
-- --Lorenzo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk