1
0
mirror of https://github.com/danog/amp.git synced 2024-12-14 02:17:26 +01:00
amp/lib/Stream.php

31 lines
777 B
PHP
Raw Normal View History

2020-05-13 17:15:21 +02:00
<?php
namespace Amp;
/**
* A stream is an asynchronous set of ordered values.
*
* @template-covariant TValue
*/
interface Stream
{
/**
* Succeeds with the emitted value if the stream has emitted a value or null if the stream has completed.
2020-05-21 17:11:22 +02:00
* If the stream fails, the returned promise will fail with the same exception.
2020-05-13 17:15:21 +02:00
*
2020-05-21 17:11:22 +02:00
* @return Promise<mixed|null> Resolves with null if the stream has completed.
2020-05-16 17:39:34 +02:00
*
2020-05-21 17:11:22 +02:00
* @psalm-return Promise<TValue|null>
2020-05-13 17:15:21 +02:00
*
* @throws \Throwable The exception used to fail the stream.
*/
public function continue(): Promise;
/**
* Disposes of the stream, indicating the consumer is no longer interested in the stream output.
*
* @return void
*/
public function dispose();
2020-05-13 17:15:21 +02:00
}