Ejemplo n.º 1
0
 /*      */ private static double floorOrCeil(
     double paramDouble1, double paramDouble2, double paramDouble3, double paramDouble4)
       /*      */ {
   /*  355 */ int i = Math.getExponent(paramDouble1);
   /*      */
   /*  357 */ if (i < 0)
   /*      */ {
     /*  363 */ return paramDouble1 < 0.0D
         ? paramDouble2
         : paramDouble1 == 0.0D ? paramDouble1 : paramDouble3;
     /*      */ }
   /*  365 */ if (i >= 52)
   /*      */ {
     /*  369 */ return paramDouble1;
     /*      */ }
   /*      */
   /*  373 */ assert ((i >= 0) && (i <= 51));
   /*      */
   /*  375 */ long l1 = Double.doubleToRawLongBits(paramDouble1);
   /*  376 */ long l2 = 4503599627370495L >> i;
   /*      */
   /*  378 */ if ((l2 & l1) == 0L) {
     /*  379 */ return paramDouble1;
     /*      */ }
   /*  381 */ double d = Double.longBitsToDouble(l1 & (l2 ^ 0xFFFFFFFF));
   /*  382 */ if (paramDouble4 * paramDouble1 > 0.0D) /*  383 */ d += paramDouble4;
   /*  384 */ return d;
   /*      */ }