|
Boost : |
From: Hugo Duncan (hugoduncan_at_[hidden])
Date: 2003-01-23 20:11:02
On Wed, 22 Jan 2003 16:25:40 -0800, "Andrei Alexandrescu" <andrewalex_at_[hidden]> wrote:
>
> inline void do_my_function(string&, void_) {}
>
> template <class Lst>
> inline void do_my_function(string& s, Lst lst)
> {
> my_function<front<Lst>::type>(s);
> do_my_function(s, pop_front<Lst>::type());
> }
> ....
> do_my_function(s, my_list());
>
This is interesting as it also gives run-time control of how much of the list
is iterated over.
eg.
template <class Lst>
inline void do_my_function(string& s, Lst lst)
{
if (!my_function<front<Lst>::type>(s))
do_my_function(s, pop_front<Lst>::type());
}
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk