aboutsummaryrefslogtreecommitdiffstats
path: root/src/parser.rs
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2024-05-28 18:20:10 -0700
committerRose Hogenson <rosehogenson@posteo.net>2024-05-28 18:27:21 -0700
commit52d74efb296cdcdfe8452995dc9d96b34a0e24ac (patch)
treefa08d7eaf090d14e9c360d0bef7fc21496746741 /src/parser.rs
parent2df47cf5e375c73917ebcd6690cd16199d57af83 (diff)
downloadqc-52d74efb296cdcdfe8452995dc9d96b34a0e24ac.tar.zst
Implement modulo.
Diffstat (limited to 'src/parser.rs')
-rw-r--r--src/parser.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/parser.rs b/src/parser.rs
index b391202..3728ebf 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -199,6 +199,10 @@ impl<'a> Parser<'a> {
let e2 = seq(self.expt_expr())?;
return self.mul_expr_fold(e1.int_div(e2));
}
+ if self.symbol("%") {
+ let e2 = seq(self.expt_expr())?;
+ return self.mul_expr_fold(e1.modulo(e2));
+ }
// Allow implicit multiplication
if let Some(e2) = or(self.expt_expr_no_num())? {
return self.mul_expr_fold(e1.mul(e2));