/// <summary> /// Returns false if the function was unhandled /// </summary> /// <param name="n"></param> /// <returns></returns> public bool HandlePredefinedFunction(FunctionNode n, bool isBaseFunction) { string functionName = isBaseFunction ? n.functionName.Substring(1) : n.functionName; switch(functionName) { case "defsub": List<Node> arguments = n.GetArguments(1); userDefinedFunctionLookup.DefineUserFunction(VerifyType<AliasNode>(arguments[0]).aliasName); return true; } return false; }