Skip to content
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

Generics ToDos #22

Open
5 of 10 tasks
lemonmojo opened this issue Apr 11, 2023 · 0 comments
Open
5 of 10 tasks

Generics ToDos #22

lemonmojo opened this issue Apr 11, 2023 · 0 comments
Labels
enhancement New feature or request generator

Comments

@lemonmojo
Copy link
Member

lemonmojo commented Apr 11, 2023

  • Make it so that even in generic methods, the self parameter is always the first
  • Generic Types require a specialized constructor which we need to call through reflection
  • Probably same for the generated typeof method
  • We will probably need to adjust generated code for generic functions within generic types because such a function may use generic parameters of the declaring type, not just the function itself
  • Support constructed generic types to be able to actually use generic types outside of their own implementation
  • We can omit the generic type parameters of methods within generic types in the method itself because we can infer the generic type arguments from the instance. Unfortunately this won't work for static methods.
  • We can also keep the arguments and provide "real" generic versions of generic types in Swift because we then know the generic arguments and can forward them
  • Support a version of the TypeOf method for generic types that takes generic type arguments and returns a constructed generic type
  • We should split the unmanaged method writer in a reflection based and a regular version
  • Generic Delegate Types
@lemonmojo lemonmojo added enhancement New feature or request generator labels Apr 11, 2023
@lemonmojo lemonmojo changed the title Generics ToDo Generics ToDos Apr 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request generator
Projects
None yet
Development

No branches or pull requests

1 participant