Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/flo-bit/shapecraft. flo-bit.dev/shapecraft
Something went wrong. Try again.
1.1 kB · 45 lines
at commit da69385e
12345678910111213141516171819202122232425262728293031323334353637383940414243444546'use strict';
const types = require('../../tokenizer/types.cjs');
const name = 'Function';const walkContext = 'function';const structure = { name: String, children: [[]]};
// <function-token> <sequence> )function parse(readSequence, recognizer) { const start = this.tokenStart; const name = this.consumeFunctionName(); const nameLowerCase = name.toLowerCase(); let children;
children = recognizer.hasOwnProperty(nameLowerCase) ? recognizer[nameLowerCase].call(this, recognizer) : readSequence.call(this, recognizer);
if (!this.eof) { this.eat(types.RightParenthesis); }
return { type: 'Function', loc: this.getLocation(start, this.tokenStart), name, children };}
function generate(node) { this.token(types.Function, node.name + '('); this.children(node); this.token(types.RightParenthesis, ')');}
exports.generate = generate;exports.name = name;exports.parse = parse;exports.structure = structure;exports.walkContext = walkContext;