/** * Enforce item to be added is Link or nested array of Links * * @param mixed $value Item to be added to collection * * @return array|Link */ protected function enforceItem($value) { if ($value instanceof Link) { return $value; } elseif (is_array($value) && ArrayHelper::isCollection($value)) { return $this->enforceArrayItems($value); } else { return new Link($value); } }