// 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) #include #include #include #include #include #include #include #include namespace hana = boost::hana; struct Person { BOOST_HANA_DEFINE_STRUCT(Person, (std::string, name), (unsigned short, age) ); }; int main() { Person john{"John", 30u}; BOOST_HANA_RUNTIME_CHECK(hana::to(john) == hana::make_map( hana::make_pair(BOOST_HANA_STRING("name"), "John"), hana::make_pair(BOOST_HANA_STRING("age"), 30u) )); }