-
-
Notifications
You must be signed in to change notification settings - Fork 4
Initial Version #1
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
Conversation
|
Thanks for the effort, I'll take a closer look later and check where I could participate! |
|
@viceroypenguin what's the analyzer for invalid behaviors for? You have the base class handling that no? |
"invalid behaviors" in this context would be: doesn't inherit from |
Ahh so in the assembly attribute |
|
@viceroypenguin I just spent some time on the repo and read up on the incremental generator doc, I think I'm up to speed. I might be interested in checking out the Handler rendering tomorrow afternoon, if you think that would work for you? Not sure, since it already contains some content |
@Sossenbinder Sure, that would work. Ping me on discord and we can work together - we're going to have to figure out together what's needed for rendering and how to pass that from the transformation in a good way. |
|
@viceroypenguin I suggest using ThisAssembly.Resources for all the templates, thoughts? |
I love |
This PR covers the initial implementation of
Immediate.Handlers, up to v0.1.Goal
User code:
Immediate.Handlers should generate:
Tasks:
@dukesteen @Sossenbinder @sid-6581 If you would like to help out with any of these, please feel free to work directly on the
draft1branch. Update the tasks below with your name if you decide to take it, so that we reduce work duplication.NB: It is expected that CI will fail on this branch for the time being.
predicatefor RenderModeAttribute to only look at[assembly: ]attributes @viceroypenguin[RenderMode]will be overrides, and will be reviewed as part of theHandlerAttributeprocessingTransformRenderMode@viceroypenguinTransformBehaviors(simple) @viceroypenguinTransformBehaviors@viceroypenguinTransformHandler@viceroypenguinRenderHandler@SossenbinderNormalrender mode @sid-6581Class1.csis only for debugging purposes and should be removed in favor of more complete and practical sampleBehavior<,>type @Head0nF1reBehavior<int, int>is invalid) @Head0nF1reTRequestimplements a type, if behavior1 is above behavior2, and b1 explicitly relies on a baser class than b2, then b1 will not be able to callInnerHandler.HandleAsync(request), due torequestnot being of the right type. However, if both are generics, but are constrained, then the bound type will satisfy for both b1 and b2, and it will compile.Task<...>[IHR0002] @dukesteenRender Mode
Currently, only
Normalwill be implemented. A future goal will be to add support forControllers,FastEndpoints, andMinimalApirender modes; these will allow reducing the amount of code needed to be written for these situations by an additional layer.Other notes
Repo structure has been designed based on my preferences. I am open to suggestions for improvements to the repo structure.