#ifndef fk_COMPILER_HPP #define fk_COMPILER_HPP #include "commons.hpp" #include "Program.hpp" #include "Node.hpp" namespace fk { FK_ERROR(compile_error); class Compiler { public: explicit Compiler(); virtual ~Compiler(); std::shared_ptr compile(std::shared_ptr node); private: void compile(std::shared_ptr node, std::shared_ptr prog); }; } #endif