protected function setName()
    {
        $info = $this->getInfo();

        if (! is_array($info)) {
            $this->setError('No Theme Data');
            throw new NoThemeData($this->getYmlPath(), $this);
        } elseif (! array_key_exists('name', $info)) {
            $this->setError();
            throw new NoThemeName($this->getYmlPath(), $this);
        } elseif (empty($info['name'])) {
            $this->setError('Empty Theme Name');
            throw new EmptyThemeName($this->getYmlPath(), $this);
        }
        $this->name = $info['name'];

        return $this;
    }
protected function setName()
    {
        $info = $this->getInfo();

        if (! is_array($info)) {
            $this->setError('No Theme Data');
            throw new NoThemeData($this->getYmlPath(), $this);
        } elseif (! array_key_exists('name', $info)) {
            $this->setError();
            throw new NoThemeName($this->getYmlPath(), $this);
        } elseif (empty($info['name'])) {
            $this->setError('Empty Theme Name');
            throw new EmptyThemeName($this->getYmlPath(), $this);
        }
        $this->name = $info['name'];

        return $this;
    }
@throws \ThemeManager\Exceptions\NoThemeData When theme.yml is empty
@throws \ThemeManager\Exceptions\NoThemeName When themes name isn't defined
@throws \ThemeManager\Exceptions\EmptyThemeName When themes name is empty

@return $this