you call the C# program that generates the code as part of your build system

I get it. That's code generation. But it's not compile time reflection.