public IOperation CreateOperation(OperationTypes operationType) { IOperation newOperation = null; switch (operationType) { case OperationTypes.Addition: newOperation = new AdditionOperation(); break; case OperationTypes.Subtraction: newOperation = new SubtractionOperation(); break; case OperationTypes.Multiplication: newOperation = new MultiplicationOperation(); break; case OperationTypes.Division: newOperation = new DivisionOperation(); break; case OperationTypes.Modulus: newOperation = new ModulusOperation(); break; case OperationTypes.Undefined: newOperation = new NullOperation(); break; } return(newOperation); }
public string Visit(NullOperation operation) { Contract.RequiresNotNull(operation, "operation != null"); return($"{Visit(operation.LeftSide)} is null"); }
private MyNull() { Calculator = NullOperation.GetInstance(); }