static void Swap(WhitespaceRunner host)
        {
            int tmp  = host.wsStack.Pop();
            int tmp2 = host.wsStack.Pop();

            host.wsStack.Push(tmp);
            host.wsStack.Push(tmp2);
        }
        static void JumpNeg(WhitespaceRunner host)
        {
            int test = host.wsStack.Pop();

            if (test < 0)
            {
                host.programCounter = host.labels[host.paramVal] - 1;
            }
        }
 static void Jump(WhitespaceRunner host)
 {
     host.programCounter = host.labels[host.paramVal] - 1;
 }
 static void Call(WhitespaceRunner host)
 {
     host.callStack.Push(host.programCounter);
     host.programCounter = host.labels[host.paramVal] - 1;
 }
 static void ReadNum(WhitespaceRunner host)
 {
     host.wsHeap[host.wsStack.Pop()] = (Int32.Parse(Console.ReadLine()));
 }
 static void ReadChar(WhitespaceRunner host)
 {
     host.wsHeap[host.wsStack.Pop()] = (Console.Read());
 }
 static void OutNum(WhitespaceRunner host)
 {
     Console.Write(host.wsStack.Pop());
 }
 static void Copy(WhitespaceRunner host)
 {
     host.wsStack.Push(host.wsStack.Peek());
 }
        static void Load(WhitespaceRunner host)
        {
            int want = host.wsStack.Pop();

            host.wsStack.Push(host.wsHeap[want]);
        }
Exemple #10
0
        static void Store(WhitespaceRunner host)
        {
            int val = host.wsStack.Pop();

            host.wsHeap[host.wsStack.Pop()] = val;
        }
Exemple #11
0
        static void Mod(WhitespaceRunner host)
        {
            int tmp = host.wsStack.Pop();

            host.wsStack.Push(host.wsStack.Pop() % tmp);
        }
Exemple #12
0
 static void Mult(WhitespaceRunner host)
 {
     host.wsStack.Push(host.wsStack.Pop() * host.wsStack.Pop());
 }
Exemple #13
0
 static void Add(WhitespaceRunner host)
 {
     host.wsStack.Push(host.wsStack.Pop() + host.wsStack.Pop());
 }
Exemple #14
0
 static void Pop(WhitespaceRunner host)
 {
     host.wsStack.Pop();
 }
Exemple #15
0
 static void Ret(WhitespaceRunner host)
 {
     host.programCounter = host.callStack.Pop();
 }
Exemple #16
0
 static void OutChar(WhitespaceRunner host)
 {
     Console.Write((char)host.wsStack.Pop());
 }
Exemple #17
0
 static void End(WhitespaceRunner host)
 {
     host.finished = true;
 }
Exemple #18
0
 static void Push(WhitespaceRunner host)
 {
     host.wsStack.Push(host.paramVal);
 }