예제 #1
0
 public static bool Equiv <T>(this IEquivatable <T> obj1, IEquivatable <T> obj2)
     where T : IEquivatable <T>
 {
     if (ReferenceEquals(null, obj1))
     {
         return(ReferenceEquals(null, obj2));
     }
     if (ReferenceEquals(null, obj2))
     {
         return(ReferenceEquals(null, obj1));
     }
     if (ReferenceEquals(obj1, obj2))
     {
         return(true);
     }
     return(((IEquivatable <T>)obj1).Equiv(obj2.AssertCast <T>()));
 }
예제 #2
0
 public static int EquivHashCode <T>(this IEquivatable <T> obj)
     where T : IEquivatable <T>
 {
     return(obj == null ? 0 : obj.EquivHashCode());
 }
예제 #3
0
 public static bool NotEquiv <T>(this IEquivatable <T> obj1, IEquivatable <T> obj2)
     where T : IEquivatable <T>
 {
     return(!Equiv(obj1, obj2));
 }