kevin-montrose / Cesil

Modern CSV (De)Serializer
MIT License
65 stars 3 forks source link

Implement Source Generator for Deserializers, and clean up Serializers #43

Closed kevin-montrose closed 3 years ago

kevin-montrose commented 3 years ago

Introduces a Source Generator for AOT creation of deserializers, and cleans up some of the work from #41 .

As with #41, the source generator produces a new type that is used to back some delegates when using the AheadOfTimeTypeDescriber.

Visible changes

Internal changes

Commentary

While this code is reasonably tested, it is not yet up to Cesil's general standards. Since there are lots of open questions around Source Generator best practices, I consider this OK for now - before 1.0 it will need to be addressed.