Attempts to add // math operator (#5759)

* attempts to add `div` math operator

* allows `//` to be used too

* fmt:

* clippy issue

* returns appropriate type

* returns appropriate type 2

* fmt

* ensure consistency; rename to `fdiv`

* Update parser.rs
This commit is contained in:
pwygab
2022-06-13 18:54:47 +08:00
committed by GitHub
parent 43a218240c
commit caafd26deb
9 changed files with 236 additions and 1 deletions

View File

@ -30,7 +30,10 @@ impl Expression {
match operator {
Operator::Pow => 100,
Operator::Multiply | Operator::Divide | Operator::Modulo => 95,
Operator::Multiply
| Operator::Divide
| Operator::Modulo
| Operator::FloorDivision => 95,
Operator::Plus | Operator::Minus => 90,
Operator::NotRegexMatch
| Operator::RegexMatch

View File

@ -20,6 +20,7 @@ pub enum Operator {
In,
NotIn,
Modulo,
FloorDivision,
And,
Or,
Pow,
@ -43,6 +44,7 @@ impl Display for Operator {
Operator::In => write!(f, "in"),
Operator::NotIn => write!(f, "not-in"),
Operator::Modulo => write!(f, "mod"),
Operator::FloorDivision => write!(f, "fdiv"),
Operator::And => write!(f, "&&"),
Operator::Or => write!(f, "||"),
Operator::Pow => write!(f, "**"),