MCPcopy Index your code
hub / github.com/bigskysoftware/_hyperscript / parse

Method parse

www/js/_hyperscript.js:9553–9578  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

9551 runtime2.assignToNamespace(target, nameSpace, funcName, func);
9552 }
9553 static parse(parser) {
9554 if (!parser.matchToken("def")) return;
9555 var functionName = parser.requireElement("dotOrColonPath");
9556 var nameVal = functionName.evalStatically();
9557 var nameSpace = nameVal.split(".");
9558 var funcName = nameSpace.pop();
9559 var args = [];
9560 if (parser.matchOpToken("(")) {
9561 if (parser.matchOpToken(")")) {
9562 } else {
9563 do {
9564 args.push(parser.requireTokenType("IDENTIFIER"));
9565 } while (parser.matchOpToken(","));
9566 parser.requireOpToken(")");
9567 }
9568 }
9569 var start = parser.requireElement("commandList");
9570 var { errorHandler, errorSymbol, finallyHandler } = Feature.parseErrorAndFinally(parser);
9571 var functionFeature = new _DefFeature(funcName, nameSpace, nameVal, args, start, errorHandler, errorSymbol, finallyHandler);
9572 parser.ensureTerminated(start);
9573 if (errorHandler) {
9574 parser.ensureTerminated(errorHandler);
9575 }
9576 parser.setParent(start, functionFeature);
9577 return functionFeature;
9578 }
9579 };
9580
9581 // src/parsetree/features/set.js

Callers

nothing calls this directly

Calls 9

matchTokenMethod · 0.45
requireElementMethod · 0.45
evalStaticallyMethod · 0.45
matchOpTokenMethod · 0.45
requireTokenTypeMethod · 0.45
requireOpTokenMethod · 0.45
parseErrorAndFinallyMethod · 0.45
ensureTerminatedMethod · 0.45
setParentMethod · 0.45

Tested by

no test coverage detected