2ec4e85d1870d2a644f3d71b78947fd62fdb356e
[c11tester.git] / concretepredicate.h
1 #ifndef __CONCRETE_PREDICATE_H__
2 #define __CONCRETE_PREDICATE_H__
3
4 #include <inttypes.h>
5 #include "classlist.h"
6 #include "predicatetypes.h"
7
8 class ConcretePredicate {
9 public:
10         ConcretePredicate(void * loc);
11         ~ConcretePredicate();
12
13         void add_expression(token_t token, uint64_t value, bool equality);
14         SnapVector<struct concrete_pred_expr> * getExpressions() { return &expressions; }
15         void * get_location() { return location; }
16
17         SNAPSHOTALLOC
18 private:
19         void * location;
20         SnapVector<struct concrete_pred_expr> expressions;
21 };
22
23 #endif /* __CONCRETE_PREDICATE_H */