public static class AddressRunnerWrites the project's addresses out as C# constants.
Remarks
Part of import rather than of content build, and the ordering is the reason. Vixen.Sdk runs the import BeforeTargets="CoreCompile" precisely so that generated C# exists before the compiler reads its inputs, and runs the content build AfterTargets="Build". A constant emitted by the second is a constant that is one build out of date, every build.
⚠ It plans rather than packs. Analyse answers the same address list a build would, without writing a bundle — which is what makes this affordable on every compile.
⚠ The file is rewritten only when it changed. Touching it every build would make MSBuild rebuild the project every build, which is how an incremental build stops being one.
Methods (1)
public static bool Run(Project project, string path, string namespace, bool ids, DiagnosticWriter output)Plans the project's content and writes the constants beside it.
Used by (1)
- VixenCommandVixen.Cli