(parser)
| 4788 | this.template = template; |
| 4789 | } |
| 4790 | static parse(parser) { |
| 4791 | var queryStart = parser.matchOpToken("<"); |
| 4792 | if (!queryStart) return; |
| 4793 | var queryTokens = parser.consumeUntil("/"); |
| 4794 | parser.requireOpToken("/"); |
| 4795 | parser.requireOpToken(">"); |
| 4796 | var queryValue = queryTokens.map(function(t) { |
| 4797 | if (t.type === "STRING") { |
| 4798 | return '"' + t.value + '"'; |
| 4799 | } else { |
| 4800 | return t.value; |
| 4801 | } |
| 4802 | }).join(""); |
| 4803 | var template, innerTokens, args; |
| 4804 | if (/\$[^=]/.test(queryValue)) { |
| 4805 | template = true; |
| 4806 | innerTokens = Tokenizer.tokenize(queryValue, true); |
| 4807 | var innerParser = parser.createChildParser(innerTokens); |
| 4808 | args = innerParser.parseStringTemplate(); |
| 4809 | } |
| 4810 | return new _QueryRef(queryValue, args, template); |
| 4811 | } |
| 4812 | resolve(context, { parts } = {}) { |
| 4813 | if (this.template) { |
| 4814 | return new TemplatedQueryElementCollection(this.css, context.me, parts, context.meta.runtime); |
nothing calls this directly
no test coverage detected