$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Hamish Mackenzie (boost_at_[hidden])
Date: 2001-11-28 11:03:13
On Wed, 2001-11-28 at 15:22, David Abrahams wrote:
> Nope. But I was thinking of a simple idiom which would help. We could make a
> simple metafunction which returns the underlying cons-list if type pass a
> type_list, or the identity otherwise. Top-level metafunctions which want to
> take advantage of specialization could pass their arguments through this
> normalizing function.
How about if the algorithms normalized their results using a template to
derived the type_list (or type_vector or whatever) from the from the
cons-list if the number of items was less or equal to MAX_TEMPLATE_ARGS
(otherwise it would return the cons-list).
If this was the case what could type_list do that type_vector can't?
I like the mpl::type_vector idea a lot it must be very fast in a lot of
cases.
> In any case, Vesa's point applies to full specialization just as to partial
> specialization. It's still a pattern match, and your pattern can /only/
> match type lists based on a particular underlying list node template.
True but it is a technique which a lot of us are familiar with and it
would be nice if it worked as expected.
Hamish