aboutsummaryrefslogtreecommitdiff
path: root/src/lex.rs
diff options
context:
space:
mode:
authorMaximilian Bosch <[email protected]>2021-12-26 14:41:47 +0000
committerMaximilian Bosch <[email protected]>2021-12-30 17:06:50 +0000
commit18a1ce8f0343f7865f8a01741fb96f98945645d0 (patch)
treecf3631b94197305b61fd0279025d4fb32d51abea /src/lex.rs
parent7d1db014ebc6bf0a8fd3e5a25abdc81aa2270a1d (diff)
Allow expressions such as `e2` as multiplication of `e * 2`
Diffstat (limited to 'src/lex.rs')
-rw-r--r--src/lex.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lex.rs b/src/lex.rs
index 1c686a1..da542d5 100644
--- a/src/lex.rs
+++ b/src/lex.rs
@@ -143,6 +143,12 @@ pub fn lexer(input: &str, prev_ans: Option<f64>) -> Result<Vec<Token>, CalcError
143 &char_vec[..char_vec.chars().count()-1] 143 &char_vec[..char_vec.chars().count()-1]
144 ))); 144 )));
145 } 145 }
146 } else if CONSTANTS.get(&char_vec[..]).is_some() {
147 result.push(CONSTANTS.get(&char_vec[..]).unwrap().clone());
148 result.push(OPERATORS.get(&'*').unwrap().clone());
149 char_vec.clear();
150 num_vec.push(letter);
151 last_char_is_op = false;
146 } else { 152 } else {
147 return Err(CalcError::Syntax(format!( 153 return Err(CalcError::Syntax(format!(
148 "Unexpected character '{}'", 154 "Unexpected character '{}'",