General purpose string formatter, with the following features:
1) On all Showables, show is called instead of toString
2) Exceptions raised by a show are handled by falling back to toString.
3) Sequences can be formatted using the desired separator between two % signs,
eg i"myList = (${myList}%, %)"
4) Safe handling of multi-line margins. Left margins are skipped om the parts
of the string context *before* inserting the arguments. That way, we guard
against accidentally treating an interpolated value as a margin.
General purpose string formatter, with the following features:
1) On all Showables,
show
is called instead oftoString
2) Exceptions raised by ashow
are handled by falling back totoString
. 3) Sequences can be formatted using the desired separator between two%
signs, egi"myList = (${myList}%, %)"
4) Safe handling of multi-line margins. Left margins are skipped om the parts of the string context *before* inserting the arguments. That way, we guard against accidentally treating an interpolated value as a margin.