Open shierei opened 5 years ago
Sorry for the delay, been busy doing other things. I'll try and investigate.
Thanks. I have been using the fix that I uploaded for review and it serves me well in the mean time.-Shie-reiOn Nov 12, 2020 6:18 AM, Bill Quith notifications@github.com wrote: Sorry for the delay, been busy doing other things. I'll try and investigate.
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.
This fix makes passing a pointer to std::string, integer or float typed argument to a metaclass function possible. This is necessary in order to be able to use a function argument to return the result from a function. I think PONDER effectively casts a pointer argument to any type to a pointer to UserObject. Because of this, the basic type needs to be registered as a PONDER_TYPE and be declared as a metaclass. For example, if you have a pointer argument to int in a metaclass function, you have to add
PONDER_TYPE(int) and ponder::Class::declare<int>("int")
in your code. The fix in this pull request is to make sure that after the registration and declaration, the ponder::Value for an 'int' type variable can preserve its ponder value kind as a number kind instead of a User kind. The same goes to a string or a float.