expr unfold_untrusted_macros(environment const & env, expr const & e, unsigned trust_lvl) { if (contains_untrusted_macro(trust_lvl, e)) { return unfold_untrusted_macros_fn(env, trust_lvl)(e); } else { return e; } }
expr unfold_untrusted_macros(environment const & env, expr const & e, optional<unsigned> const & trust_lvl) { if (!trust_lvl || contains_untrusted_macro(*trust_lvl, e)) { type_context ctx(env, transparency_mode::All); return unfold_untrusted_macros_fn(ctx, trust_lvl)(e); } else { return e; } }