
AMDG jesseperla@gmail.com wrote:
Is there a solution?
It appeared to me that the likely winner was: http://www.boost.org/doc/libs/1_37_0/doc/html/lambda/extending.html
Then it seems we would use the boost array's typedef value_type to get the return type. However, I do not see operator[] overloading in the list of supporting operators here.
That's a documentation problem. It's other_action
But the following code compiles: //Testing lambda and vectors/arrays. using lambda::_1; std::vector<Real> vec(1); vec[1] = 0; boost::function
vec_f = _1[0]; //Returns the 0'th element. Hence, it seems that this type of action is supported. Any idea where the sourcecode for the std::vector lambda operators are? might be useful to just copy/paste.
It's all in boost/lambda/detail/operator_return_type_traits.hpp
Also, I wonder if there is any way to do this generically for all vector/array types supporting the Container concept? (I use a lot of ublas::vectors). And if operator() is also supported, I use a lot of ublas::matrix as well, so this would be nice to have in lambda.
In Christ, Steven Watanabe