@stackpress/idea-parser
Version:
Parses ideas to AST and readable JSON.
35 lines (34 loc) • 1.02 kB
JavaScript
;
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;
;