summaryrefslogtreecommitdiff
path: root/vendor/phar-io/manifest/src/values/RequirementCollection.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/phar-io/manifest/src/values/RequirementCollection.php')
-rw-r--r--vendor/phar-io/manifest/src/values/RequirementCollection.php34
1 files changed, 34 insertions, 0 deletions
diff --git a/vendor/phar-io/manifest/src/values/RequirementCollection.php b/vendor/phar-io/manifest/src/values/RequirementCollection.php
new file mode 100644
index 000000000..b82cd955e
--- /dev/null
+++ b/vendor/phar-io/manifest/src/values/RequirementCollection.php
@@ -0,0 +1,34 @@
+<?php declare(strict_types = 1);
+/*
+ * This file is part of PharIo\Manifest.
+ *
+ * (c) Arne Blankerts <[email protected]>, Sebastian Heuer <[email protected]>, Sebastian Bergmann <[email protected]>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace PharIo\Manifest;
+
+class RequirementCollection implements \Countable, \IteratorAggregate {
+ /** @var Requirement[] */
+ private $requirements = [];
+
+ public function add(Requirement $requirement): void {
+ $this->requirements[] = $requirement;
+ }
+
+ /**
+ * @return Requirement[]
+ */
+ public function getRequirements(): array {
+ return $this->requirements;
+ }
+
+ public function count(): int {
+ return \count($this->requirements);
+ }
+
+ public function getIterator(): RequirementCollectionIterator {
+ return new RequirementCollectionIterator($this);
+ }
+}