|
Boost : |
From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2002-06-20 08:44:09
> I still like
>
> #define BOOST_PP_REPEAT_FILE_1 (1,15,"file.hpp")
> #include BOOST_PP_REPEAT_FILE_BODY()
>
> "repeat file" is much more descriptive than "iterate", unless you care
> about implementation details. Most users won't care that there's recursion
> in the horizontal repetition. And "repeat" is consistent with the rest of
> the lib.
>
> -Dave
Well, technically there isn't recursion is the horizontal mechanism either. :)
I used "iterate" precisely because it was inconsistent with BOOST_PP_REPEAT (and
clones). In order to use a system like this effectively, the user really has to
know what is going to happen. This typically requires a manipulation of the
source order that makes it look more like the preprocessor is executing a small
program than preprocessing text. Also, it isn't strictly necessary to generate
*text* with the mechanism. I suppose you could make some other kind of
calculation.
On this one, I like Aleksey's names better, which are the ones that I used. I
probably need to change the name of BOOST_PP_LOCAL_LIMITS though.
Tip: for lists of small things, such as those arg_tuple_size_helper-things from
a while back, it is a preferrable to the use the simpler local iteration system.
Don' underestimate the usefulness of that facility even though it doesn't have
all the full-blown capabilities of the full-blown file-iteration.
Paul Mensonides
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk