feat(library/vm): add get_vm_decl
This commit is contained in:
parent
61471df3eb
commit
7a4ed85fee
2 changed files with 10 additions and 0 deletions
|
|
@ -491,6 +491,14 @@ environment optimize_vm_decls(environment const & env) {
|
|||
}
|
||||
}
|
||||
|
||||
optional<vm_decl> get_vm_decl(environment const & env, name const & n) {
|
||||
vm_decls const & ext = get_extension(env);
|
||||
if (auto idx = ext.m_name2idx.find(n))
|
||||
return optional<vm_decl>(ext.m_decls[*idx]);
|
||||
else
|
||||
return optional<vm_decl>();
|
||||
}
|
||||
|
||||
vm_state::vm_state(environment const & env):
|
||||
m_env(optimize_vm_decls(env)),
|
||||
m_decls(get_extension(m_env).m_decls.as_vector_if_compressed()),
|
||||
|
|
|
|||
|
|
@ -424,6 +424,8 @@ bool is_vm_function(environment const & env, name const & fn);
|
|||
/** \brief Return true iff \c fn is implemented in C++. */
|
||||
bool is_vm_builtin_function(name const & fn);
|
||||
|
||||
optional<vm_decl> get_vm_decl(environment const & env, name const & n);
|
||||
|
||||
void display_vm_code(std::ostream & out, environment const & env, unsigned code_sz, vm_instr const * code);
|
||||
|
||||
void initialize_vm();
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue