提交 37832c94 编写于 作者: V Vasily Nemkov

Removed code duplication and cleaned up headers mess a bit

上级 70512f82
......@@ -4,6 +4,7 @@
#include <Core/Block.h>
#include <Core/AccurateComparison.h>
#include <Core/callOnTypeIndex.h>
#include <DataTypes/DataTypesNumber.h>
#include <DataTypes/DataTypesDecimal.h>
#include <Columns/ColumnVector.h>
#include <Columns/ColumnsNumber.h>
......
#pragma once
#include <cmath>
#include <common/arithmeticOverflow.h>
#include <Common/typeid_cast.h>
#include <common/likely.h>
#include <Columns/ColumnDecimal.h>
#include <Core/DecimalFunctions.h>
#include <DataTypes/IDataType.h>
......@@ -115,18 +114,12 @@ public:
T wholePart(T x) const
{
if (scale == 0)
return x;
return x / getScaleMultiplier();
return decimalWholePart(x, scale);
}
T fractionalPart(T x) const
{
if (scale == 0)
return 0;
if (x < T(0))
x *= T(-1);
return x % getScaleMultiplier();
return decimalFractionalPart(x, scale);
}
T maxWholeValue() const { return getScaleMultiplier(maxPrecision() - scale) - T(1); }
......
#pragma once
#include <common/arithmeticOverflow.h>
#include <Common/typeid_cast.h>
#include <DataTypes/IDataType.h>
#include <DataTypes/DataTypeDecimalBase.h>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册