Vixen
02b45cc4
csharp
public sealed class TargetOverride

What one build target does differently from the base import settings.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

Sparse by which members are marked, not by which are null. Doc 08's override block is a mapping merge — the keys that are present win — so an override is a set of member names plus the values they take. Modelling it as a settings object with every member nullable would make "override this to null" and "do not override this" the same thing, which is exactly the distinction the block exists to draw.

Settings always holds a complete object: the base merged with this target's patch. That is what the matrix draws — a cell that is not overridden shows the value that will be used, which is the base's, rather than a blank the author has to look somewhere else to fill in.

Fields and properties (3)

  • public string Target

    Which build target it applies to — Android, or Android/Vulkan.

  • public object Settings

    The settings as this target sees them: the base with the patch applied.

  • public IReadOnlyCollection<string> Members

    The members this target overrides, in no particular order.

Methods (1)

  • public bool IsOverridden(string member)

    Whether this target overrides a member.

Used by (6)

  • AddTargetCommandVixen.Editor.AssetEditors
  • ImportSettingsDocumentVixen.Editor.AssetEditors
  • ImportSettingsDocumentTestsVixen.Editor.AssetEditors.Tests
  • RemoveTargetCommandVixen.Editor.AssetEditors
  • SetOverriddenCommandVixen.Editor.AssetEditors
  • TargetOverrideMatrixVixen.Editor.AssetEditors