
On 12-11-2013 18:19, Eric Niebler wrote:
On 11/12/2013 8:38 AM, Thorsten Ottosen wrote:
On 12-11-2013 16:41, Eric Niebler wrote:
I should use EBO, but that's not the right place for it. It adds a bunch of associated namespaces to the filter_range type. Rather, the predicate and the adapted range should be in a compressed pair. I have this working locally already. The space savings are worth it: a filtered, filtered, transformed range goes from 24 bytes to 16.
Nice.
So yes, it needs to store the pred. One of my breaking changes is to allow the "filter" name to be reused such that these two are equivalent:
vec | filter(pred) filter(vec, pred)
I want this. I never liked "filtered" or the adaptors namespace.
Sounds reasonable. Your implementation looks good. regards -Thoorsten