コード例 #1
0
 public override void setElement(int outElementNum, int inputElementNum, ColumnVector inputVector)
 {
     if (inputVector.isRepeating)
     {
         inputElementNum = 0;
     }
     if (inputVector.noNulls || !inputVector.isNull[inputElementNum])
     {
         HiveDecimal hiveDec =
             ((DecimalColumnVector)inputVector).vector[inputElementNum];
         if (hiveDec == null)
         {
             isNull[outElementNum] = true;
             noNulls = false;
         }
         else
         {
             isNull[outElementNum] = false;
             vector[outElementNum] = hiveDec;
         }
     }
     else
     {
         isNull[outElementNum] = true;
         noNulls = false;
     }
 }
コード例 #2
0
        public void setNullDataValue(int elementNum)
        {
            // E.g. For scale 2 the minimum is "0.01"
            HiveDecimal minimumNonZeroValue = HiveDecimal.create(BigInteger.One, scale);

            vector[elementNum] = minimumNonZeroValue;
        }
コード例 #3
0
        public void set(int elementNum, HiveDecimal hiveDec)
        {
            HiveDecimal checkedDec = HiveDecimal.enforcePrecisionScale(hiveDec, precision, scale);

            if (checkedDec == null)
            {
                noNulls            = false;
                isNull[elementNum] = true;
            }
            else
            {
                vector[elementNum] = checkedDec;
            }
        }
コード例 #4
0
 // Fill the all the vector entries with provided value
 public void fill(HiveDecimal value)
 {
     noNulls     = true;
     isRepeating = true;
     vector[0]   = value;
 }