MCPcopy Create free account
hub / github.com/bigskysoftware/_hyperscript / render

Function render

www/js/_hyperscript.js:10152–10177  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

10150 }
10151 }
10152 function render() {
10153 var ctx = runtime2.makeContext(wrapper, null, wrapper, null);
10154 var buf = [];
10155 ctx.meta.__ht_template_result = buf;
10156 var tokens = tokenizer2.tokenize(source, "lines");
10157 var parser = new Parser2(kernel2, tokens);
10158 var cmds;
10159 try {
10160 cmds = parser.parseElement("commandList");
10161 parser.ensureTerminated(cmds);
10162 } catch (e) {
10163 console.error("live-template parse error:", e.message || e);
10164 return "";
10165 }
10166 cmds.execute(ctx);
10167 wrapper.__hs_scopes = ctx.meta.__ht_scopes || null;
10168 if (ctx.meta.returned || !ctx.meta.resolve) return buf.join("");
10169 var resolve;
10170 var promise = new Promise(function(r) {
10171 resolve = r;
10172 });
10173 ctx.meta.resolve = resolve;
10174 return promise.then(function() {
10175 return buf.join("");
10176 });
10177 }
10178 queueMicrotask(function() {
10179 var result = render();
10180 if (result && result.then) {

Callers 1

initLiveTemplatesFunction · 0.70

Calls 5

makeContextMethod · 0.45
tokenizeMethod · 0.45
parseElementMethod · 0.45
ensureTerminatedMethod · 0.45
executeMethod · 0.45

Tested by

no test coverage detected