-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Registering properties of custom interfaces breaks code generation #371
Labels
Comments
chippmann
changed the title
Overriding
Registering properties of custom interfaces breaks code generation
Nov 15, 2022
@Export
properties produces invalid code
Changed the title to the "real" problem. |
chippmann
added a commit
that referenced
this issue
Nov 15, 2022
Sub sequentially this also increases the amount of data the entry generator receives in order to do its job. Previously it only received registered classes, functions, properties and constructors. Now it receives every class, function and property from the symbol processor. This allows for additional checks on not registered members or not explicitly registered members.
chippmann
added a commit
that referenced
this issue
Nov 25, 2022
Sub sequentially this also increases the amount of data the entry generator receives in order to do its job. Previously it only received registered classes, functions, properties and constructors. Now it receives every class, function and property from the symbol processor. This allows for additional checks on not registered members or not explicitly registered members.
chippmann
added a commit
that referenced
this issue
Nov 28, 2022
…registered members (#376) * Fix #371 by checking if the overridden property is from an interface Sub sequentially this also increases the amount of data the entry generator receives in order to do its job. Previously it only received registered classes, functions, properties and constructors. Now it receives every class, function and property from the symbol processor. This allows for additional checks on not registered members or not explicitly registered members. * Implement check if overridden registered property is registered * Make overridden registered member check a warning and not an error * Remove implicit registration of overriding property if the overridden property is registered * Fix compiler overridee check * Update test classes for new enforced explicit registration
Thanks, @chippmann. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi,
this combination produces invalid code:
Node
var
property@Export
annotationI think this scenario should be supported. You often want to create abstraction with common property across different implementations (for example, "game object" and "health" value). Changing this value in editor should be also available.
Steps to reproduce
Version:
0.5.1-3.5.1
Result
Compilation fails. Class in
build/generated/
contains redundantoverride
keyword. Removingoverride
manually seems to work but code is replaced on nextbuild
task.PS: Thanks for working on this binding. It makes me happy by allowing me to use Godot with Kotlin.
The text was updated successfully, but these errors were encountered: