1 | <?php |
||
19 | class Collection extends ArrayObject implements CollectionInterface |
||
20 | { |
||
21 | private $itemType; |
||
22 | |||
23 | private $validationCallback; |
||
24 | |||
25 | public function append($value) |
||
31 | |||
32 | private function validate($item) |
||
37 | |||
38 | private function validateItemType($item) |
||
44 | |||
45 | private function validateCallback($item) |
||
57 | |||
58 | public function setItemType($type) |
||
62 | |||
63 | public function has($key) |
||
67 | |||
68 | public function set($key, $value) |
||
72 | |||
73 | public function offsetSet($index, $newValue) |
||
79 | |||
80 | public function get($key) |
||
84 | |||
85 | /** |
||
86 | * @return Generator |
||
87 | */ |
||
88 | public function getGenerator() |
||
94 | |||
95 | /** |
||
96 | * Registers a callback function to validate new Collection entries. |
||
97 | * The callback function must return a boolean value. |
||
98 | * When the callback returns false the new item will not be added to the collection. |
||
99 | * |
||
100 | * @param callable $callback |
||
101 | */ |
||
102 | public function setValidationCallback(callable $callback) |
||
106 | } |
||
107 |