Vixen
feb85697
csharp
public interface IProjectCode

The project's own C#, as Code reports it: which project builds it and what is loaded.

Read the guide page for this →

Remarks

Read-only, and that is the point of it being an interface. The application's ProjectAssemblies builds, loads and unloads; a module that wants the code rebuilt calls BuildCode, which is the one door that takes the scene's authored behaviours off and puts them back around the reload. A module handed the loader itself could unload the assembly under a scene still holding its instances.

⚠ Loaded lives in a collectible context. Holding the assembly — or any type, delegate or instance out of it — past the next CodeBuilt keeps the previous build in memory for ever; read it when it is needed and let it go.

Fields and properties (2)

  • string? Project

    The project's own .csproj, or if the root has none — or more than one.

  • Assembly? Loaded

    The assembly the last build loaded, or if none is.

Used by (5)

  • IProjectSessionVixen.Editor.Core
  • PlayModuleVixen.Editor.App
  • ProjectAssembliesVixen.Editor.App
  • ProjectSessionVixen.Editor.App
  • ProjectSessionTestsVixen.Editor.App.Tests