Compare commits
8 Commits
10bd491dd2
...
0.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
| da62588798 | |||
| f56cc5d287 | |||
| 54323d60c8 | |||
| 5f0a0c3a95 | |||
| 40e7bf7898 | |||
| 73e367349f | |||
| 1553d20447 | |||
| dfa5e83d4d |
@@ -1,4 +1,5 @@
|
||||
composer.lock
|
||||
composer.phar
|
||||
test.php
|
||||
/nbproject/
|
||||
/vendor/
|
||||
@@ -1,3 +1,3 @@
|
||||
# Template
|
||||
# Stream
|
||||
|
||||
Potter Framework Component Template
|
||||
Potter Framework Stream Implementation
|
||||
+13
-4
@@ -1,14 +1,23 @@
|
||||
{
|
||||
"name": "potter/template",
|
||||
"description": "Potter Framework Component Template",
|
||||
"name": "potter/stream",
|
||||
"description": "Potter Framework Stream Implementation",
|
||||
"type": "library",
|
||||
"require": {
|
||||
"php": "^8.5"
|
||||
"php": "^8.5",
|
||||
"psr/http-factory": "^1.1",
|
||||
"psr/http-message": "^2.0",
|
||||
"guzzlehttp/psr7": "^2.11",
|
||||
"potter/closeable": "^0.0.1",
|
||||
"potter/detachable": "^0.0.1",
|
||||
"potter/rewindable": "^0.0.1",
|
||||
"potter/stringable": "^0.0.1",
|
||||
"potter/writeable": "^0.0.1",
|
||||
"potter/readable": "^0.0.1"
|
||||
},
|
||||
"license": "MIT",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Potter\\": "src/Potter/"
|
||||
"Potter\\Stream\\": "src/Potter/Stream/"
|
||||
}
|
||||
},
|
||||
"authors": [
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter\Stream;
|
||||
|
||||
use \GuzzleHttp\Psr7\Stream as BaseStream;
|
||||
|
||||
abstract class AbstractStream extends BaseStream implements StreamInterface
|
||||
{ }
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter\Stream;
|
||||
|
||||
interface SeekableInterface
|
||||
{
|
||||
public function isSeekable(): bool;
|
||||
public function seek(int $offset, int $whence = SEEK_SET): void;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter\Stream;
|
||||
|
||||
final class Stream extends AbstractStream
|
||||
{ }
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter\Stream;
|
||||
|
||||
use \Psr\Http\Message\StreamFactoryInterface as BaseStreamFactoryInterface;
|
||||
use \Psr\Http\Message\StreamInterface as BaseStreamInterface;
|
||||
|
||||
interface StreamFactoryInterface extends BaseStreamFactoryInterface
|
||||
{
|
||||
public function createStream(string $content = ''): BaseStreamInterface;
|
||||
public function createStreamFromFile(string $filename, string $mode = 'r'): BaseStreamInterface;
|
||||
public function createStreamFromResource($resource): BaseStreamInterface;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter\Stream;
|
||||
|
||||
use \Potter\Stringable\StringableInterface;
|
||||
use \Potter\Rewindable\RewindableInterface;
|
||||
|
||||
use \Potter\Closeable\CloseableInterface;
|
||||
use \Potter\Detachable\DetachableInterface;
|
||||
|
||||
use \Potter\Readable\ReadableInterface;
|
||||
use \Potter\Writeable\WriteableInterface;
|
||||
|
||||
use \Psr\Http\Message\StreamInterface as PsrStreamInterface;
|
||||
|
||||
interface StreamInterface extends PsrStreamInterface, StringableInterface,
|
||||
ReadableInterface, WriteableInterface,
|
||||
CloseableInterface, DetachableInterface,
|
||||
RewindableInterface, SeekableInterface
|
||||
{
|
||||
public function getSize(): ?int;
|
||||
public function tell(): int;
|
||||
public function eof(): bool;
|
||||
public function getMetadata(?string $key = null);
|
||||
}
|
||||
Reference in New Issue
Block a user