@@ -216,23 +216,6 @@ namespace datatype {
216
216
void log_axiom_definitions (symbol const & s, sort * new_sort);
217
217
218
218
219
- friend class util ;
220
- obj_map<sort, ptr_vector<func_decl>*> m_datatype2constructors;
221
- obj_map<sort, cnstr_depth> m_datatype2nonrec_constructor;
222
- obj_map<func_decl, ptr_vector<func_decl>*> m_constructor2accessors;
223
- obj_map<func_decl, func_decl*> m_constructor2recognizer;
224
- obj_map<func_decl, func_decl*> m_recognizer2constructor;
225
- obj_map<func_decl, func_decl*> m_accessor2constructor;
226
- obj_map<sort, bool > m_is_recursive;
227
- obj_map<sort, bool > m_is_enum;
228
- mutable obj_map<sort, bool > m_is_fully_interp;
229
- mutable ast_ref_vector * m_asts = nullptr ;
230
- sref_vector<param_size::size> m_refs;
231
- ptr_vector<ptr_vector<func_decl> > m_vectors;
232
- unsigned m_start = 0 ;
233
- mutable ptr_vector<sort> m_fully_interp_trail;
234
- void add_ast (ast* a) const { if (!m_asts) m_asts = alloc (ast_ref_vector, *m_manager); m_asts->push_back (a); }
235
-
236
219
public:
237
220
plugin (): m_id_counter(0 ), m_class_id(0 ), m_has_nested_rec(false ) {}
238
221
~plugin () override ;
@@ -281,6 +264,23 @@ namespace datatype {
281
264
282
265
void reset ();
283
266
267
+
268
+ obj_map<sort, ptr_vector<func_decl>*> m_datatype2constructors;
269
+ obj_map<sort, cnstr_depth> m_datatype2nonrec_constructor;
270
+ obj_map<func_decl, ptr_vector<func_decl>*> m_constructor2accessors;
271
+ obj_map<func_decl, func_decl*> m_constructor2recognizer;
272
+ obj_map<func_decl, func_decl*> m_recognizer2constructor;
273
+ obj_map<func_decl, func_decl*> m_accessor2constructor;
274
+ obj_map<sort, bool > m_is_recursive;
275
+ obj_map<sort, bool > m_is_enum;
276
+ mutable obj_map<sort, bool > m_is_fully_interp;
277
+ mutable ast_ref_vector* m_asts = nullptr ;
278
+ sref_vector<param_size::size> m_refs;
279
+ ptr_vector<ptr_vector<func_decl> > m_vectors;
280
+ unsigned m_start = 0 ;
281
+ mutable ptr_vector<sort> m_fully_interp_trail;
282
+ void add_ast (ast* a) const { if (!m_asts) m_asts = alloc (ast_ref_vector, *m_manager); m_asts->push_back (a); }
283
+
284
284
private:
285
285
bool is_value_visit (bool unique, expr * arg, ptr_buffer<app> & todo) const ;
286
286
bool is_value_aux (bool unique, app * arg) const ;
0 commit comments