1 /*=============================================================================
2     Copyright (c) 2001-2009 Joel de Guzman
3     Copyright (c) 2009-2010 Hartmut Kaiser
4     Copyright (c) 2010 Christopher Schmidt
5 
6     Distributed under the Boost Software License, Version 1.0. (See accompanying
7     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 ==============================================================================*/
9 
10 #ifndef BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_NAMED_HPP
11 #define BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_NAMED_HPP
12 
13 #include <boost/fusion/support/config.hpp>
14 #include <boost/fusion/adapted/adt/adapt_adt.hpp>
15 #include <boost/fusion/adapted/struct/detail/proxy_type.hpp>
16 
17 #define BOOST_FUSION_ADAPT_ADT_NAMED_NS(                                        \
18     WRAPPED_TYPE, NAMESPACE_SEQ, NAME, ATTRIBUTES)                              \
19                                                                                 \
20     BOOST_FUSION_ADAPT_STRUCT_DEFINE_PROXY_TYPE_IMPL(                           \
21         WRAPPED_TYPE,(0)NAMESPACE_SEQ,NAME)                                     \
22                                                                                 \
23     BOOST_FUSION_ADAPT_ADT_AS_VIEW(                                             \
24         BOOST_FUSION_ADAPT_STRUCT_NAMESPACE_DECLARATION((0)NAMESPACE_SEQ)NAME,  \
25         ATTRIBUTES)
26 
27 #define BOOST_FUSION_ADAPT_ADT_NAMED(WRAPPED_TYPE, NAME, ATTRIBUTES)            \
28    BOOST_FUSION_ADAPT_ADT_NAMED_NS(                                             \
29         WRAPPED_TYPE,(boost)(fusion)(adapted),NAME,ATTRIBUTES)
30 
31 #endif
32