Subject: Re: [boost] [TypeErasure] Forward constructors and binded types
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2012-07-22 15:16:42


AMDG

On 07/22/2012 08:18 AM, Markus Werle wrote:
> Fabio Fracassi wrote:
>
>> Just spelling out some thoughts I had while reading the docu:
>>
>> Even though, it would help to have this information in the docu. The way
>> it is written now feels a bit like playing Jeopardy, you present
>> solutions and the reader tries to figure out the problem.
>
> I would like to add to this: I got the impression that TypeErasure is
> something really great to have - if and only if you really understand the
> problem it solves and how to solve it.
>

As far as the problem the library solves goes,
TypeErasure is a generalization of several
existing components:

Boost.Any:
any<mpl::vector<copy_constructible<>, typeid_<> > >

Boost.Function:
any<mpl::vector<copy_constructible<>, typeid_<>, callable<void(int)> > >

AnyIterator:
any<mpl::vector<forward_iterator<>,
  same_type<forward_iterator<>::value_type, int> > >

I expect that the majority of uses of the
library will be about this level of complexity.

In Christ,
Steven Watanabe