From b0ac78c2cb3084bf14aa913ea5a83c76e6dfe113 Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Sun, 12 Jul 2015 11:25:50 -0400 Subject: [PATCH] feat(library/user_recursors): add is_user_defined_recursor predicate --- src/library/user_recursors.cpp | 4 ++++ src/library/user_recursors.h | 1 + 2 files changed, 5 insertions(+) diff --git a/src/library/user_recursors.cpp b/src/library/user_recursors.cpp index c9fc22a873..362b10e00b 100644 --- a/src/library/user_recursors.cpp +++ b/src/library/user_recursors.cpp @@ -311,6 +311,10 @@ list get_recursors_for(environment const & env, name const & I) { return list(); } +bool is_user_defined_recursor(environment const & env, name const & r) { + return recursor_ext::get_state(env).m_recursors.find(r) != nullptr; +} + has_recursors_pred::has_recursors_pred(environment const & env): m_type2recursors(recursor_ext::get_state(env).m_type2recursors) {} diff --git a/src/library/user_recursors.h b/src/library/user_recursors.h index 6f5fc49f7f..ec6a6f7ceb 100644 --- a/src/library/user_recursors.h +++ b/src/library/user_recursors.h @@ -57,6 +57,7 @@ public: environment add_user_recursor(environment const & env, name const & r, optional const & major_pos, bool persistent); recursor_info get_recursor_info(environment const & env, name const & r); list get_recursors_for(environment const & env, name const & I); +bool is_user_defined_recursor(environment const & env, name const & r); class has_recursors_pred { name_map> m_type2recursors;