Exemplo n.º 1
0
 static GM()
 {
     if (!JemUtil.IsNumericType <TData>())
     {
         throw new ArithmeticException();
     }
 }
Exemplo n.º 2
0
 static GM()
 {
     if (!JemUtil.IsNumericType <TData>())
     {
         throw new InvalidOperationException($"Type {typeof(TData).Name} is not a numeric type.");
     }
 }
Exemplo n.º 3
0
        public unsafe static double GenericSqrt <TReturn>(TReturn l) where TReturn : struct
        {
            if (!JemUtil.IsNumericType <TReturn>())
            {
                throw new ArithmeticException();
            }
            switch (l)
            {
            case SByte v:
                return(Math.Sqrt(v));

            case Byte v:
                return(Math.Sqrt(v));

            case Int32 v:
                return(Math.Sqrt(v));

            case UInt32 v:
                return(Math.Sqrt(v));

            case Int16 v:
                return(Math.Sqrt(v));

            case UInt16 v:
                return(Math.Sqrt(v));

            case Int64 v:
                return(Math.Sqrt(v));

            case UInt64 v:
                return(Math.Sqrt(v));

            default:
                throw new ArithmeticException();
            }
        }