You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Generators should be able to run multiple times, but only output new structures. That is, any shared helpers, object declarations, etc. should be output only once.
3
+
- Generator's output should be configurable by users. The FastData.Generator.Template package helps developing templatable generators using the T4 template engine.
4
+
- Generators should provide placeholders that configures the output across all templates. For example, in C#, the user might want to generate a static class instead of an instance class. Instead of having them go through all templates and update them to accomodate the need, they simply set ClassType = Static.
5
+
- Generators must be named <Lang>CodeGenerator as the naming scheme is assumed elsewhere.
6
+
7
+
## Supporting core features
8
+
The FastData engine supports several core features that a generator developer can use. However, to support them, you must do the following:
9
+
10
+
- Trimming: You must use the InputKeyName/LookupKeyName abstraction, as the engine will switch the name if trimming is enabled
11
+
- Early exits: You must render the early exit expression at the top of public API methods. TODO: Which expressions to support in compiler?
12
+
- Case sensitivity support: You must provide an indirection for string comparison and switch between case-sensitive and case-insensitive matching depending on the value of Config.IgnoreCase.
0 commit comments