Skip to content

Commit 800c0b8

Browse files
authored
Release/3.0.2 (#17)
1 parent 9a67af9 commit 800c0b8

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed

infection.json.dist

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
"BCMath": false,
1818
"CastInt": false,
1919
"Ternary": false,
20-
"MethodCallRemoval": false
20+
"MethodCallRemoval": false,
21+
"ProtectedVisibility": false
2122
},
2223
"phpUnit": {
2324
"configDir": "",

src/BigDecimal.php

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,21 @@
1010

1111
class BigDecimal extends BigNumberBehavior implements BigNumber
1212
{
13-
public static function fromFloat(float $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): BigNumber
13+
protected function __construct(string|float $value, ?int $scale = null)
1414
{
1515
$scale = Scale::from(value: $scale);
1616
$number = Number::from(value: $value);
1717

18-
return new BigDecimal(number: $number, scale: $scale);
18+
parent::__construct(number: $number, scale: $scale);
1919
}
2020

21-
public static function fromString(string $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): BigNumber
21+
public static function fromFloat(float $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): BigDecimal
2222
{
23-
$scale = Scale::from(value: $scale);
24-
$number = Number::from(value: $value);
23+
return new BigDecimal(value: $value, scale: $scale);
24+
}
2525

26-
return new BigDecimal(number: $number, scale: $scale);
26+
public static function fromString(string $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): BigDecimal
27+
{
28+
return new BigDecimal(value: $value, scale: $scale);
2729
}
2830
}

src/PositiveBigDecimal.php

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,11 @@
1111

1212
class PositiveBigDecimal extends BigNumberBehavior implements BigNumber
1313
{
14-
private function __construct(Number $number, Scale $scale)
14+
protected function __construct(string|float $value, ?int $scale = null)
1515
{
16+
$scale = Scale::from(value: $scale);
17+
$number = Number::from(value: $value);
18+
1619
if ($number->isNegativeOrZero()) {
1720
throw new NonPositiveNumber(number: $number);
1821
}
@@ -22,17 +25,11 @@ private function __construct(Number $number, Scale $scale)
2225

2326
public static function fromFloat(float $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): PositiveBigDecimal
2427
{
25-
$scale = Scale::from(value: $scale);
26-
$number = Number::from(value: $value);
27-
28-
return new PositiveBigDecimal(number: $number, scale: $scale);
28+
return new PositiveBigDecimal(value: $value, scale: $scale);
2929
}
3030

3131
public static function fromString(string $value, ?int $scale = BigNumber::AUTOMATIC_SCALE): PositiveBigDecimal
3232
{
33-
$scale = Scale::from(value: $scale);
34-
$number = Number::from(value: $value);
35-
36-
return new PositiveBigDecimal(number: $number, scale: $scale);
33+
return new PositiveBigDecimal(value: $value, scale: $scale);
3734
}
3835
}

0 commit comments

Comments
 (0)