chainable template tag for joining a bunch of strings over many lines
| function append(separator) { | |
| return typeof separator === "string" ? appender(separator, "") : appender("", "").apply(this, arguments); | |
| } | |
| function appender(separator, s) { | |
| return function tag(literalParts, ...computedParts) { | |
| s += literalParts[0]; | |
| for (let i = 1; i < literalParts.length; ++i) { | |
| s += computedParts[i - 1] + literalParts[i]; | |
| } | |
| return function(x) { return x == null ? s : appender(separator, s + separator).apply(this, arguments); }; | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment