(type, parser, root = void 0)
| 1520 | parseElement.programSource = tokens.source; |
| 1521 | } |
| 1522 | parseElement(type, parser, root = void 0) { |
| 1523 | var elementDefinition = this.#grammar[type]; |
| 1524 | if (elementDefinition) { |
| 1525 | var tokens = parser.tokens; |
| 1526 | var start = tokens.currentToken(); |
| 1527 | var parseElement = elementDefinition(parser, root); |
| 1528 | if (parseElement) { |
| 1529 | this.initElt(parseElement, start, tokens); |
| 1530 | parseElement.endToken = parseElement.endToken || tokens.lastMatch(); |
| 1531 | var root = parseElement.root; |
| 1532 | while (root != null) { |
| 1533 | this.initElt(root, start, tokens); |
| 1534 | root = root.root; |
| 1535 | } |
| 1536 | } |
| 1537 | return parseElement; |
| 1538 | } |
| 1539 | } |
| 1540 | requireElement(type, parser, message, root) { |
| 1541 | var result = this.parseElement(type, parser, root); |
| 1542 | if (!result) parser.raiseError(message || "Expected " + type); |
no test coverage detected