Changeset 14744 for branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Expressions/StackdepthExpressions.cs
- Timestamp:
- 03/10/17 21:42:09 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Expressions/StackdepthExpressions.cs
r14733 r14744 10 10 /// <typeparam name="T">Stacktype</typeparam> 11 11 public abstract class StackdepthExpression<T> : StatelessExpression { 12 public voidEval(IStack<T> stack, IStack<long> integerStack, bool incremental = false) {12 public bool Eval(IStack<T> stack, IStack<long> integerStack, bool incremental = false) { 13 13 var count = stack.Count; 14 14 … … 16 16 17 17 integerStack.Push(count); 18 return true; 18 19 } 19 20 } … … 22 23 public class IntegerStackdepthExpression : StackdepthExpression<long> { 23 24 24 public override voidEval(IPushInterpreter interpreter) {25 Eval(interpreter.IntegerStack, interpreter.IntegerStack, true);25 public override bool Eval(IPushInterpreter interpreter) { 26 return Eval(interpreter.IntegerStack, interpreter.IntegerStack, true); 26 27 } 27 28 } … … 29 30 [PushExpression(StackType.Float, "FLOAT.STACKDEPTH")] 30 31 public class FloatStackdepthExpression : StackdepthExpression<double> { 31 public override voidEval(IPushInterpreter interpreter) {32 Eval(interpreter.FloatStack, interpreter.IntegerStack);32 public override bool Eval(IPushInterpreter interpreter) { 33 return Eval(interpreter.FloatStack, interpreter.IntegerStack); 33 34 } 34 35 } … … 36 37 [PushExpression(StackType.Boolean, "BOOLEAN.STACKDEPTH")] 37 38 public class BooleanStackdepthExpression : StackdepthExpression<bool> { 38 public override voidEval(IPushInterpreter interpreter) {39 Eval(interpreter.BooleanStack, interpreter.IntegerStack);39 public override bool Eval(IPushInterpreter interpreter) { 40 return Eval(interpreter.BooleanStack, interpreter.IntegerStack); 40 41 } 41 42 } … … 43 44 [PushExpression(StackType.Name, "NAME.STACKDEPTH")] 44 45 public class NameStackdepthExpression : StackdepthExpression<string> { 45 public override voidEval(IPushInterpreter interpreter) {46 Eval(interpreter.NameStack, interpreter.IntegerStack);46 public override bool Eval(IPushInterpreter interpreter) { 47 return Eval(interpreter.NameStack, interpreter.IntegerStack); 47 48 } 48 49 } … … 50 51 [PushExpression(StackType.Exec, "EXEC.STACKDEPTH")] 51 52 public class ExecStackdepthExpression : StackdepthExpression<Expression> { 52 public override voidEval(IPushInterpreter interpreter) {53 Eval(interpreter.ExecStack, interpreter.IntegerStack);53 public override bool Eval(IPushInterpreter interpreter) { 54 return Eval(interpreter.ExecStack, interpreter.IntegerStack); 54 55 } 55 56 } … … 57 58 [PushExpression(StackType.Code, "CODE.STACKDEPTH")] 58 59 public class CodeStackdepthExpression : StackdepthExpression<Expression> { 59 public override voidEval(IPushInterpreter interpreter) {60 Eval(interpreter.CodeStack, interpreter.IntegerStack);60 public override bool Eval(IPushInterpreter interpreter) { 61 return Eval(interpreter.CodeStack, interpreter.IntegerStack); 61 62 } 62 63 }
Note: See TracChangeset
for help on using the changeset viewer.