#ifndef EVALUATOR_HPP #define EVALUATOR_HPP #include "ast.hpp" #include #include #include std::unique_ptr normalize(const std::unique_ptr&, const std::unordered_map>&); std::unique_ptr substitute(const std::string&, const std::unique_ptr&, const std::unique_ptr&); std::unique_ptr evaluate(const std::unique_ptr&, const std::unordered_map>&); std::unique_ptr evaluateMain(const std::unordered_map>&); #endif // EVALUATOR_HPP