Anyways hope any inspirational ideas can help. Much wow and thanks.
Top comments (5)
In general, you need sum type (tagged union, etc. -- it has many names).
In C++ there is no built-in ST, but there are std::any and std::variant (second is better, I think). Both of them can be found at cppreference.com
Thank you, Andrew that's good to know, I have spotted both types but couldn't get it to compile std::any or std::variant. Might have to look into CPP supported versions for emscripten.
I had some business with Arduino recently, so I wrote my implementation of Variant without
typeinfo: Pastebin (there is unused
get_typestruct, don't get confused with it)
Compiles and works with
If you can include typeinfo, it's not so hard to implement class like Any by yourself
If you're familiar with C++ variadic templates (who knows), you can make Variant by yourself
If you don't manage to include standart Any or Variant, and you need sum type with fixed number of hidden (I don't know how to call them) types you can make template Variant class (it will be pretty ugly, but it'll work, hehe)
Thank you so much for thinking to come back here and post that. My project has come a long way now. I had some help from the maintainers of sol. A Lua CPP helper library. But I really should look into polymorphism. Currently I haven't even used CPP classes. Everything is in functions for better or worse.