UNPKG

@stackpress/idea-parser

Version:

Parses ideas to AST and readable JSON.

35 lines (34 loc) 1.02 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const Lexer_js_1 = __importDefault(require("../Lexer.js")); const definitions_js_1 = __importDefault(require("../definitions.js")); class AbstractTree { static definitions(lexer) { Object.keys(definitions_js_1.default).forEach((key) => { lexer.define(key, definitions_js_1.default[key]); }); return lexer; } constructor(lexer) { this._lexer = lexer || this.constructor.definitions(new Lexer_js_1.default()); } noncode() { while (this._lexer.optional(['whitespace', 'comment', 'note'])) ; } dotry(callback) { do { try { callback(); } catch (error) { break; } } while (true); } } exports.default = AbstractTree; ;