|
Boost Users : |
Subject: Re: [Boost-users] [boost] [type_erasure] Review started (July 18-27, 2012)
From: Sergey Mitsyn (svm_at_[hidden])
Date: 2012-08-03 17:32:03
Hello,
Just some questions:
1) Missing #include <cassert> in "boost\type_erasure\detail\storage.hpp"
2) Maybe i'm missing something, but it feels like the library doesn't
support concept function arguments an return types that contain
placeholder as a template parameter. Imagine a concept that returns
"std::pair<TIterator, TIterator>", where TIterator is another any:
template<class TIterator, class C=_self>
struct foo_concept
{
typedef std::pair<TIterator, TIterator> result_type;
static result_type apply(C& c) {
return std::make_pair(c.begin(),c.end()); }
};
Probably the problem is with detail::rebind_placeholders_in_argument.
The expected behavior is replacing 'TIterator' with something like
'std::_Vector_iterator' (or what it should be in specific case), just
like mpl::lambda replaces its mpl::_N placeholders.
Also I cannot just replace std::pair with another any - I'm trying to
match the preexisting concepts.
I've put an example into attachment.
> 5. Did you try to use the library? With what compiler? Did you have
> any problems?
MSVC 9.0
> 6. How much effort did you put into your evaluation? A glance? A
> quick reading? In-depth study?
Several hours.
> 7. Are you knowledgeable about the problem domain?
Almost no.
-- ------------ Sergey Mitsyn.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net