Skip to content
This repository was archived by the owner on Apr 21, 2025. It is now read-only.

Conversation

@shierei
Copy link
Contributor

@shierei shierei commented Jan 26, 2019

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.

billyquith added a commit that referenced this pull request Feb 17, 2019
- Add mapping for ValueMapper for T*
- Have to register basic types so that they can be passed as UserObject refs. Not ideal.
- Refs have ambiguity.
@billyquith
Copy link
Owner

Sorry for the delay, been busy doing other things. I'll try and investigate.

@shierei
Copy link
Contributor Author

shierei commented Nov 12, 2020 via email

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants