On Fri, Mar 21, 2008 at 10:52 PM, Steven Watanabe <watanabesj@gmail.com> wrote:
AMDG

Robert Dailey wrote:
> Will the plain_return_type_2 specialization also work for classes
> derived from Stream? Or do I need to specialize that structure for
> each and every single class, regardless of inheritance? Thanks.

Yes, you would need to specialize for every derived class.
The other alternative is to use an explicit return type.
http://www.boost.org/doc/html/lambda/le_in_details.html#lambda.overriding_deduced_return_type

How about Boost.Bind? Could I use it to bind my operator? I would also expect it to choose the correct overload of the stream operator depending on the type of _1. I have not used Bind like this before, so I'm not sure if it is capable. If all else fails you've given me 2 alternatives concerning Boost.Lambda, so I could always go with that.

Thanks for all the help.