How about appender.put() with var args?

Steven Schveighoffer via Digitalmars-d digitalmars-d at puremagic.com
Wed Apr 15 13:59:24 PDT 2015


On 4/15/15 4:51 PM, Messenger wrote:
> On Wednesday, 15 April 2015 at 19:09:42 UTC, Márcio Martins wrote:
>> Hi!
>>
>> I use Appender a lot, and find it ugly to write this all the time to
>> efficiently construct strings:
>>
>> app.put("foo");
>> app.put(var);
>> app.put("bar");
>>
>
> Sidetracking a bit, but when I started using Appender I was surprised to
> see that put didn't return a reference to the Appender itself. Had it
> done so, you could have chained your put calls very nicely.
>
> app.put("foo")
>     .put(var)
>     .put("bar")
>     .put(more)
>     .put("stuff");
>
> You can naturally write a small wrapper function that does this for you,
> but it still strikes me as odd. Sadly I imagine changing the return type
> would make the function signature mangle differently, breaking ABI
> compatibility.

with(app)
{
    put(var);
    put("bar");
    put(more);
    put("stuff");
}

-Steve


More information about the Digitalmars-d mailing list