lean4-htt/src/library/compiler/preprocess.h
Leonardo de Moura d6000416f8 feat(library/compiler,frontends/lean/elaborator): (try to) preserve position information
We will use this information in the debugger.
2016-11-09 16:51:48 -08:00

19 lines
664 B
C++

/*
Copyright (c) 2015 Microsoft Corporation. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Author: Leonardo de Moura
*/
#pragma once
#include "kernel/environment.h"
#include "library/compiler/procedure.h"
namespace lean {
/** \brief Expand user-defined and auxiliary recursors, simplify declaration,
put definition in eta-expanded normal form, and
eliminate nested (recursive) recursor applications.
Nested recurse applications become new procedures. */
void preprocess(environment const & env, declaration const & d, buffer<procedure> & result);
void initialize_preprocess();
void finalize_preprocess();
}