alopex_sql/parser/
precedence.rs1#[derive(Debug, Clone, Copy)]
2pub enum Precedence {
3 Period,
4 MulDivMod,
5 PlusMinus,
6 StringConcat,
7 Comparison,
8 Between,
9 Like,
10 Is,
11 UnaryNot,
12 And,
13 Or,
14}
15
16impl Precedence {
17 pub fn value(self) -> u8 {
18 match self {
19 Precedence::Period => 100,
20 Precedence::MulDivMod => 40,
21 Precedence::PlusMinus => 30,
22 Precedence::StringConcat => 25,
23 Precedence::Comparison => 20,
24 Precedence::Between => 20,
25 Precedence::Like => 19,
26 Precedence::Is => 17,
27 Precedence::UnaryNot => 15,
28 Precedence::And => 10,
29 Precedence::Or => 5,
30 }
31 }
32}
33
34pub const PREC_UNKNOWN: u8 = 0;