From 5dca96a2a26e8fc64a42a905d18679d1be14811c Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Tue, 23 Aug 2016 15:41:40 -0700 Subject: [PATCH] feat(library/attribute_manager): add get_attribute_fingerprint C++ API --- src/library/attribute_manager.cpp | 4 ++++ src/library/attribute_manager.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/src/library/attribute_manager.cpp b/src/library/attribute_manager.cpp index b579c1c26e..0ff5332be2 100644 --- a/src/library/attribute_manager.cpp +++ b/src/library/attribute_manager.cpp @@ -260,6 +260,10 @@ bool are_incompatible(attribute const & attr1, attribute const & attr2) { return std::find(g_incomp->begin(), g_incomp->end(), mk_pair(s1, s2)) != g_incomp->end(); } +unsigned get_attribute_fingerprint(environment const & env, name const & attr) { + return get_attribute(env, attr).get_fingerprint(env); +} + void initialize_attribute_manager() { g_system_attributes = new name_map(); g_user_attribute_ext.reset(new user_attribute_ext()); diff --git a/src/library/attribute_manager.h b/src/library/attribute_manager.h index d1b132b55e..6c99bc510e 100644 --- a/src/library/attribute_manager.h +++ b/src/library/attribute_manager.h @@ -184,6 +184,8 @@ bool has_attribute(environment const & env, name const & attr, name const & d); bool are_incompatible(attribute const & attr1, attribute const & attr2); +unsigned get_attribute_fingerprint(environment const & env, name const & attr); + void initialize_attribute_manager(); void finalize_attribute_manager(); }