File tree Expand file tree Collapse file tree 10 files changed +56
-34
lines changed
Expand file tree Collapse file tree 10 files changed +56
-34
lines changed Original file line number Diff line number Diff line change 44
55namespace ReactParallel \Pool \Worker ;
66
7- final class Result
7+ interface Result
88{
9- private object $ result ;
10-
11- public function __construct (object $ result )
12- {
13- $ this ->result = $ result ;
14- }
15-
16- public function result (): object
17- {
18- return $ this ->result ;
19- }
9+ public function result (): object ;
2010}
Original file line number Diff line number Diff line change 44
55namespace ReactParallel \Pool \Worker ;
66
7- final class Work
7+ interface Work
88{
9- private object $ result ;
10-
11- public function __construct (object $ result )
12- {
13- $ this ->result = $ result ;
14- }
15-
16- public function work (): object
17- {
18- return $ this ->result ;
19- }
9+ public function work (): object ;
2010}
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace ReactParallel \Pool \Worker \Workers ;
6+
7+ use ReactParallel \Pool \Worker \Result as ResultContract ;
8+
9+ final class Result implements ResultContract
10+ {
11+ private object $ result ;
12+
13+ public function __construct (object $ result )
14+ {
15+ $ this ->result = $ result ;
16+ }
17+
18+ public function result (): object
19+ {
20+ return $ this ->result ;
21+ }
22+ }
Original file line number Diff line number Diff line change 44
55namespace ReactParallel \Pool \Worker \Workers ;
66
7- use ReactParallel \Pool \Worker \Result ;
8- use ReactParallel \Pool \Worker \Work ;
7+ use ReactParallel \Pool \Worker \Work as WorkContract ;
98use ReactParallel \Pool \Worker \Work \Worker as WorkerInterface ;
109
1110final class ReturnWorker implements WorkerInterface
1211{
13- public function perform (Work $ work ): Result
12+ public function perform (WorkContract $ work ): Result
1413 {
1514 return new Result ($ work ->work ());
1615 }
Original file line number Diff line number Diff line change 44
55namespace ReactParallel \Pool \Worker \Workers ;
66
7- use ReactParallel \Pool \Worker \Result ;
8- use ReactParallel \Pool \Worker \Work ;
7+ use ReactParallel \Pool \Worker \Work as WorkContract ;
98use ReactParallel \Pool \Worker \Work \Worker as WorkerInterface ;
109
1110final class ThrowingReturnWorker implements WorkerInterface
1211{
13- public function perform (Work $ work ): Result
12+ public function perform (WorkContract $ work ): Result
1413 {
1514 throw new ThrownWork ($ work );
1615 }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace ReactParallel \Pool \Worker \Workers ;
6+
7+ use ReactParallel \Pool \Worker \Work as WorkContract ;
8+
9+ final class Work implements WorkContract
10+ {
11+ private object $ work ;
12+
13+ public function __construct (object $ work )
14+ {
15+ $ this ->work = $ work ;
16+ }
17+
18+ public function work (): object
19+ {
20+ return $ this ->work ;
21+ }
22+ }
Original file line number Diff line number Diff line change 99use parallel \Runtime ;
1010use ReactParallel \Pool \Worker \Message \Work as WorkMessage ;
1111use ReactParallel \Pool \Worker \Thread \Performer ;
12- use ReactParallel \Pool \Worker \Work ;
1312use ReactParallel \Pool \Worker \Workers \ReturnWorkerFactory ;
1413use ReactParallel \Pool \Worker \Workers \ThrowingReturnWorkerFactory ;
14+ use ReactParallel \Pool \Worker \Workers \Work ;
1515use WyriHaximus \AsyncTestUtilities \AsyncTestCase ;
1616
1717use function dirname ;
Original file line number Diff line number Diff line change 1010use ReactParallel \EventLoop \EventLoopBridge ;
1111use ReactParallel \Pool \Infinite \Group ;
1212use ReactParallel \Pool \Infinite \Infinite ;
13- use ReactParallel \Pool \Worker \Work ;
1413use ReactParallel \Pool \Worker \Worker ;
1514use ReactParallel \Pool \Worker \Workers \ReturnWorkerFactory ;
1615use ReactParallel \Pool \Worker \Workers \ThrowingReturnWorkerFactory ;
1716use ReactParallel \Pool \Worker \Workers \ThrownWork ;
17+ use ReactParallel \Pool \Worker \Workers \Work ;
1818use Throwable ;
1919use WyriHaximus \AsyncTestUtilities \AsyncTestCase ;
2020use WyriHaximus \PoolInfo \Info ;
Original file line number Diff line number Diff line change 55namespace ReactParallel \Tests \Pool \Worker \Workers ;
66
77use Money \Money ;
8- use ReactParallel \Pool \Worker \Work ;
98use ReactParallel \Pool \Worker \Workers \ReturnWorkerFactory ;
9+ use ReactParallel \Pool \Worker \Workers \Work ;
1010use WyriHaximus \AsyncTestUtilities \AsyncTestCase ;
1111
1212final class ReturnTest extends AsyncTestCase
Original file line number Diff line number Diff line change 55namespace ReactParallel \Tests \Pool \Worker \Workers ;
66
77use Money \Money ;
8- use ReactParallel \Pool \Worker \Work ;
98use ReactParallel \Pool \Worker \Workers \ThrowingReturnWorkerFactory ;
109use ReactParallel \Pool \Worker \Workers \ThrownWork ;
10+ use ReactParallel \Pool \Worker \Workers \Work ;
1111use Throwable ;
1212use WyriHaximus \AsyncTestUtilities \AsyncTestCase ;
1313
You can’t perform that action at this time.
0 commit comments