A game about forced loneliness, made by TACStudios
1using System; 2 3namespace Unity.VisualScripting 4{ 5 public partial class EnsureThat 6 { 7 public void Is<T>(T param, T expected) where T : struct, IComparable<T> 8 { 9 if (!Ensure.IsActive) 10 { 11 return; 12 } 13 14 if (!param.IsEq(expected)) 15 { 16 throw new ArgumentException(ExceptionMessages.Comp_Is_Failed.Inject(param, expected), paramName); 17 } 18 } 19 20 public void IsNot<T>(T param, T expected) where T : struct, IComparable<T> 21 { 22 if (!Ensure.IsActive) 23 { 24 return; 25 } 26 27 if (param.IsEq(expected)) 28 { 29 throw new ArgumentException(ExceptionMessages.Comp_IsNot_Failed.Inject(param, expected), paramName); 30 } 31 } 32 33 public void IsLt<T>(T param, T limit) where T : struct, IComparable<T> 34 { 35 if (!Ensure.IsActive) 36 { 37 return; 38 } 39 40 if (!param.IsLt(limit)) 41 { 42 throw new ArgumentException(ExceptionMessages.Comp_IsNotLt.Inject(param, limit), paramName); 43 } 44 } 45 46 public void IsLte<T>(T param, T limit) where T : struct, IComparable<T> 47 { 48 if (!Ensure.IsActive) 49 { 50 return; 51 } 52 53 if (param.IsGt(limit)) 54 { 55 throw new ArgumentException(ExceptionMessages.Comp_IsNotLte.Inject(param, limit), paramName); 56 } 57 } 58 59 public void IsGt<T>(T param, T limit) where T : struct, IComparable<T> 60 { 61 if (!Ensure.IsActive) 62 { 63 return; 64 } 65 66 if (!param.IsGt(limit)) 67 { 68 throw new ArgumentException(ExceptionMessages.Comp_IsNotGt.Inject(param, limit), paramName); 69 } 70 } 71 72 public void IsGte<T>(T param, T limit) where T : struct, IComparable<T> 73 { 74 if (!Ensure.IsActive) 75 { 76 return; 77 } 78 79 if (param.IsLt(limit)) 80 { 81 throw new ArgumentException(ExceptionMessages.Comp_IsNotGte.Inject(param, limit), paramName); 82 } 83 } 84 85 public void IsInRange<T>(T param, T min, T max) where T : struct, IComparable<T> 86 { 87 if (!Ensure.IsActive) 88 { 89 return; 90 } 91 92 if (param.IsLt(min)) 93 { 94 throw new ArgumentException(ExceptionMessages.Comp_IsNotInRange_ToLow.Inject(param, min), paramName); 95 } 96 97 if (param.IsGt(max)) 98 { 99 throw new ArgumentException(ExceptionMessages.Comp_IsNotInRange_ToHigh.Inject(param, max), paramName); 100 } 101 } 102 } 103}