9 cons
,plus
,minus
,times
,divide
,modulo
,power
11 enum unop
{negate
,inverse
};
12 enum ast_type
{an_binop
, an_cons
, an_int
, an_unop
};
34 struct ast
*ast_cons(struct ast
*el
, struct ast
*tail
);
35 struct ast
*ast_binop(struct ast
*l
, enum binop op
, struct ast
*tail
);
36 struct ast
*ast_int(int integer
);
37 struct ast
*ast_unop(enum unop op
, struct ast
*l
);
39 void ast_print(struct ast
* ast
, FILE *out
);
40 void ast_free(struct ast
*ast
);