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

Method parse

www/js/_hyperscript-max.js:9552–9577  ·  view source on GitHub ↗
(parser)

Source from the content-addressed store, hash-verified

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