protected function checkForCircularDependency($parent, array $parentParameters)
    {
        foreach ($this->requirements as $attribute => $parameters) {
            if (in_array($parent, $parameters) && in_array($attribute, $parentParameters)) {
                throw new LogicException(sprintf(
                    'Circular parameter dependency detected. Parameters "%s" and "%s" depend on each other.',
                    $parent,
                    $attribute
                ));
            }
        }
    }