public static class ProjectScaffoldWrites a new project from a template.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
The half of vixen new that is not a console. Which template, whether the name can be a namespace, what would be overwritten and what to write: all four are decisions, and the CLI's copy of them was the only copy — which is why the editor's New Project made two directories instead. The same split ContentPipeline made from ImportRunner, for the same reason and with the same shape: a result somebody formats rather than lines somebody prints.
⚠ Nothing is overwritten, and every collision is found before anything is written. A scaffolder that clobbers is one nobody runs twice, and "I pointed it at the wrong directory" is the ordinary mistake rather than the exotic one — so a half-scaffolded directory must not be a state this can leave behind.
Fields and properties (1)
public static string SdkVersionThe version a new project pins, for the SDK and for every package it references.
Methods (3)
public static bool IsUsableName(string name)Whether a name can be both an assembly name and a namespace.
public static string NameFrom(string directoryName)The nearest usable project name to a directory's own.
public static ScaffoldResult Write(string template, string name, string directory)Writes a template into a directory.
Used by (6)
- EditorApplicationVixen.Editor.App
- PlayerBuildTestsVixen.Editor.Assets.Tests
- ProjectMarkerVixen.Editor.Core
- ProjectMarkerTestsVixen.Editor.Core.Tests
- ProjectScaffoldTestsVixen.Editor.Core.Tests
- ScaffoldRunnerVixen.Cli