class LazyOpenStream in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/guzzlehttp/psr7/src/LazyOpenStream.php \GuzzleHttp\Psr7\LazyOpenStream
 
Lazily reads or writes to a file that is opened only after an IO operation take place on the stream.
Hierarchy
- class \GuzzleHttp\Psr7\LazyOpenStream implements StreamInterface uses StreamDecoratorTrait
 
Expanded class hierarchy of LazyOpenStream
2 files declare their use of LazyOpenStream
- CurlFactory.php in vendor/
guzzlehttp/ guzzle/ src/ Handler/ CurlFactory.php  - LazyOpenStreamTest.php in vendor/
guzzlehttp/ psr7/ tests/ LazyOpenStreamTest.php  
File
- vendor/
guzzlehttp/ psr7/ src/ LazyOpenStream.php, line 10  
Namespace
GuzzleHttp\Psr7View source
class LazyOpenStream implements StreamInterface {
  use StreamDecoratorTrait;
  /** @var string File to open */
  private $filename;
  /** @var string $mode */
  private $mode;
  /**
   * @param string $filename File to lazily open
   * @param string $mode     fopen mode to use when opening the stream
   */
  public function __construct($filename, $mode) {
    $this->filename = $filename;
    $this->mode = $mode;
  }
  /**
   * Creates the underlying stream lazily when required.
   *
   * @return StreamInterface
   */
  protected function createStream() {
    return stream_for(try_fopen($this->filename, $this->mode));
  }
}