コード例 #1
0
        private void CallCommand(string functionName)
        {
            var function = GetFunction(functionName);

            if (function == null)
            {
                _writer.WriteLine("Функция отсутствует в памяти");
                return;
            }

            var calledFunction = new CalledFunction(function, _position);

            _calledFunctions.Push(calledFunction);
            OnFunctionCall?.Invoke();
        }
コード例 #2
0
        private CalledFunction CallFunction(string[] args)
        {
            if (args == null)
            {
                ExecuteFuncLine();
                return(stackTrace.Peek());
            }

            if (!InputVerify(args, 2, functions))
            {
                return(null);
            }
            var calledFunc = new CalledFunction(functions[args[1]], TakeCurrentLine(), args[1]);

            stackTrace.Push(calledFunc);
            return(calledFunc);
        }