-
- template <typename T, typename U>
- bool addEdge(const T *from, const U *to);
-
- template <typename T>
- void addRMWEdge(const T *from, const ModelAction *rmw);
-
- bool checkForCycles() const;
-
- template <typename T, typename U>
- bool checkReachable(const T *from, const U *to) const;
-
- void startChanges();
- void commitChanges();
- void rollbackChanges();
+ void addEdges(SnapList<ModelAction *> * edgeset, ModelAction *to);
+ void addEdge(ModelAction *from, ModelAction *to);
+ void addEdge(ModelAction *from, ModelAction *to, bool forceedge);
+ void addRMWEdge(ModelAction *from, ModelAction *rmw);
+ bool checkReachable(const ModelAction *from, const ModelAction *to) const;
+ void freeAction(const ModelAction * act);