v1.0.0 2022-05-30 20:28 UTC

This package is not auto-updated.

Last update: 2024-09-24 19:05:22 UTC


README

Code Coverage Badge

此组件是具有严格类型的不可变有序元素序列的简单实现。这意味着一旦创建了元组,它就不能被修改。元组还提供相同类型的元素。

安装

composer require rocketfellows/tuple

使用示例

类型化项目类

class TupleItem
{
    private $id;

    public function __construct(int $id)
    {
        $this->id = $id;
    }

    public function getId(): int
    {
        return $this->id;
    }
}

项目元组实现

use rocketfellows\tuple\Tuple;

class Items extends Tuple
{
    public function __construct(TupleItem ...$items)
    {
        parent::__construct(...$items);
    }

    public function current(): ?TupleItem
    {
        return parent::current();
    }
}

加载元组并遍历

$firstTupleItem = new TupleItem(1);
$secondTupleItem = new TupleItem(2);
$thirdTupleItem = new TupleItem(3);

$items = new Items($firstTupleItem, $secondTupleItem, $thirdTupleItem);

foreach ($items as $item) {
    print_r($item->getId());
}

结果

1
2
3

贡献

欢迎提交拉取请求。如果有重大更改,请先打开一个问题进行讨论。

请确保根据需要更新测试。