public delegate void OutputStreamWriter<T>(OutputStream ostr, in T v);
public class OutputStream
public void WriteString(in string s)
public void WriteSeq<T>(OutputStreamWriter<T> writer, T[] seq)
var ostr = new OutputStream();
var values = new string[] {"one", "two", "three" };
ostr.WriteSeq((ostr, value) => ostr.WriteString(value), values);