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

Method parse

src/parsetree/expressions/webliterals.js:133–160  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

131 }
132
133 static parse(parser) {
134
135
136 var queryStart = parser.matchOpToken("<");
137 if (!queryStart) return;
138 var queryTokens = parser.consumeUntil("/");
139 parser.requireOpToken("/");
140 parser.requireOpToken(">");
141 var queryValue = queryTokens
142 .map(function (t) {
143 if (t.type === "STRING") {
144 return '"' + t.value + '"';
145 } else {
146 return t.value;
147 }
148 })
149 .join("");
150
151 var template, innerTokens, args;
152 if (/\$[^=]/.test(queryValue)) {
153 template = true;
154 innerTokens = Tokenizer.tokenize(queryValue, true);
155 var innerParser = parser.createChildParser(innerTokens);
156 args = innerParser.parseStringTemplate();
157 }
158
159 return new QueryRef(queryValue, args, template);
160 }
161
162 resolve(context, { parts } = {}) {
163 if (this.template) {

Callers

nothing calls this directly

Calls 6

matchOpTokenMethod · 0.45
consumeUntilMethod · 0.45
requireOpTokenMethod · 0.45
tokenizeMethod · 0.45
createChildParserMethod · 0.45
parseStringTemplateMethod · 0.45

Tested by

no test coverage detected