Skip to content

Commit a079c45

Browse files
authored
Improve abs() return type
1 parent 465af9e commit a079c45

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+465
-4
lines changed

conf/config.neon

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1108,6 +1108,11 @@ services:
11081108
-
11091109
class: PHPStan\Type\BitwiseFlagHelper
11101110

1111+
-
1112+
class: PHPStan\Type\Php\AbsFunctionDynamicReturnTypeExtension
1113+
tags:
1114+
- phpstan.broker.dynamicFunctionReturnTypeExtension
1115+
11111116
-
11121117
class: PHPStan\Type\Php\ArgumentBasedFunctionReturnTypeExtension
11131118
tags:

src/Type/Accessory/AccessoryArrayListType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,11 @@ public function toNumber(): Type
408408
return new ErrorType();
409409
}
410410

411+
public function toAbsoluteNumber(): Type
412+
{
413+
return new ErrorType();
414+
}
415+
411416
public function toInteger(): Type
412417
{
413418
return TypeCombinator::union(

src/Type/Accessory/AccessoryLiteralStringType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,11 @@ public function toNumber(): Type
171171
return new ErrorType();
172172
}
173173

174+
public function toAbsoluteNumber(): Type
175+
{
176+
return new ErrorType();
177+
}
178+
174179
public function toInteger(): Type
175180
{
176181
return new IntegerType();

src/Type/Accessory/AccessoryNonEmptyStringType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,11 @@ public function toNumber(): Type
177177
return new ErrorType();
178178
}
179179

180+
public function toAbsoluteNumber(): Type
181+
{
182+
return new ErrorType();
183+
}
184+
180185
public function toInteger(): Type
181186
{
182187
return new IntegerType();

src/Type/Accessory/AccessoryNonFalsyStringType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,11 @@ public function toNumber(): Type
173173
return new ErrorType();
174174
}
175175

176+
public function toAbsoluteNumber(): Type
177+
{
178+
return new ErrorType();
179+
}
180+
176181
public function toInteger(): Type
177182
{
178183
return new IntegerType();

src/Type/Accessory/AccessoryNumericStringType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,11 @@ public function toNumber(): Type
179179
]);
180180
}
181181

182+
public function toAbsoluteNumber(): Type
183+
{
184+
return $this->toNumber()->toAbsoluteNumber();
185+
}
186+
182187
public function toInteger(): Type
183188
{
184189
return new IntegerType();

src/Type/Accessory/HasOffsetType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,11 @@ public function toNumber(): Type
328328
return new ErrorType();
329329
}
330330

331+
public function toAbsoluteNumber(): Type
332+
{
333+
return new ErrorType();
334+
}
335+
331336
public function toInteger(): Type
332337
{
333338
return new ErrorType();

src/Type/Accessory/HasOffsetValueType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,11 @@ public function toNumber(): Type
374374
return new ErrorType();
375375
}
376376

377+
public function toAbsoluteNumber(): Type
378+
{
379+
return new ErrorType();
380+
}
381+
377382
public function toInteger(): Type
378383
{
379384
return new ErrorType();

src/Type/Accessory/NonEmptyArrayType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,11 @@ public function toNumber(): Type
389389
return new ErrorType();
390390
}
391391

392+
public function toAbsoluteNumber(): Type
393+
{
394+
return new ErrorType();
395+
}
396+
392397
public function toInteger(): Type
393398
{
394399
return new ConstantIntegerType(1);

src/Type/Accessory/OversizedArrayType.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,11 @@ public function toNumber(): Type
385385
return new ErrorType();
386386
}
387387

388+
public function toAbsoluteNumber(): Type
389+
{
390+
return new ErrorType();
391+
}
392+
388393
public function toInteger(): Type
389394
{
390395
return new ConstantIntegerType(1);

0 commit comments

Comments
 (0)