├── .github └── workflows │ └── ci.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── composer.json ├── composer.lock ├── examples ├── 00-hello-world.php ├── 01-join.php ├── 02-race.php ├── 03-async_map.php ├── 04-then.php └── 05-streams.php ├── phpunit.xml ├── psalm.xml ├── src ├── FilterStream.php ├── FilterStreamTrait.php ├── Future.php ├── FutureInterface.php ├── JoinFuture.php ├── MapStream.php ├── MapStreamTrait.php ├── RaceFuture.php ├── Stream.php ├── StreamInterface.php ├── ThenFuture.php ├── ThenFutureTrait.php └── facades.php └── tests ├── FilterStreamTest.php ├── FutureTest.php ├── JoinFutureTest.php ├── MapStreamTest.php ├── StreamTest.php └── ThenFutureTest.php /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/README.md -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/composer.json -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/composer.lock -------------------------------------------------------------------------------- /examples/00-hello-world.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/00-hello-world.php -------------------------------------------------------------------------------- /examples/01-join.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/01-join.php -------------------------------------------------------------------------------- /examples/02-race.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/02-race.php -------------------------------------------------------------------------------- /examples/03-async_map.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/03-async_map.php -------------------------------------------------------------------------------- /examples/04-then.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/04-then.php -------------------------------------------------------------------------------- /examples/05-streams.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/examples/05-streams.php -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/phpunit.xml -------------------------------------------------------------------------------- /psalm.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/psalm.xml -------------------------------------------------------------------------------- /src/FilterStream.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/FilterStream.php -------------------------------------------------------------------------------- /src/FilterStreamTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/FilterStreamTrait.php -------------------------------------------------------------------------------- /src/Future.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/Future.php -------------------------------------------------------------------------------- /src/FutureInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/FutureInterface.php -------------------------------------------------------------------------------- /src/JoinFuture.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/JoinFuture.php -------------------------------------------------------------------------------- /src/MapStream.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/MapStream.php -------------------------------------------------------------------------------- /src/MapStreamTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/MapStreamTrait.php -------------------------------------------------------------------------------- /src/RaceFuture.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/RaceFuture.php -------------------------------------------------------------------------------- /src/Stream.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/Stream.php -------------------------------------------------------------------------------- /src/StreamInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/StreamInterface.php -------------------------------------------------------------------------------- /src/ThenFuture.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/ThenFuture.php -------------------------------------------------------------------------------- /src/ThenFutureTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/ThenFutureTrait.php -------------------------------------------------------------------------------- /src/facades.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/src/facades.php -------------------------------------------------------------------------------- /tests/FilterStreamTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/FilterStreamTest.php -------------------------------------------------------------------------------- /tests/FutureTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/FutureTest.php -------------------------------------------------------------------------------- /tests/JoinFutureTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/JoinFutureTest.php -------------------------------------------------------------------------------- /tests/MapStreamTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/MapStreamTest.php -------------------------------------------------------------------------------- /tests/StreamTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/StreamTest.php -------------------------------------------------------------------------------- /tests/ThenFutureTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leocavalcante/swoole-futures/HEAD/tests/ThenFutureTest.php --------------------------------------------------------------------------------