03c92ef01a94f8b235257cc7c1f99924dda8c183
[c11tester.git] / funcnode.h
1 #include "action.h"
2 #include "hashtable.h"
3
4 class ModelAction;
5
6 typedef ModelList<const ModelAction *> action_mlist_t;
7 typedef SnapList<uint32_t> func_id_list_t;
8
9 class FuncInst {
10 public: 
11         FuncInst(ModelAction *act);
12         ~FuncInst();
13
14         ModelAction * get_action() const { return action; }
15         const char * get_position() const { return position; }
16 private:
17         ModelAction * const action;
18         const char * position;
19 };
20
21 class FuncNode {
22 public:
23         FuncNode();
24         ~FuncNode();
25
26         HashTable<const char *, FuncInst *, uintptr_t, 4> * getFuncInsts() { return &func_insts; }
27 private:
28         HashTable<const char *, FuncInst *, uintptr_t, 4> func_insts;
29 };
30