#include namespace pmr { using std::pmr::monotonic_buffer_resource; using std::pmr::vector; using std::pmr::string; } inline pmr::monotonic_buffer_resource pool; inline const char* MODULE_DEPENDENCY = "MODULE_DEPENDENCY"; inline const char* IMPLEMENT_DYNAMIC_MODULE = "IMPLEMENT_DYNAMIC_MODULE"; inline const char* IMPLEMENT_STATIC_MODULE = "IMPLEMENT_STATIC_MODULE"; struct MacroData { const char* macro{ nullptr }; pmr::vector args; MacroData() :args(&pool) {} MacroData(const pmr::vector& args) :args(args) {} }; pmr::vector readMacroFile(const char* file_path);