5a17449c9dddcc643497cb3f1ff37def00994a53
[c11tester.git] / classlist.h
1 #ifndef CLASSLIST_H
2 #define CLASSLIST_H
3 #include <inttypes.h>
4 #include "stl-model.h"
5 #include "hashset.h"
6
7 class ClockVector;
8 class CycleGraph;
9 class CycleNode;
10 class ModelAction;
11 class ModelChecker;
12 class ModelExecution;
13 class ModelHistory;
14 class Scheduler;
15 class Thread;
16 class TraceAnalysis;
17 class Fuzzer;
18 class FuncNode;
19 class FuncInst;
20 class Predicate;
21
22 struct model_snapshot_members;
23 struct bug_message;
24 typedef SnapList<ModelAction *> action_list_t;
25 typedef SnapList<uint32_t> func_id_list_t;
26 typedef SnapList<FuncInst *> func_inst_list_t;
27
28 typedef HashSet<Predicate *, uintptr_t, 0, model_malloc, model_calloc, model_free> PredSet;
29 typedef HSIterator<Predicate *, uintptr_t, 0, model_malloc, model_calloc, model_free> PredSetIter;
30
31 typedef HashSet<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> value_set_t;
32 typedef HSIterator<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> value_set_iter;
33 typedef HashSet<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_t;
34 typedef HSIterator<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_iter;
35
36 extern volatile int modellock;
37 #endif