Remove final specifier from all class templates#4
Merged
Conversation
Owner
|
I can see the reasons to remove it from the registry and actually I can optimize a bit the component pool without the final keyword. Therefore we can safely drop them out. Anyway, there is no reason to remove it from the |
Contributor
Author
|
I added
Can you elaborate on this? Do you mean e.g. making |
GerHobbelt
pushed a commit
to GerHobbelt/entt
that referenced
this pull request
Nov 1, 2024
Adding custom getter
GerHobbelt
pushed a commit
to GerHobbelt/entt
that referenced
this pull request
Nov 1, 2024
Back out changes that are no longer needed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
All class templates from the ECS are defined as
final. In my opinion this is not sensible. In my concrete application I want to be able to forward declare the ECS class without retyping all template parameters (forward declaration of typedefs is not possible). The easiest way to do this would be to inherit from the EnTT types:now I can forward declare the
EntityComponentSystemclass in other parts of the project.In general I don't see an advantage of using
finalin this context and I would propose to remove the specifiers from the headers.