HamsterWheel.FluentCodeGenerators is out
I released today first new Nuget package connected to my new project that I am working on for sometime: dynamically configurable, zero-downtime API, with low-code flows to write small pieces of logic - Hamster Wheel.
System heavily relies on dynamic source code generation. For that I wrote
https://www.nuget.org/packages/HamsterWheel.FluentCodeGenerators and https://www.nuget.org/packages/HamsterWheel.FluentCodeGenerators.Abstractions
small package that helps with writing C# incremental source code generators for Roslyn compiler.
Original Roslyn APIs are a bit hard to use so this package helps with that. Also it helps with:
- automatically emitting using statements
- formatting generated code
- with importing types during code generation
- with indentation and parenthesis balancing
- helps with adding and using method parameters in generated code
- `async` methods generation
- provides nicer to use wrappers to Roslyn `IncrementalValueProvider` and others
- allows to share pieces of code between files/classes (i.e. interfaces implementation)
More details are available here:
https://github.com/npodbielski/HamsterWheel.FluentCodeGenerators including readme with instructions of how to use it and a lot of examples of the features!