module └╴struct Variable └╴trait Variable └╴fn value └╴fn ty └╴fn assign └╴enum Value └╴trait Value └╴fn ty └╴fn default └╴fn default_int └╴fn default_bool └╴fn default_string └╴fn as_boolean └╴fn add └╴fn sub └╴fn mul └╴fn div └╴fn mod_ └╴fn equals └╴fn greater_than └╴fn less_than └╴fn greater_than_equals └╴fn less_than_equals └╴fn not └╴fn and └╴fn or └╴trait Value └╴fn fmt └╴struct Visitor └╴struct Visitors └╴trait Visitors └╴fn default └╴trait Visitors └╴fn new └╴fn insert └╴fn get_by_node └╴enum Error └╴struct Context └╴trait Context<'a> └╴fn fmt └╴trait Context<'a> └╴fn new └╴fn with_program └╴fn with_input └╴fn with_cursor └╴fn eval_expr └╴fn eval_lit └╴fn lookup └╴fn lookup_mut └╴fn bind └╴fn eval_bin └╴fn eval_assign └╴fn eval_arith └╴fn eval_cmp └╴fn eval_logic └╴fn eval_unary └╴fn eval_if └╴fn eval_call └╴fn eval_declaration └╴fn eval_statement └╴fn eval_block └╴fn eval └╴fn evaluate └╴mod test └╴fn bin └╴fn test_evaluate_blocks └╴fn test_evaluate_if