Axiom.Runtime.Instructions.PutUnsafeValueInstruction.Execute C# (CSharp) Метод

Execute() публичный Метод

public Execute ( AbstractMachineState state ) : void
state AbstractMachineState
Результат void
        public override void Execute(AbstractMachineState state)
        {
            AMProgram program = (AMProgram)state.Program;
            AMHeap heap = (AMHeap)state.DataArea;

            AbstractTerm Yn = state.E[_yn].Dereference();
            AbstractTerm Ai = (AbstractTerm)state[_ai];

            if (!IsEnvironmentVariable(Yn, state))
            {
                Ai.Assign(Yn);
            }
            else
            {
                heap.Push(new AbstractTerm());
                Yn.Bind((AbstractTerm)heap.Top());
                Ai.Assign(Yn);
            }

            program.Next();
        }