}
TheoryDatatypes::~TheoryDatatypes() {
+ for(std::map< Node, EqcInfo* >::iterator i = d_eqc_info.begin(), iend = d_eqc_info.end();
+ i != iend; ++i){
+ EqcInfo* current = (*i).second;
+ Assert(current != NULL);
+ delete current;
+ }
}
void TheoryDatatypes::setMasterEqualityEngine(eq::EqualityEngine* eq) {
std::map< Node, EqcInfo* >::iterator eqc_i = d_eqc_info.find( n );
EqcInfo* ei;
- if( eqc_i!=d_eqc_info.end() ){
+ if( eqc_i != d_eqc_info.end() ){
ei = eqc_i->second;
}else{
ei = new EqcInfo( getSatContext() );
}
-TheoryDatatypes::EqcInfo::EqcInfo( context::Context* c ) :
-d_inst( c, false ), d_constructor( c, Node::null() ), d_selectors( c, false ){
-
-}
+TheoryDatatypes::EqcInfo::EqcInfo( context::Context* c )
+ : d_inst( c, false )
+ , d_constructor( c, Node::null() )
+ , d_selectors( c, false )
+{}
bool TheoryDatatypes::hasLabel( EqcInfo* eqc, Node n ){
return ( eqc && !eqc->d_constructor.get().isNull() ) || !getLabel( n ).isNull();
void getPossibleCons( EqcInfo* eqc, Node n, std::vector< bool >& cons );
void getSelectorsForCons( Node r, std::map< int, bool >& sels );
/** mkExpDefSkolem */
- void mkExpDefSkolem( Node sel, TypeNode dt, TypeNode rt );
- /** skolems for terms */
+ void mkExpDefSkolem( Node sel, TypeNode dt, TypeNode rt );
+ /** skolems for terms */
NodeMap d_term_sk;
Node getTermSkolemFor( Node n );
private: