Boost logo

Boost :

From: Toon Knapen (toon.knapen_at_[hidden])
Date: 2004-09-03 01:53:35


Paul Mensonides wrote:

> Thanks Toon. Can you try this one? It is the original example with
> TUPLE_EAT(2) replaced by TUPLE_EAT_2.

et voila, see attachment

>
> ////
>
> #include <boost/preprocessor/detail/split.hpp>
> #include <boost/preprocessor/punctuation/comma.hpp>
> #include <boost/preprocessor/punctuation/paren.hpp>
> #include <boost/preprocessor/tuple/eat.hpp>
>
> #define IS_NULLARY(x) \
> BOOST_PP_SPLIT(1, IS_NULLARY_C x BOOST_PP_COMMA() 0) \
> /**/
> #define IS_NULLARY_C() \
> ~, 1 BOOST_PP_RPAREN() \
> BOOST_PP_TUPLE_EAT_2 BOOST_PP_LPAREN() ~ \
> /**/
>
> IS_NULLARY(()) // 1
> IS_NULLARY(()abc) // 1
> IS_NULLARY(+) // 0
> IS_NULLARY(xyz) // 0
>
> #define IS_UNARY(x) IS_NULLARY(IS_UNARY_C x)
> #define IS_UNARY_C(a) ()
>
> IS_UNARY((a)) // 1
> IS_UNARY((a)abc) // 1
> IS_UNARY(+) // 0
> IS_UNARY(xyz) // 0
>
> ////
>
> Regards,
> Paul Mensonides
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>


#line 14 "pp.cpp"
 1 BOOST_PP_TUPLE_EAT_2 ( ~ , 0)
 1 BOOST_PP_TUPLE_EAT_2 ( ~abc , 0)
 0
 0
#line 22
 1 BOOST_PP_TUPLE_EAT_2 ( ~ , 0)
 1 BOOST_PP_TUPLE_EAT_2 ( ~abc , 0)
 0
 0


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk