A game framework written with osu! in mind.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Clean up IComparable in generic constraints. BannedApiAnalyzer doesn't report it in constraint.

+3 -3
+2 -2
osu.Framework/Bindables/BindableNumber.cs
··· 215 215 typeof(T) != typeof(double); // Will be **constant** after JIT. 216 216 217 217 public void Set<U>(U val) where U : struct, 218 - IComparable, IFormattable, IConvertible, IComparable<U>, IEquatable<U> 218 + IFormattable, IConvertible, IComparable<U>, IEquatable<U> 219 219 { 220 220 // Comparison between typeof(T) and type literals are treated as **constant** on value types. 221 221 // Code pathes for other types will be eliminated. ··· 244 244 } 245 245 246 246 public void Add<U>(U val) where U : struct, 247 - IComparable, IFormattable, IConvertible, IComparable<U>, IEquatable<U> 247 + IFormattable, IConvertible, IComparable<U>, IEquatable<U> 248 248 { 249 249 // Comparison between typeof(T) and type literals are treated as **constant** on value types. 250 250 // Code pathes for other types will be eliminated.
+1 -1
osu.Framework/IStateful.cs
··· 10 10 /// </summary> 11 11 /// <typeparam name="T">Generally an Enum type local to the class implementing this interface.</typeparam> 12 12 public interface IStateful<T> 13 - where T : struct, IComparable 13 + where T : struct 14 14 { 15 15 /// <summary> 16 16 /// Invoked when the state of this <see cref="IStateful{T}"/> has changed.