Shovel.Vm.Vm.HandleFn C# (CSharp) Метод

HandleFn() статический приватный Метод

static private HandleFn ( Vm vm ) : void
vm Vm
Результат void
        static void HandleFn(Vm vm)
        {
            var instruction = vm.CurrentInstruction ();
            var args = (int[])instruction.Arguments;
            var arity = args[1];
            var hasCollectParameters = arity >= Callable.CollectParamsArityModifier;
            if (hasCollectParameters)
            {
                arity -= Callable.CollectParamsArityModifier;
            }
            var callable = new Callable () {
                ProgramCounter = args[0],
                Arity = arity,
                HasCollectParams = hasCollectParameters,
                Environment = vm.currentEnvironment
            };
            vm.stack.Push (Value.Make (callable));
            vm.IncrementCells (5);
            vm.programCounter++;
        }
Vm