You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.2 KiB
57 lines
1.2 KiB
5 years ago
|
namespace Calculator
|
||
|
{
|
||
|
internal class OperationElement : CalculationElement
|
||
|
{
|
||
|
public Operation Operation { get; }
|
||
|
|
||
|
public OperationElement(Operation operation)
|
||
|
{
|
||
|
Operation = operation;
|
||
|
}
|
||
|
|
||
|
public override string ToString()
|
||
|
{
|
||
|
switch (Operation)
|
||
|
{
|
||
|
case Operation.Add:
|
||
|
return "+";
|
||
|
|
||
|
case Operation.Subtract:
|
||
|
return "-";
|
||
|
|
||
|
case Operation.Muliply:
|
||
|
return "*";
|
||
|
|
||
|
case Operation.Divide:
|
||
|
return "/";
|
||
|
|
||
|
default:
|
||
|
return "Null";
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public override bool Equals(object obj)
|
||
|
{
|
||
|
return Equals(obj as OperationElement);
|
||
|
}
|
||
|
|
||
|
public bool Equals(OperationElement other)
|
||
|
{
|
||
|
return other != null &&
|
||
|
Operation == other.Operation;
|
||
|
}
|
||
|
|
||
|
public override int GetHashCode()
|
||
|
{
|
||
|
return 1706920598 + Operation.GetHashCode();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
internal enum Operation
|
||
|
{
|
||
|
Add,
|
||
|
Subtract,
|
||
|
Muliply,
|
||
|
Divide
|
||
|
}
|
||
|
}
|