mirror of
https://github.com/shopspring/decimal.git
synced 2024-11-23 04:40:49 +01:00
Merge 04b54abf9e
into a1bdfc355e
This commit is contained in:
commit
0d26413f27
1 changed files with 3 additions and 3 deletions
|
@ -1277,7 +1277,7 @@ func (d Decimal) IsInteger() bool {
|
|||
q := new(big.Int).Set(d.value)
|
||||
for z := abs(d.exp); z > 0; z-- {
|
||||
q.QuoRem(q, tenInt, &r)
|
||||
if r.Cmp(zeroInt) != 0 {
|
||||
if r.Sign() != 0 {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
@ -1537,7 +1537,7 @@ func (d Decimal) Round(places int32) Decimal {
|
|||
// floor for positive numbers, ceil for negative numbers
|
||||
_, m := ret.value.DivMod(ret.value, tenInt, new(big.Int))
|
||||
ret.exp++
|
||||
if ret.value.Sign() < 0 && m.Cmp(zeroInt) != 0 {
|
||||
if ret.value.Sign() < 0 && m.Sign() != 0 {
|
||||
ret.value.Add(ret.value, oneInt)
|
||||
}
|
||||
|
||||
|
@ -1739,7 +1739,7 @@ func (d Decimal) Ceil() Decimal {
|
|||
exp.Exp(exp, big.NewInt(-int64(d.exp)), nil)
|
||||
|
||||
z, m := new(big.Int).DivMod(d.value, exp, new(big.Int))
|
||||
if m.Cmp(zeroInt) != 0 {
|
||||
if m.Sign() != 0 {
|
||||
z.Add(z, oneInt)
|
||||
}
|
||||
return Decimal{value: z, exp: 0}
|
||||
|
|
Loading…
Reference in a new issue