aboutsummaryrefslogtreecommitdiffstats
path: root/src/input.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/input.rs')
-rw-r--r--src/input.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/input.rs b/src/input.rs
index 2f9d820..462e43c 100644
--- a/src/input.rs
+++ b/src/input.rs
@@ -1,6 +1,6 @@
use crossterm::event::{KeyCode, KeyEvent, KeyModifiers};
-use crate::{Calculator, Function, Operator, Signal};
+use crate::{Calculator, Constant, Function, Operator, Signal};
impl Calculator {
pub fn handle_input(&mut self, key: KeyEvent) -> Signal {
@@ -32,6 +32,8 @@ impl Calculator {
if let Some(st) = self.stack.pop() {
self.stack.push(func.call_on(st));
}
+ } else if let Ok(c) = Constant::parse(&self.input_buffer) {
+ self.stack.push(c.value());
} else if let Ok(bu) = self.input_buffer.parse::<f64>() {
self.stack.push(bu);
}