While trying to read \boost\fusion adapt_struct.hpp and understand the internals of BOOST_FUSION_ADAPT_STRUCT.
I came across this code:

    namespace boost { namespace mpl  \

    {                                                      \

        template<typename> \

        struct +;    \

                                                                                \

//….

}}

 

Can  anyone please explain what “ template<typename>   struct +;    “

means here? I am puzzled how it ever compiles as an operator is used as a class name.

 

Thanks.