File tree Expand file tree Collapse file tree 6 files changed +35
-6
lines changed Expand file tree Collapse file tree 6 files changed +35
-6
lines changed Original file line number Diff line number Diff line change 11/.gitattributes export-ignore
22/.github / export-ignore
33/.gitignore export-ignore
4+ /phpstan.neon.dist export-ignore
45/phpunit.xml.dist export-ignore
56/tests / export-ignore
7+ /types / export-ignore
Original file line number Diff line number Diff line change 2020 coverage : xdebug
2121 - run : composer install
2222 - run : vendor/bin/phpunit --coverage-text
23+
24+ PHPStan :
25+ name : PHPStan
26+ runs-on : ubuntu-20.04
27+ strategy :
28+ matrix :
29+ php :
30+ - 8.1
31+ steps :
32+ - uses : actions/checkout@v3
33+ - uses : shivammathur/setup-php@v2
34+ with :
35+ php-version : ${{ matrix.php }}
36+ - run : vendor/bin/phpstan
Original file line number Diff line number Diff line change 3131 "react/promise" : " ^3.0 || ^2.8 || ^1.2.1"
3232 },
3333 "require-dev" : {
34- "phpunit/phpunit" : " ^9.3"
34+ "phpunit/phpunit" : " ^9.3" ,
35+ "phpstan/phpstan" : " ^1.8"
3536 },
3637 "autoload" : {
3738 "psr-4" : {
Original file line number Diff line number Diff line change 1+ parameters:
2+ paths:
3+ - types
4+ level: max
Original file line number Diff line number Diff line change 174174 * $promise->cancel();
175175 * await($promise);
176176 * ```
177- *
178- * @param callable(mixed ...$args):mixed $function
179- * @return callable(): PromiseInterface<mixed >
177+ * @template T
178+ * @param callable(): T $function
179+ * @return callable(mixed ...$args ): PromiseInterface<T >
180180 * @since 4.0.0
181181 * @see coroutine()
182182 */
@@ -266,8 +266,9 @@ function async(callable $function): callable
266266 * }
267267 * ```
268268 *
269- * @param PromiseInterface $promise
270- * @return mixed returns whatever the promise resolves to
269+ * @template T
270+ * @param PromiseInterface<T> $promise
271+ * @return T
271272 * @throws \Exception when the promise is rejected with an `Exception`
272273 * @throws \Throwable when the promise is rejected with a `Throwable`
273274 * @throws \UnexpectedValueException when the promise is rejected with an unexpected value (Promise API v1 or v2 only)
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ use function PHPStan \Testing \assertType ;
4+ use function React \Async \await ;
5+ use function React \Promise \resolve ;
6+
7+ assertType ('bool ' , await (resolve (true )));
You can’t perform that action at this time.
0 commit comments