namedef fn (&void, FmtOpt, []char) nat FmtFunc,
(&void arg, FmtFunc fnc) RtFmtArg,
([]char fmt, []RtFmtArg argl) RtFmtList;
fn RtFmtList:fill_buf(self, &(nat ,) progress, []char buf)
nat
{
let .(nat fi, ai) = *progress;
defer {*progress = .{fi, ai};}
let nat bi, &char fmt = self.fmt;
// NOTE: fmt_new! checks that '{' and '}' never appear on their own,
// mandating either "{}" or escaped "{{" or "}}"
// thus, a number of usual boundary checks are not necessary
Comment too long. Click here to view the full text.