| Total Complexity | 7 | 
| Total Lines | 35 | 
| Duplicated Lines | 0 % | 
| Changes | 0 | ||
| 1 | <?php  | 
            ||
| 8 | class GroupCollection extends BaseCollection  | 
            ||
| 9 | { | 
            ||
| 10 | /**@var Group[] $items * */  | 
            ||
| 11 | protected $items;  | 
            ||
| 12 | |||
| 13 | /**  | 
            ||
| 14 | * @param \insolita\codestat\lib\collection\Group[] $items  | 
            ||
| 15 | */  | 
            ||
| 16 | public function __construct(array $items = [])  | 
            ||
| 17 |     { | 
            ||
| 18 | $rules = [];  | 
            ||
| 19 |         foreach ($items as $name => $rule) { | 
            ||
| 20 |             if ($rule instanceof Group) { | 
            ||
| 21 | $rules[$rule->getName()] = $rule;  | 
            ||
| 22 |             } else { | 
            ||
| 23 | $rules[$name] = new Group($name, $rule);  | 
            ||
| 24 | }  | 
            ||
| 25 | }  | 
            ||
| 26 | parent::__construct($rules);  | 
            ||
| 27 | }  | 
            ||
| 28 | |||
| 29 | public function fill(\ReflectionClass $reflection)  | 
            ||
| 30 |     { | 
            ||
| 31 |         foreach ($this->items as $name => $group) { | 
            ||
| 32 |             if ($group->validate($reflection)) { | 
            ||
| 33 | $group->addFile($reflection->getFileName());  | 
            ||
| 34 | break;  | 
            ||
| 35 | }  | 
            ||
| 36 | }  | 
            ||
| 37 | return $this;  | 
            ||
| 38 | }  | 
            ||
| 39 | |||
| 40 | public static function make(array $items)  | 
            ||
| 43 | }  | 
            ||
| 44 | }  | 
            ||
| 45 |