ref: ad0ad265bd4ec05c365a821df171df9d60cd224d
dir: /lib/escfmt/eschtml.myr/
use std pkg escfmt = type eschtml = byte[:] const html : (s : byte[:] -> eschtml) ;; const __init__ = { var s = ("" : eschtml) std.fmtinstall(std.typeof(s), htmlfmt, [][:]) } const html = {s -> (s : eschtml) } const htmlfmt = {sb, ap, args var s : byte[:] s = std.vanext(ap) for c in std.bychar(s) match c | '&': std.sbputs(sb, "&") | '<': std.sbputs(sb, "<") | '>': std.sbputs(sb, ">") | '/': std.sbputs(sb, "/") | _: std.sbputc(sb, c) ;; ;; }