diff options
Diffstat (limited to 'tiger-compiler/src/assert/libassert.cc')
| -rw-r--r-- | tiger-compiler/src/assert/libassert.cc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tiger-compiler/src/assert/libassert.cc b/tiger-compiler/src/assert/libassert.cc new file mode 100644 index 0000000..8114b74 --- /dev/null +++ b/tiger-compiler/src/assert/libassert.cc @@ -0,0 +1,36 @@ +/** + ** \file assert/libassert.cc + ** \brief Implementation of functions exported by the assert module. + */ + +#include <assert/binder.hh> +#include <assert/libassert.hh> +#include <assert/renamer.hh> +#include <assert/type-checker.hh> +#include <misc/error.hh> + +namespace assert +{ + + misc::error bind(ast::Ast& last) + { + Binder binder; + binder(last); + return binder.error_get(); + } + + misc::error types_check(ast::Ast& tree) + { + TypeChecker typer; + typer(tree); + return typer.error_get(); + } + + misc::error rename(ast::Ast& ast) + { + Renamer renamer; + renamer(ast); + return misc::error{}; + } + +} |
