feat(runtime-core) Allow dynamic signature for polymorphic host functions #1225
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Extracted from #1018.
master
!This patch adds a new field in
Func
:signature
. It contains thesignature of the host function.
For non-polymorphic host functions, the signature is computed from the
Args
andRets
implementation parameters at compile-time.For polymorphic host functions though, to be fully dynamic, the
signature given to
new_polymorphic
is used inFunc
as the correctsignature.
The improvement is the following:
with this approach, we are more dynamic, and thus more easily embeddable in dynamic languages such as Python, Ruby, PHP and so on.