infix-calculator/lib/evaluator.c

11 lines
269 B
C

#include "evaluator.h"
int evaluate(const expression_t *expression)
{
if (expression->is_number)
return expression->number;
const int x = evaluate(expression->application.operands[0]);
const int y = evaluate(expression->application.operands[1]);
return x + y;
}