Boost logo

Boost :

From: Jeremy Siek (jsiek_at_[hidden])
Date: 2001-03-03 16:06:40


Another variation on the named template parameters.

Instead of using :: to separate the parameters, we stick with the more
traditional comma. This requires some "type wrapper" classes, each with a
name corresponding to the template parameter.

 boost::iterator_adaptor<int*, default_iterator_policies,
    Category<std::input_iterator_tag>, Reference<int>
>

I then use a technique to turn the list of type wrappers into a
inheritance chain where each level in the chain adds a typedef such as
value_type or iterator_category. The "top" of the chain contains the
defaults. The code isn't all that complicated. I've attached it to this
email.

Cheers,
Jeremy

----------------------------------------------------------------------
 Jeremy Siek www: http://www.lsc.nd.edu/~jsiek/
 Ph.D. Candidate email: jsiek_at_[hidden]
 Univ. of Notre Dame work phone: (219) 631-3906
----------------------------------------------------------------------




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