diff options
author | ajreynol <andrew.j.reynolds@gmail.com> | 2016-11-01 13:20:49 -0500 |
---|---|---|
committer | ajreynol <andrew.j.reynolds@gmail.com> | 2016-11-01 13:20:49 -0500 |
commit | 8e0fce94790249ff7aff84ff4500bb96e2ebb9e9 (patch) | |
tree | 25e65718cff712f13688e452ffc1d4b459cd7367 /src/expr/node_manager.h | |
parent | 3506b13f4d298095e8405b32b05e838f17dbe809 (diff) |
Working memory leak free version, changes interface to pointers.
Diffstat (limited to 'src/expr/node_manager.h')
-rw-r--r-- | src/expr/node_manager.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/expr/node_manager.h b/src/expr/node_manager.h index aa78c9627..9342a02c4 100644 --- a/src/expr/node_manager.h +++ b/src/expr/node_manager.h @@ -84,7 +84,7 @@ class NodeManager { friend Expr ExprManager::mkVar(Type, uint32_t flags); // friend so it can access NodeManager's d_listeners and notify clients - friend std::vector<DatatypeType> ExprManager::mkMutualDatatypeTypes(const std::vector<Datatype>&, const std::set<Type>&); + friend void ExprManager::mkMutualDatatypeTypes(std::vector<Datatype*>&, std::set<Type>&, std::vector<DatatypeType>&); /** Predicate for use with STL algorithms */ struct NodeValueReferenceCountNonZero { @@ -380,6 +380,11 @@ public: Assert(elt != d_listeners.end(), "listener not subscribed"); d_listeners.erase(elt); } + + /** register datatype */ + unsigned registerDatatype(Datatype* dt); + /** get datatype for index */ + const Datatype & getDatatypeForIndex( unsigned index ) const; /** Get a Kind from an operator expression */ static inline Kind operatorToKind(TNode n); |