Boost logo

Boost :

Subject: Re: [boost] [TypeErasure] Forward constructors and binded types
From: Vicente Botet (vicente.botet_at_[hidden])
Date: 2012-07-18 13:27:27


Steven Watanabe-4 wrote
>
> AMDG
>
> On 07/18/2012 09:54 AM, Vicente Botet wrote:
>>
>> Vicente Botet wrote
>>>
>>>
>>> Steven Watanabe-4 wrote
>>>>
>>>> AMDG
>>>>
>>>> On 07/18/2012 06:57 AM, Larry Evans wrote:
>>>>> On 07/18/12 01:29, Vicente J. Botet Escriba wrote:
>>>>>> Hi,,
>>>>>>
>>>>>> In the example from the doc
>>>>>
>>>>> http://steven_watanabe.users.sourceforge.net/type_erasure/libs/type_erasure/doc/html/boost_typeerasure/multi.html
>>>>>
>>>>>>
>>>>>> typedef mpl::vector<
>>>>>> copy_constructible<_a>,
>>>>>> copy_constructible<_b>,
>>>>>> copy_constructible<_c>,
>>>>>> constructible<_a(const _b&, const _c&)>
>>>>>> > construct;
>>>>>>
>>>>>> std::vector<double> vec;
>>>>>> int i = 10;
>>>>>> double d = 2.5;
>>>>>> tuple&lt;construct, _a&amp;, _b, _c&gt; t(vec, i, d);
>>>>>> any&lt;construct, _a&gt; v(get<1>(t), get<2>(t));
>>>>>>
>>>>>> I don't see which type is constructed and stored in v and how this
>>>>>> type
>>>>>> is given. That is I don't see how _a is binded. Could you help me?
>>>>>>
>>>>>
>>>>> <snip>
>>
>> Sorry I wanted to say, how the bind of _a to std::vector<double> *is know
>> by
>> v* if the t variable is not passed in the constructor of any?
>>
>
> Each any<> stores a complete vtable.
> i.e. any&lt;construct, _b&gt; knows what _a,
> _b, and _c all bind to.
>
>

Please, could you point me to the any constructor used in

 any<construct, _a> v(get<1>(t), get<2>(t));

Vicente

--
View this message in context: http://boost.2283326.n4.nabble.com/TypeErasure-Forward-constructors-and-binded-types-tp4633181p4633222.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

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