Replace Operand with Operator
This commit is contained in:
parent
17020fcab4
commit
7c3ba17a36
|
@ -1,4 +1,4 @@
|
||||||
enum Operand {
|
enum Operator {
|
||||||
case add
|
case add
|
||||||
case sub
|
case sub
|
||||||
case mul
|
case mul
|
|
@ -5,7 +5,7 @@ struct ViewModel {
|
||||||
private var numberBuffer: String = ""
|
private var numberBuffer: String = ""
|
||||||
private var number1: Double? = nil
|
private var number1: Double? = nil
|
||||||
private var number2: Double? = nil
|
private var number2: Double? = nil
|
||||||
private var operand: Operand? = nil
|
private var op: Operator? = nil
|
||||||
@State
|
@State
|
||||||
private(set) var display: String = ""
|
private(set) var display: String = ""
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ struct ViewModel {
|
||||||
numberBuffer = ""
|
numberBuffer = ""
|
||||||
number1 = nil
|
number1 = nil
|
||||||
number2 = nil
|
number2 = nil
|
||||||
operand = nil
|
op = nil
|
||||||
display = ""
|
display = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,18 +31,18 @@ struct ViewModel {
|
||||||
display = numberBuffer
|
display = numberBuffer
|
||||||
}
|
}
|
||||||
|
|
||||||
mutating func operation(_ operand: Operand) {
|
mutating func operation(_ op: Operator) {
|
||||||
guard !numberBuffer.isEmpty && number1 == nil else { return }
|
guard !numberBuffer.isEmpty && number1 == nil else { return }
|
||||||
|
|
||||||
self.operand = operand
|
self.op = op
|
||||||
if number1 == nil { number1 = Double(numberBuffer) }
|
if number1 == nil { number1 = Double(numberBuffer) }
|
||||||
else { number2 = Double(numberBuffer) }
|
else { number2 = Double(numberBuffer) }
|
||||||
numberBuffer = ""
|
numberBuffer = ""
|
||||||
|
|
||||||
if operand == .sqrt {
|
if op == .sqrt {
|
||||||
display = String(sqrt(number1!))
|
display = String(sqrt(number1!))
|
||||||
number1 = nil
|
number1 = nil
|
||||||
self.operand = nil
|
self.op = nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ struct ViewModel {
|
||||||
|
|
||||||
var result: Double = 0.0
|
var result: Double = 0.0
|
||||||
|
|
||||||
switch operand {
|
switch op {
|
||||||
case .add:
|
case .add:
|
||||||
result = add_nums(number1!, number2!)
|
result = add_nums(number1!, number2!)
|
||||||
case .sub:
|
case .sub:
|
||||||
|
|
Loading…
Reference in New Issue