lean2/src/frontends/lean/extra_info.cpp
Leonardo de Moura b6781711b1 refactor(*): explicit initialization/finalization for serialization
modules, expression annotations, and tactics
2014-09-22 15:26:41 -07:00

24 lines
656 B
C++

/*
Copyright (c) 2014 Microsoft Corporation. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Author: Leonardo de Moura
*/
#include "frontends/lean/extra_info.h"
namespace lean {
static name * g_extra_info = nullptr;
name const & get_extra_info() { return *g_extra_info; }
expr mk_extra_info(expr const & e) { return mk_annotation(get_extra_info(), e); }
bool is_extra_info(expr const & e) { return is_annotation(e, get_extra_info()); }
void initialize_extra_info() {
g_extra_info = new name("extra_info");
register_annotation(*g_extra_info);
}
void finalize_extra_info() {
delete g_extra_info;
}
}