Awesome
<!-- Copyright Barrett Adair 2016-2021 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) -->Boost.CallableTraits
CallableTraits is a standalone C++11 header-only library for the inspection, synthesis, and decomposition of callable types. Language features added in later C++ standards are also supported.
The latest documentation is available here.
CallableTraits was formally reviewed and accepted into the Boost C++ Libraries. CallableTraits is available in Boost 1.66 and later. Since CallableTraits has no dependencies, you can also download it as a standalone library here.
Licensed under the Boost Software License, Version 1.0.