Boost logo

Boost :

Subject: Re: [boost] [preprocessor] BOOST_PP_IS_UNARY()
From: Lorenzo Caminiti (lorcaminiti_at_[hidden])
Date: 2010-04-11 18:38:28


On Sun, Apr 4, 2010 at 11:06 AM, Lorenzo Caminiti <lorcaminiti_at_[hidden]> wrote:
> Do you know what are the drawbacks of using BOOST_PP_IS_UNARY()? If
> you have used it, what is your experience with its portability?

Can at least the authors/maintainers of Boost.Preprocessor,
Boost.Spirit, and Boost.Typeof reply based on their experience using
BOOST_PP_IS_UNARY()?

Is it OK to use BOOST_PP_UNARY() as follow?

    #define PUBLIC_public (1)
    #define IS_PUBLIC(token) BOOST_PP_IS_UNARY(BOOST_PP_CAT(PUBLIC_, token))

    IS_PUBLIC(public) // Expand to 1.
    IS_PUBLIC(xyz) // Expand to 0.

This does work just fine on both GCC and MSVC.

Thank you very much.
Lorenzo


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