On Wednesday, 15 April 2015 at 20:59:25 UTC, Steven Schveighoffer wrote:
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

With all the excitement about chaining and ufcs, the with statement is often overlooked.

Reply via email to