@@ -6,6 +6,9 @@ namespace Microsoft.DurableTask;
6
6
/// <summary>
7
7
/// Represents a <see cref="Void" /> result.
8
8
/// </summary>
9
+ /// <remarks>
10
+ /// Modeled after https://learn.microsoft.com/en-us/dotnet/fsharp/language-reference/unit-type.
11
+ /// </remarks>
9
12
public readonly struct Unit : IEquatable < Unit > , IComparable < Unit >
10
13
{
11
14
#pragma warning disable CA1801 // unused parameters
@@ -24,50 +27,50 @@ namespace Microsoft.DurableTask;
24
27
public static Task < Unit > Task { get ; } = System . Threading . Tasks . Task . FromResult ( RefValue ) ;
25
28
26
29
/// <summary>
27
- /// Compares two empties for equality. Always true.
30
+ /// Compares two units for equality. Always true.
28
31
/// </summary>
29
- /// <param name="left">The left empty .</param>
30
- /// <param name="right">The right empty .</param>
32
+ /// <param name="left">The left unit .</param>
33
+ /// <param name="right">The right unit .</param>
31
34
/// <returns>Always true.</returns>
32
35
public static bool operator == ( Unit left , Unit right ) => true ;
33
36
34
37
/// <summary>
35
- /// Compares two empties for inequality. Always false.
38
+ /// Compares two units for inequality. Always false.
36
39
/// </summary>
37
- /// <param name="left">The left empty .</param>
38
- /// <param name="right">The right empty .</param>
40
+ /// <param name="left">The left unit .</param>
41
+ /// <param name="right">The right unit .</param>
39
42
/// <returns>Always false.</returns>
40
43
public static bool operator != ( Unit left , Unit right ) => ! true ;
41
44
42
45
/// <summary>
43
- /// Compares two empties . Always false.
46
+ /// Compares two units . Always false.
44
47
/// </summary>
45
- /// <param name="left">The left empty .</param>
46
- /// <param name="right">The right empty .</param>
48
+ /// <param name="left">The left unit .</param>
49
+ /// <param name="right">The right unit .</param>
47
50
/// <returns>Always false.</returns>
48
51
public static bool operator < ( Unit left , Unit right ) => false ;
49
52
50
53
/// <summary>
51
- /// Compares two empties . Always true.
54
+ /// Compares two units . Always true.
52
55
/// </summary>
53
- /// <param name="left">The left empty .</param>
54
- /// <param name="right">The right empty .</param>
56
+ /// <param name="left">The left unit .</param>
57
+ /// <param name="right">The right unit .</param>
55
58
/// <returns>Always true.</returns>
56
59
public static bool operator <= ( Unit left , Unit right ) => true ;
57
60
58
61
/// <summary>
59
- /// Compares two empties . Always false.
62
+ /// Compares two units . Always false.
60
63
/// </summary>
61
- /// <param name="left">The left empty .</param>
62
- /// <param name="right">The right empty .</param>
64
+ /// <param name="left">The left unit .</param>
65
+ /// <param name="right">The right unit .</param>
63
66
/// <returns>Always false.</returns>
64
67
public static bool operator > ( Unit left , Unit right ) => false ;
65
68
66
69
/// <summary>
67
- /// Compares two empties . Always true.
70
+ /// Compares two units . Always true.
68
71
/// </summary>
69
- /// <param name="left">The left empty .</param>
70
- /// <param name="right">The right empty .</param>
72
+ /// <param name="left">The left unit .</param>
73
+ /// <param name="right">The right unit .</param>
71
74
/// <returns>Always true.</returns>
72
75
public static bool operator >= ( Unit left , Unit right ) => true ;
73
76
@@ -84,7 +87,7 @@ namespace Microsoft.DurableTask;
84
87
public override int GetHashCode ( ) => 0 ;
85
88
86
89
/// <inheritdoc />
87
- public override string ToString ( ) => "{}" ;
90
+ public override string ToString ( ) => "()" ; // Same as F# Unit string representation.
88
91
89
92
#pragma warning restore CA1801 // unused parameters
90
93
#pragma warning restore IDE0060 // unused parameters
0 commit comments