public override void execute(Interpret interpreter) { foreach (var item in sequence) { item.execute(interpreter); } }
public override void execute(Interpret interpreter) { if (expression.eval(interpreter)) { directive.executeAll(interpreter); } }
public override void execute(Interpret interpreter) { List <NumericVariable> list = interpreter.getList(listIndex.eval(interpreter)); if (list.Count > 0) { list.RemoveAt(list.Count - 1); } }
public override int eval(Interpret interpreter) { int secondVal = second.eval(interpreter); if (secondVal == 0) { return(0); } return(first.eval(interpreter) / secondVal); }
public override int eval(Interpret interpreter) { List <NumericVariable> list = interpreter.getList(listIndex.eval(interpreter)); if (list.Count == 0) { return(0); } return(list[list.Count - 1].getValue()); }
/// <summary> /// Executes this directive together with all other directives that are conected to it by "nextDirective". /// </summary> /// <param name="interpreter"></param> public virtual void executeAll(Interpret interpreter) { execute(interpreter); var nextDirective = getNextDirective(); if (nextDirective != null) { nextDirective.executeAll(interpreter); } }
public override int eval(Interpret interpreter) { int argument = experssion.eval(interpreter); if (argument < 0) { return(0); } return((int)Math.Round(Math.Sqrt(argument))); }
public override void execute(Interpret interpreter) { int counter = 0; while (expression.eval(interpreter) && counter < LoopLimit) { dir.executeAll(interpreter); counter++; } }
public override int eval(Interpret interpreter) { int limit = experssion.eval(interpreter); if (limit <= 0) { return(0); } return(r.Next(limit)); }
public override void execute(Interpret interpreter) { int limit = limitVal.eval(interpreter), counter = 0; NumericVariable v = interpreter.getNumVariable(varIndex.eval(interpreter)); while (v.getValue() < limit && counter < LoopLimit) { directive.executeAll(interpreter); v.increment(); counter++; } }
public override void execute(Interpret interpreter) { NumericVariable v = interpreter.getNumVariable(varIndex.eval(interpreter)); int listInd = interpreter.getNumVariable(listIndex.eval(interpreter)).getValue(); var list = interpreter.getList(listInd); int counter = 0; int index = 0; while (index < list.Count) { v.assign(list[index].getValue()); directive.executeAll(interpreter); index++; counter++; if (counter > LoopLimit) { break; } } }
public override int eval(Interpret interpreter) { return(interpreter.getList(listIndex.eval(interpreter)).Count); }
public override int eval(Interpret interpreter) { return(interpreter.getValueFromList(this.listIndex.eval(interpreter), this.itemIndex.eval(interpreter)).eval(interpreter)); }
public override int eval(Interpret interpreter) { return(interpreter.getNumVariable(variableIndex.eval(interpreter)).getValue()); }
public BooleanVariable getVariable(Interpret interpreter) { return(interpreter.getBoolVariable(variableIndex)); }
public NumericVariable getVariable(Interpret interpreter) { return(interpreter.getNumVariable(variableIndex)); }
public override int eval(Interpret interpreter) { int value = experssion.eval(interpreter); return(value * value); }
public override int eval(Interpret interpreter) { return((int)Math.Round(Math.Tan(experssion.eval(interpreter)))); }
public abstract int eval(Interpret interpreter);
public override int eval(Interpret interpreter) { return(interpreter.getInput(inputIndex)); }
public void assign(bool value, Interpret interpreter) { BooleanVariable var = interpreter.getBoolVariable(variableIndex); var.assign(value); }
public override bool eval(Interpret interpreter) { return(value); }
public void assign(int value, Interpret interpreter) { NumericVariable var = interpreter.getNumVariable(variableIndex); var.assign(value); }
public override bool eval(Interpret interpreter) { return(interpreter.logicalInputs[inputIndex]); }
public override bool eval(Interpret interpreter) { return(!exp.eval(interpreter)); }
public override int eval(Interpret interpreter) { return(first.eval(interpreter) * second.eval(interpreter)); }
public override bool eval(Interpret interpreter) { return(first.eval(interpreter) ^ second.eval(interpreter)); }
public override int eval(Interpret interpreter) { return(number); }
public abstract bool eval(Interpret interpreter);
public override int eval(Interpret interpreter) { return(expression.eval(interpreter) ? 1 : 0); }