public static void fastIntegerPortion(
      int fastSignum, long fast0, long fast1, long fast2,
      int fastIntegerDigitCount, int fastScale,
      FastHiveDecimal fastResult) {

    if (fastSignum == 0) {
      fastResult.fastReset();
      return;
    }
    if (fastScale == 0) {
      fastResult.fastSet(fastSignum, fast0, fast1, fast2, fastIntegerDigitCount, fastScale);
    }

    // Scale down no rounding to clear fraction.
    fastResult.fastSignum = fastSignum;
    doFastScaleDown(
        fast0, fast1, fast2,
        fastScale,
        fastResult);
    fastResult.fastIntegerDigitCount = fastIntegerDigitCount;
    fastResult.fastScale = 0;
  }
Creates fast decimal from the integer portion.

NOTE: The fastFractionPortion method requires the caller to pass a fastResult
parameter has been reset for better performance.

@param fastSignum the sign of the number (1, 0, or -1)
@param fast0 high bits
@param fast1 second word bits
@param fast2 third word bits
@param fastIntegerDigitCount the number of integer digits
@param fastScale the scale
@param fastResult an object to reuse
storage-api/src/java/org/apache/hadoop/hive/common/type/FastHiveDecimalImpl.java