#pragma once #include #include #include #include "type.hpp" namespace lily { class type_manager { private: int next_id; std::vector> types; std::map type_names; public: type_manager(); type_internal* create_int_type(); type_internal* create_str_type(); type_data* create_data_type(const std::string& name); type* require_type(const std::string& name); }; }