| Boost.Hana 1.7.1 Your standard library for metaprogramming |

Namespaces | Macros
struct_macros.hpp File Reference

Defines the `BOOST_HANA_DEFINE_STRUCT`, `BOOST_HANA_ADAPT_STRUCT`, and `BOOST_HANA_ADAPT_ADT` macros. More...

## Namespaces
| boost::hana
| Namespace containing everything in the library.

## Macros
#define | BOOST_HANA_PP_NARG(...) BOOST_HANA_PP_NARG_IMPL(__VA_ARGS__, 40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,)
| Macro expanding to the number of arguments it is passed. More...
#define | BOOST_HANA_PP_BACK(...) BOOST_HANA_PP_BACK_IMPL(BOOST_HANA_PP_NARG(__VA_ARGS__), __VA_ARGS__)
| Expands to its last argument.
#define | BOOST_HANA_PP_DROP_BACK(...) BOOST_HANA_PP_DROP_BACK_IMPL(BOOST_HANA_PP_NARG(__VA_ARGS__), __VA_ARGS__)
| Expands to all of its arguments, except for the last one.

## Detailed Description

Defines the `BOOST_HANA_DEFINE_STRUCT`, `BOOST_HANA_ADAPT_STRUCT`, and `BOOST_HANA_ADAPT_ADT` macros.

Copyright
  Louis Dionne 2013-2017 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)