A templating language that looks like Lisp and compiles to HTML
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

helpers.js 511B

123456789101112131415161718192021222324
  1. const Compiler = require("../src/compiler");
  2. const Lexer = require("../src/lexer");
  3. const Parser = require("../src/parser");
  4. const scan = source => {
  5. const lexer = new Lexer();
  6. return lexer.scan(source);
  7. };
  8. const parse = source => {
  9. const parser = new Parser(scan(source));
  10. return parser.parse();
  11. };
  12. const compile = (source, context) => {
  13. const compiler = new Compiler(parse(source), context);
  14. return compiler.compile();
  15. };
  16. module.exports = {
  17. scan: scan,
  18. parse: parse,
  19. compile: compile
  20. };