1 /*++ 2 Copyright (c) 2018 Microsoft Corporation 3 4 Module Name: 5 6 recfun_rewriter.h 7 8 Abstract: 9 10 Rewriter recursive function applications to values 11 12 Author: 13 14 Nikolaj Bjorner (nbjorner) 2020-04-26 15 16 17 --*/ 18 19 #pragma once 20 21 #include "ast/recfun_decl_plugin.h" 22 #include "ast/rewriter/rewriter.h" 23 24 class recfun_rewriter { 25 ast_manager& m; 26 recfun::util m_rec; 27 public: recfun_rewriter(ast_manager & m)28 recfun_rewriter(ast_manager& m): m(m), m_rec(m) {} 29 30 br_status mk_app_core(func_decl * f, unsigned num_args, expr * const * args, expr_ref & result); 31 get_fid()32 family_id get_fid() const { return m_rec.get_family_id(); } 33 34 }; 35 36