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

Method parse

www/js/_hyperscript-max.js:5048–5062  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

5046 this.args = variant === "template" ? { expr: innerExpression } : null;
5047 }
5048 static parse(parser) {
5049 var elementId = parser.matchTokenType("ID_REF");
5050 if (!elementId) return;
5051 if (!elementId.value) return;
5052 if (elementId.template) {
5053 var templateValue = elementId.value.substring(2);
5054 var innerTokens = Tokenizer.tokenize(templateValue);
5055 var innerParser = parser.createChildParser(innerTokens);
5056 var innerExpression = innerParser.requireElement("expression");
5057 return new _IdRef("template", null, null, innerExpression);
5058 } else {
5059 const value = elementId.value.substring(1);
5060 return new _IdRef("static", elementId.value, value, null);
5061 }
5062 }
5063 resolve(context, { expr } = {}) {
5064 if (this.variant === "template") {
5065 return context.meta.runtime.getRootNode(context.me).getElementById(expr);

Callers

nothing calls this directly

Calls 4

matchTokenTypeMethod · 0.45
tokenizeMethod · 0.45
createChildParserMethod · 0.45
requireElementMethod · 0.45

Tested by

no test coverage detected