Table of Contents

Class BackendNeutralProjectScaffolder

Namespace
S1Interop.Core.Scaffolding
Assembly
S1Interop.Core.dll

Creates the default dual-runtime or experimental backend-neutral starter used by the CLI.

BackendNeutralProjectScaffolder

BackendNeutralProjectScaffolder backs s1interop new. The CLI uses the explicit Mono/IL2CPP shape by default and selects the backend-neutral shape only with --backend-neutral.

Use CreatePlan to inspect the files that would be created, then the mode-aware Apply overload to write the solution, project file, local path example, starter source, and README. The parameterless-mode legacy overload retains the experimental backend-neutral shape for API compatibility; new integrations should choose the mode explicitly.

public sealed class BackendNeutralProjectScaffolder
Inheritance
object
BackendNeutralProjectScaffolder

Methods

Apply(NewProjectPlan)

Writes the files described by a project plan using the legacy experimental backend-neutral shape.

public void Apply(NewProjectPlan plan)

Parameters

plan NewProjectPlan

The project plan to write to disk.

Remarks

Existing files at the planned paths are overwritten. Call CreatePlan(string) first when callers need to review paths before writing.

Apply(NewProjectPlan, bool)

Writes either the default dual-runtime starter or the explicitly requested experimental backend-neutral starter.

public void Apply(NewProjectPlan plan, bool experimentalBackendNeutral)

Parameters

plan NewProjectPlan

The project plan to write.

experimentalBackendNeutral bool

Whether to create the experimental one-DLL facade-oriented project instead of the default dual-runtime project.

CreatePlan(string)

Builds a file plan for a new Schedule One mod project.

public NewProjectPlan CreatePlan(string targetDirectory)

Parameters

targetDirectory string

The directory that should contain the generated project.

Returns

NewProjectPlan

The planned project paths and generated project name.

Exceptions

ArgumentException

Thrown when a valid project name cannot be inferred from targetDirectory.