using System.Collections.Generic;
public static class StringBuilderExtensions
public static StringBuilder AppendFormattedLine(this StringBuilder @this, string format, params object[] args)
.AppendFormat(format, args)
public static StringBuilder AppendSequence<T>(
this StringBuilder @this,
Func<StringBuilder, T, StringBuilder> fn)
return seq.Aggregate(@this, fn);
public static void Main()
var numbers = new [] { 1, 2, 3 };
.AppendFormattedLine("Hello, {0}!", "Dave")
(sb, i) => sb.AppendFormattedLine("\tItem {0}", i))