Editor/Tunnel/ArchTunnelManifest.cs

Manifest describing the Tunnel part kind for the editor. It defines metadata for ArchTunnelPart: kind, slot, supported host types, domain, label, glyph, subtool, host output text, direct rank and stage logic.

Reflection
using System;
using System.Collections.Generic;
using System.Linq;

namespace Sunless.Architecture;

public sealed class ArchTunnelManifest : ArchKindManifest<ArchTunnelPart>
{
	public override ArchKind Kind => ArchKind.Tunnel;

	public override string Slot => "Tunnels";

	public override IEnumerable<Type> Hosts => new[] { typeof( ArchRoadPart ) };

	public override ArchLayerDomain Domain => ArchLayerDomain.Infrastructure;

	public override string Label => "Tunnel";

	public override string Glyph => "straighten";

	public override string Subtool => ArchSubtools.Tunnel;

	public override string HostOutput => "Tunnel span and bore frame";

	public override int DirectRank => 19;

	public override ArchLayerStage Stage( object payload ) => ArchLayerStage.Void;
}