aboutsummaryrefslogtreecommitdiffstats
path: root/src/parser.rs
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2024-05-28 18:12:02 -0700
committerRose Hogenson <rosehogenson@posteo.net>2024-05-28 18:14:21 -0700
commit2df47cf5e375c73917ebcd6690cd16199d57af83 (patch)
tree6b5206f512e7b0a5ce7ee8d4c3b76a51919e7a32 /src/parser.rs
parent8c0ddfb990057c5ae8d6d15ab0e0ec3f83b07ee4 (diff)
downloadqc-2df47cf5e375c73917ebcd6690cd16199d57af83.tar.zst
Use num crate.
Diffstat (limited to 'src/parser.rs')
-rw-r--r--src/parser.rs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/parser.rs b/src/parser.rs
index 01f0e1b..b391202 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -1,7 +1,7 @@
+use crate::eval;
+use crate::eval::Num;
use crate::lexer::Lexer;
-use crate::num;
-use crate::num::Num;
-use num_bigint::BigInt;
+use num::BigInt;
use std::str::FromStr;
enum ParseError {
@@ -70,17 +70,17 @@ impl<'a> Parser<'a> {
return Err(ParseError::Consumed);
};
if negative {
- return Ok(num::float(-f));
+ return Ok(eval::float(-f));
}
- return Ok(num::float(f));
+ return Ok(eval::float(f));
}
let Ok(i) = BigInt::from_str(t) else {
return Err(ParseError::Consumed);
};
if negative {
- return Ok(num::int(-i));
+ return Ok(eval::int(-i));
}
- Ok(num::int(i))
+ Ok(eval::int(i))
}
fn paren_expr(&mut self) -> Result<Num, ParseError> {
@@ -96,10 +96,10 @@ impl<'a> Parser<'a> {
fn parse_const(&mut self) -> Result<Num, ParseError> {
if self.symbol("e") {
- return Ok(num::float(std::f64::consts::E));
+ return Ok(eval::float(std::f64::consts::E));
}
if self.symbol("pi") {
- return Ok(num::float(std::f64::consts::PI));
+ return Ok(eval::float(std::f64::consts::PI));
}
Err(ParseError::Empty)
}