1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
#[derive(Clone, Debug, PartialEq)]
pub enum Token {
    Operator(char, u32, u32),   // Operator, associativity, precedence
    WholeNumber(i64),
    DecimalNumber(f64),
    FunctionCall(String),
    Comma,
    LeftParenthesis,
    RightParenthesis,
    Whitespace
}

pub const LEFT_ASSOCIATIVE: u32 = 1;
pub const RIGHT_ASSOCIATIVE: u32 = 2;