2 * Copyright 2005 Timo Hirvonen
8 #include <track_info.h>
11 enum { OP_LT
, OP_LE
, OP_EQ
, OP_GE
, OP_GT
, OP_NE
};
12 #define NR_OPS (OP_NE + 1)
24 #define NR_EXPRS (EXPR_BOOL + 1)
27 struct expr
*left
, *right
, *parent
;
32 struct list_head glob_head
;
52 struct expr
*expr_parse(const char *str
);
53 int expr_check_leaves(struct expr
**exprp
, const char *(*get_filter
)(const char *name
));
54 int expr_eval(struct expr
*expr
, struct track_info
*ti
);
55 void expr_free(struct expr
*expr
);
56 const char *expr_error(void);