@@ -25,10 +25,12 @@ public static partial class Guard
2525 public static void IsDefault < T > ( T value , string name )
2626 where T : struct , IEquatable < T >
2727 {
28- if ( ! value . Equals ( default ) )
28+ if ( value . Equals ( default ) )
2929 {
30- ThrowHelper . ThrowArgumentExceptionForIsDefault ( value , name ) ;
30+ return ;
3131 }
32+
33+ ThrowHelper . ThrowArgumentExceptionForIsDefault ( value , name ) ;
3234 }
3335
3436 /// <summary>
@@ -42,10 +44,12 @@ public static void IsDefault<T>(T value, string name)
4244 public static void IsNotDefault < T > ( T value , string name )
4345 where T : struct , IEquatable < T >
4446 {
45- if ( value . Equals ( default ) )
47+ if ( ! value . Equals ( default ) )
4648 {
47- ThrowHelper . ThrowArgumentExceptionForIsNotDefault < T > ( name ) ;
49+ return ;
4850 }
51+
52+ ThrowHelper . ThrowArgumentExceptionForIsNotDefault < T > ( name ) ;
4953 }
5054
5155 /// <summary>
@@ -61,10 +65,12 @@ public static void IsNotDefault<T>(T value, string name)
6165 public static void IsEqualTo < T > ( T value , T target , string name )
6266 where T : notnull , IEquatable < T >
6367 {
64- if ( ! value . Equals ( target ) )
68+ if ( value . Equals ( target ) )
6569 {
66- ThrowHelper . ThrowArgumentExceptionForIsEqualTo ( value , target , name ) ;
70+ return ;
6771 }
72+
73+ ThrowHelper . ThrowArgumentExceptionForIsEqualTo ( value , target , name ) ;
6874 }
6975
7076 /// <summary>
@@ -80,10 +86,12 @@ public static void IsEqualTo<T>(T value, T target, string name)
8086 public static void IsNotEqualTo < T > ( T value , T target , string name )
8187 where T : notnull , IEquatable < T >
8288 {
83- if ( value . Equals ( target ) )
89+ if ( ! value . Equals ( target ) )
8490 {
85- ThrowHelper . ThrowArgumentExceptionForIsNotEqualTo ( value , target , name ) ;
91+ return ;
8692 }
93+
94+ ThrowHelper . ThrowArgumentExceptionForIsNotEqualTo ( value , target , name ) ;
8795 }
8896
8997 /// <summary>
@@ -110,10 +118,12 @@ public static void IsBitwiseEqualTo<T>(T value, T target, string name)
110118 byte valueByte = Unsafe . As < T , byte > ( ref value ) ;
111119 byte targetByte = Unsafe . As < T , byte > ( ref target ) ;
112120
113- if ( valueByte ! = targetByte )
121+ if ( valueByte = = targetByte )
114122 {
115- ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
123+ return ;
116124 }
125+
126+ ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
117127 }
118128 else if ( typeof ( T ) == typeof ( ushort ) ||
119129 typeof ( T ) == typeof ( short ) ||
@@ -122,10 +132,12 @@ public static void IsBitwiseEqualTo<T>(T value, T target, string name)
122132 ushort valueUShort = Unsafe . As < T , ushort > ( ref value ) ;
123133 ushort targetUShort = Unsafe . As < T , ushort > ( ref target ) ;
124134
125- if ( valueUShort ! = targetUShort )
135+ if ( valueUShort = = targetUShort )
126136 {
127- ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
137+ return ;
128138 }
139+
140+ ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
129141 }
130142 else if ( typeof ( T ) == typeof ( uint ) ||
131143 typeof ( T ) == typeof ( int ) ||
@@ -134,10 +146,12 @@ public static void IsBitwiseEqualTo<T>(T value, T target, string name)
134146 uint valueUInt = Unsafe . As < T , uint > ( ref value ) ;
135147 uint targetUInt = Unsafe . As < T , uint > ( ref target ) ;
136148
137- if ( valueUInt ! = targetUInt )
149+ if ( valueUInt = = targetUInt )
138150 {
139- ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
151+ return ;
140152 }
153+
154+ ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
141155 }
142156 else if ( typeof ( T ) == typeof ( ulong ) ||
143157 typeof ( T ) == typeof ( long ) ||
@@ -146,10 +160,12 @@ public static void IsBitwiseEqualTo<T>(T value, T target, string name)
146160 ulong valueULong = Unsafe . As < T , ulong > ( ref value ) ;
147161 ulong targetULong = Unsafe . As < T , ulong > ( ref target ) ;
148162
149- if ( valueULong ! = targetULong )
163+ if ( valueULong = = targetULong )
150164 {
151- ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
165+ return ;
152166 }
167+
168+ ThrowHelper . ThrowArgumentExceptionForsBitwiseEqualTo ( value , target , name ) ;
153169 }
154170 else
155171 {
@@ -183,10 +199,12 @@ public static void IsBitwiseEqualTo<T>(T value, T target, string name)
183199 public static void IsLessThan < T > ( T value , T maximum , string name )
184200 where T : notnull , IComparable < T >
185201 {
186- if ( value . CompareTo ( maximum ) >= 0 )
202+ if ( value . CompareTo ( maximum ) < 0 )
187203 {
188- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsLessThan ( value , maximum , name ) ;
204+ return ;
189205 }
206+
207+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsLessThan ( value , maximum , name ) ;
190208 }
191209
192210 /// <summary>
@@ -202,10 +220,12 @@ public static void IsLessThan<T>(T value, T maximum, string name)
202220 public static void IsLessThanOrEqualTo < T > ( T value , T maximum , string name )
203221 where T : notnull , IComparable < T >
204222 {
205- if ( value . CompareTo ( maximum ) > 0 )
223+ if ( value . CompareTo ( maximum ) >= 0 )
206224 {
207- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsLessThanOrEqualTo ( value , maximum , name ) ;
225+ return ;
208226 }
227+
228+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsLessThanOrEqualTo ( value , maximum , name ) ;
209229 }
210230
211231 /// <summary>
@@ -221,10 +241,12 @@ public static void IsLessThanOrEqualTo<T>(T value, T maximum, string name)
221241 public static void IsGreaterThan < T > ( T value , T minimum , string name )
222242 where T : notnull , IComparable < T >
223243 {
224- if ( value . CompareTo ( minimum ) <= 0 )
244+ if ( value . CompareTo ( minimum ) > 0 )
225245 {
226- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsGreaterThan ( value , minimum , name ) ;
246+ return ;
227247 }
248+
249+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsGreaterThan ( value , minimum , name ) ;
228250 }
229251
230252 /// <summary>
@@ -240,10 +262,12 @@ public static void IsGreaterThan<T>(T value, T minimum, string name)
240262 public static void IsGreaterThanOrEqualTo < T > ( T value , T minimum , string name )
241263 where T : notnull , IComparable < T >
242264 {
243- if ( value . CompareTo ( minimum ) < 0 )
265+ if ( value . CompareTo ( minimum ) >= 0 )
244266 {
245- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsGreaterThanOrEqualTo ( value , minimum , name ) ;
267+ return ;
246268 }
269+
270+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsGreaterThanOrEqualTo ( value , minimum , name ) ;
247271 }
248272
249273 /// <summary>
@@ -263,10 +287,12 @@ public static void IsGreaterThanOrEqualTo<T>(T value, T minimum, string name)
263287 public static void IsInRange < T > ( T value , T minimum , T maximum , string name )
264288 where T : notnull , IComparable < T >
265289 {
266- if ( value . CompareTo ( minimum ) < 0 || value . CompareTo ( maximum ) >= 0 )
290+ if ( value . CompareTo ( minimum ) >= 0 && value . CompareTo ( maximum ) < 0 )
267291 {
268- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsInRange ( value , minimum , maximum , name ) ;
292+ return ;
269293 }
294+
295+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsInRange ( value , minimum , maximum , name ) ;
270296 }
271297
272298 /// <summary>
@@ -286,10 +312,12 @@ public static void IsInRange<T>(T value, T minimum, T maximum, string name)
286312 public static void IsNotInRange < T > ( T value , T minimum , T maximum , string name )
287313 where T : notnull , IComparable < T >
288314 {
289- if ( value . CompareTo ( minimum ) >= 0 && value . CompareTo ( maximum ) < 0 )
315+ if ( value . CompareTo ( minimum ) < 0 || value . CompareTo ( maximum ) >= 0 )
290316 {
291- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotInRange ( value , minimum , maximum , name ) ;
317+ return ;
292318 }
319+
320+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotInRange ( value , minimum , maximum , name ) ;
293321 }
294322
295323 /// <summary>
@@ -309,10 +337,12 @@ public static void IsNotInRange<T>(T value, T minimum, T maximum, string name)
309337 public static void IsBetween < T > ( T value , T minimum , T maximum , string name )
310338 where T : notnull , IComparable < T >
311339 {
312- if ( value . CompareTo ( minimum ) <= 0 || value . CompareTo ( maximum ) >= 0 )
340+ if ( value . CompareTo ( minimum ) > 0 && value . CompareTo ( maximum ) < 0 )
313341 {
314- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsBetween ( value , minimum , maximum , name ) ;
342+ return ;
315343 }
344+
345+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsBetween ( value , minimum , maximum , name ) ;
316346 }
317347
318348 /// <summary>
@@ -332,10 +362,12 @@ public static void IsBetween<T>(T value, T minimum, T maximum, string name)
332362 public static void IsNotBetween < T > ( T value , T minimum , T maximum , string name )
333363 where T : notnull , IComparable < T >
334364 {
335- if ( value . CompareTo ( minimum ) > 0 && value . CompareTo ( maximum ) < 0 )
365+ if ( value . CompareTo ( minimum ) <= 0 || value . CompareTo ( maximum ) >= 0 )
336366 {
337- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotBetween ( value , minimum , maximum , name ) ;
367+ return ;
338368 }
369+
370+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotBetween ( value , minimum , maximum , name ) ;
339371 }
340372
341373 /// <summary>
@@ -355,10 +387,12 @@ public static void IsNotBetween<T>(T value, T minimum, T maximum, string name)
355387 public static void IsBetweenOrEqualTo < T > ( T value , T minimum , T maximum , string name )
356388 where T : notnull , IComparable < T >
357389 {
358- if ( value . CompareTo ( minimum ) < 0 || value . CompareTo ( maximum ) > 0 )
390+ if ( value . CompareTo ( minimum ) >= 0 && value . CompareTo ( maximum ) <= 0 )
359391 {
360- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsBetweenOrEqualTo ( value , minimum , maximum , name ) ;
392+ return ;
361393 }
394+
395+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsBetweenOrEqualTo ( value , minimum , maximum , name ) ;
362396 }
363397
364398 /// <summary>
@@ -378,10 +412,12 @@ public static void IsBetweenOrEqualTo<T>(T value, T minimum, T maximum, string n
378412 public static void IsNotBetweenOrEqualTo < T > ( T value , T minimum , T maximum , string name )
379413 where T : notnull , IComparable < T >
380414 {
381- if ( value . CompareTo ( minimum ) >= 0 && value . CompareTo ( maximum ) <= 0 )
415+ if ( value . CompareTo ( minimum ) < 0 || value . CompareTo ( maximum ) > 0 )
382416 {
383- ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotBetweenOrEqualTo ( value , minimum , maximum , name ) ;
417+ return ;
384418 }
419+
420+ ThrowHelper . ThrowArgumentOutOfRangeExceptionForIsNotBetweenOrEqualTo ( value , minimum , maximum , name ) ;
385421 }
386422 }
387423}
0 commit comments