24 lines
584 B
C#
24 lines
584 B
C#
|
namespace CanonSharp.Combinator;
|
||
|
|
||
|
/// <summary>
|
||
|
/// 单元类型Unit
|
||
|
/// </summary>
|
||
|
public readonly struct Unit : IComparable<Unit>, IEquatable<Unit>
|
||
|
{
|
||
|
public static Unit Instance => default;
|
||
|
|
||
|
public bool Equals(Unit other) => true;
|
||
|
|
||
|
public int CompareTo(Unit other) => 0;
|
||
|
|
||
|
public override bool Equals(object? obj) => obj is Unit;
|
||
|
|
||
|
public override int GetHashCode() => 0;
|
||
|
|
||
|
public override string ToString() => $"<{nameof(Unit)}>";
|
||
|
|
||
|
public static bool operator ==(Unit _0, Unit _1) => true;
|
||
|
|
||
|
public static bool operator !=(Unit _0, Unit _1) => false;
|
||
|
}
|