On Thursday, 17 November 2016 at 16:28:08 UTC, Steven Schveighoffer wrote:
On 11/17/16 10:38 AM, John Colvin wrote:
On Thursday, 17 November 2016 at 13:59:25 UTC, Steven Schveighoffer wrote:
[...]


Can't you use a template lambda alias argument to pushTo instead, so
then you can instantiate it inside pushTo?

something like
nullStream!char
    .bufferedInput
    .pushTo!(_ => _
        .arrayCastPipe!ubyte
        .outputFile("output.txt")
    );
maybe?

I could do that. But I don't like it ;)

I don't think it's so bad, but fair enough

I will note that Adrian Matoga's flod library has a different solution that I think is similar to this, but I don't understand it very well.

I'm also concerned that using a lambda is going to confuse or prevent optimization.

Why would you think that? If we can't trust the optimiser (dmd aside) to inline a template lambda argument then phobos is totally screwed!

I think with some better naming, the push feature will look better.

-Steve

I look forward to it.

Reply via email to