#ifndef BOOST_METAPARSE_V1_IMPL_PUSH_FRONT_C_HPP #define BOOST_METAPARSE_V1_IMPL_PUSH_FRONT_C_HPP // Copyright Abel Sinkovics (abel@sinkovics.hu) 2013. // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include #include #include #include namespace boost { namespace metaparse { namespace v1 { namespace impl { template struct push_front_c; #ifdef BOOST_METAPARSE_VARIADIC_STRING template struct push_front_c, C> : string {}; #else template < BOOST_PP_ENUM_PARAMS(BOOST_METAPARSE_LIMIT_STRING_SIZE, int C), char Ch > struct push_front_c< string, Ch > : string< Ch, BOOST_PP_ENUM_PARAMS( BOOST_PP_DEC(BOOST_METAPARSE_LIMIT_STRING_SIZE), C ) > {}; #endif } } } } #endif