コード例 #1
0
ファイル: Add.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     dynamic r = stack.Pop();
     dynamic l = stack.Pop();
     stack.Push(l + r);
     //throw new ArgumentException(string.Format("Cannot add operands of type {0} and {1}", l.GetType().Name, r.GetType().Name));
 }
コード例 #2
0
ファイル: FunctionLabel.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     stack.Push(this);
 }
コード例 #3
0
ファイル: Read.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     Console.Write("input> ");
     stack.Push(Console.ReadLine());
 }
コード例 #4
0
ファイル: Label.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     var label = stack.Pop<string>();
     stack.Push(new FunctionLabel(label));
 }
コード例 #5
0
ファイル: Swap.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     var top = stack.Pop();
     var bottom = stack.Pop();
     stack.Push(top).Push(bottom);
 }
コード例 #6
0
ファイル: GreaterThan.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     dynamic r = stack.Pop();
     dynamic l = stack.Pop();
     stack.Push(l > r);
 }
コード例 #7
0
ファイル: Equals.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     var l = stack.Pop();
     var r = stack.Pop();
     stack.Push(l.Equals(r));
 }
コード例 #8
0
ファイル: Decrement.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     stack.Push(stack.Pop<long>() - 1);
 }
コード例 #9
0
ファイル: Dup.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     var val = stack.Pop();
     stack.Push(val).Push(val);
 }
コード例 #10
0
ファイル: BooleanLiteral.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     stack.Push(value);
 }
コード例 #11
0
ファイル: Increment.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     dynamic variable = stack.Pop();
     stack.Push(++variable);
 }
コード例 #12
0
ファイル: Grab.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     var offset = stack.Pop<long>();
     var value = stack.Peek(offset);
     stack.Push(value);
 }
コード例 #13
0
ファイル: Parse.cs プロジェクト: Baggykiin/Netstack
 public override void Execute(NetStack stack)
 {
     stack.Push(new Parser().Parse(stack.Pop<string>()));
 }