Changeset 14744 for branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Expressions/BooleanExpressions.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/BooleanExpressions.cs
r14733 r14744 9 9 [PushExpression(StackType.Boolean, "BOOLEAN.AND")] 10 10 public class BooleanAndExpression : PushResultExpression<bool> { 11 public override voidEval(IPushInterpreter interpreter) {12 this.Eval(interpreter.BooleanStack, 2, values => values[0] && values[1]);11 public override bool Eval(IPushInterpreter interpreter) { 12 return Eval(interpreter.BooleanStack, 2, values => values[0] && values[1]); 13 13 } 14 14 } … … 19 19 [PushExpression(StackType.Boolean, "BOOLEAN.OR")] 20 20 public class BooleanOrExpression : PushResultExpression<bool> { 21 public override voidEval(IPushInterpreter interpreter) {22 this.Eval(interpreter.BooleanStack, 2, values => values[0] || values[1]);21 public override bool Eval(IPushInterpreter interpreter) { 22 return Eval(interpreter.BooleanStack, 2, values => values[0] || values[1]); 23 23 } 24 24 } … … 29 29 [PushExpression(StackType.Boolean, "BOOLEAN.NOT")] 30 30 public class BooleanNotExpression : PushResultExpression<bool> { 31 public override voidEval(IPushInterpreter interpreter) {32 this.Eval(interpreter.BooleanStack, 1, values => !values[0]);31 public override bool Eval(IPushInterpreter interpreter) { 32 return Eval(interpreter.BooleanStack, 1, values => !values[0]); 33 33 } 34 34 } … … 39 39 [PushExpression(StackType.Boolean, "BOOLEAN.FROMFLOAT")] 40 40 public class BooleanFromFloatExpression : StatelessExpression { 41 public override voidEval(IPushInterpreter interpreter) {42 if (interpreter.FloatStack.Count == 0) return ;41 public override bool Eval(IPushInterpreter interpreter) { 42 if (interpreter.FloatStack.Count == 0) return false; 43 43 44 44 var value = interpreter.FloatStack.Pop() != 0.0; 45 45 46 46 interpreter.BooleanStack.Push(value); 47 return true; 47 48 } 48 49 } … … 53 54 [PushExpression(StackType.Boolean, "BOOLEAN.FROMINTEGER")] 54 55 public class BooleanFromIntegerExpression : StatelessExpression { 55 public override voidEval(IPushInterpreter interpreter) {56 if (interpreter.IntegerStack.Count == 0) return ;56 public override bool Eval(IPushInterpreter interpreter) { 57 if (interpreter.IntegerStack.Count == 0) return false; 57 58 58 59 var value = interpreter.IntegerStack.Pop() != 0; 59 60 60 61 interpreter.BooleanStack.Push(value); 62 return true; 61 63 } 62 64 }
Note: See TracChangeset
for help on using the changeset viewer.