#ifndef MANDEL_EXECDATA_H #define MANDEL_EXECDATA_H #include #include namespace mnd { struct ExecData { std::unique_ptr jitRuntime; std::unique_ptr code; std::unique_ptr compiler; void* iterationFunc; ExecData(void) : jitRuntime{ std::make_unique() }, code{ std::make_unique() }, compiler{ nullptr }, iterationFunc{ nullptr } { code->init(jitRuntime->codeInfo()); compiler = std::make_unique(code.get()); } ExecData(ExecData&&) = default; ExecData(const ExecData&) = delete; ExecData& operator=(ExecData&&) = default; ExecData& operator=(const ExecData&) = delete; ~ExecData(void) = default; }; } #endif // MANDEL_EXECDATA_H