diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2023-02-09 15:26:30 -0330 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2023-02-09 15:26:30 -0330 |
| commit | 1f6fa5a58030f4ff2adde61e7652d1956e407510 (patch) | |
| tree | 35dc8b7ba5693daaad8eaf5b4e18bba235af988d | |
| parent | 9c04c7b1f8d6911b5a148398d5b4ab416f2136f5 (diff) | |
| download | pfc-1f6fa5a58030f4ff2adde61e7652d1956e407510.zip | |
simplify Function method and rename Calculator method
| -rw-r--r-- | src/input.rs | 4 | ||||
| -rw-r--r-- | src/lib.rs | 10 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/input.rs b/src/input.rs index a80ce11..e7783fb 100644 --- a/src/input.rs +++ b/src/input.rs @@ -33,7 +33,7 @@ impl Calculator { KeyCode::Enter if self.input_buffer.len() > 0 => { if let Ok(func) = Function::parse(&self.input_buffer) { if let Some(f) = self.stack.pop() { - self.stack.push(func.func()(f)); + self.stack.push(func.call_on(f)); } } else { self.stack.push(self.input_buffer.parse::<f64>().unwrap()); @@ -56,7 +56,7 @@ impl Calculator { } else if let Ok(op) = Operator::parse(c) { self.stack.push(self.input_buffer.parse::<f64>().unwrap()); self.input_buffer = String::new(); - self.op(op); + self.perform_operation(op); } else { self.input_buffer.push(c); } @@ -8,7 +8,7 @@ pub struct Calculator { } impl Calculator { - fn op(&mut self, op: Operator) { + fn perform_operation(&mut self, op: Operator) { let rhs = match self.stack.pop() { Some(f) => f, None => { @@ -70,11 +70,11 @@ impl Function { } } - fn func(&self) -> impl Fn(f64) -> f64 { + fn call_on(&self, f: f64) -> f64 { match self { - Self::Sin => |f: f64| f.sin(), - Self::Cos => |f: f64| f.cos(), - Self::Tan => |f: f64| f.tan(), + Self::Sin => f.sin(), + Self::Cos => f.cos(), + Self::Tan => f.tan(), } } } |