Boost logo

Boost :

Subject: [boost] [RFC] CallableTraits: 47 traits and metafunctions for "callable" types
From: Barrett Adair (barrettellisadair_at_[hidden])
Date: 2016-04-18 19:12:23


Hello all,

I'm working on a project called CallableTraits [1]. Is there any interest
in adding this to Boost? I think it would work well as an extension to
Boost.TypeTraits.

>From the introduction section:

CallableTraits is a C++11/14/17 header-only library for the inspection,
synthesis, and decomposition of callable types. Whether it's calling
conventions, const volatile &&, or container-like manipulation of parameter
lists, CallableTraits provides all the tools you need to completely rid
your codebase of function type specializations. This project aims to be the
"complete type manipulation facility for function types" mentioned in the
last section of C++17 proposal p0172 [2]. CallableTraits currently supports
GCC 4.8 and later, Clang 3.5 and later, AppleClang from XCode 6.3 and
later, and MSVC 19.

Much of the remaining documentation work lies in the reference sections.
Many examples are provided, but many more are planned. Test coverage is
good, but insufficient. Daily improvements are being made to address these
issues.

The headers amount to approximately 4200 lines of code, while the tests and
examples tally around 6000 lines (excluding comments and blank lines). An
"issues" list is maintained on GitHub [3].

Barrett

[1]: http://badair.github.io/callable_traits/doc/html/index.html
[2]: http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2015/p0172r0.html
[3]: https://github.com/badair/callable_traits/issues


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