#include #include #include #include #include #include #include "../../../common/boxed_type.h" #include "../../../common/value_type.h" #include "userdata.h" test::boxed_int create_boxed_int(int value) { return test::boxed_int{value}; } void set_up() { using namespace entt::literals; entt::meta_factory{} .type("boxed_int"_hs) .ctor<&create_boxed_int>() .data<&test::boxed_int::value>("value"_hs); entt::meta_factory{} .type("empty"_hs) .ctor<>(); } void tear_down() { entt::meta_reset(); entt::meta_reset(); } CR_EXPORT int cr_main(cr_plugin *ctx, cr_op operation) { switch(operation) { case CR_LOAD: entt::locator::reset(static_cast(ctx->userdata)->ctx); set_up(); break; case CR_STEP: static_cast(ctx->userdata)->any = 4; break; case CR_UNLOAD: case CR_CLOSE: tear_down(); break; } return 0; }