You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
224 lines
4.8 KiB
PHP
224 lines
4.8 KiB
PHP
<?php declare(strict_types=1);
|
|
|
|
/*
|
|
* This file is part of Composer.
|
|
*
|
|
* (c) Nils Adermann <naderman@naderman.de>
|
|
* Jordi Boggiano <j.boggiano@seld.be>
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Composer\Package;
|
|
|
|
/**
|
|
* @author Jordi Boggiano <j.boggiano@seld.be>
|
|
*/
|
|
class RootAliasPackage extends CompleteAliasPackage implements RootPackageInterface
|
|
{
|
|
/** @var RootPackage */
|
|
protected $aliasOf;
|
|
|
|
/**
|
|
* All descendants' constructors should call this parent constructor
|
|
*
|
|
* @param RootPackage $aliasOf The package this package is an alias of
|
|
* @param string $version The version the alias must report
|
|
* @param string $prettyVersion The alias's non-normalized version
|
|
*/
|
|
public function __construct(RootPackage $aliasOf, string $version, string $prettyVersion)
|
|
{
|
|
parent::__construct($aliasOf, $version, $prettyVersion);
|
|
}
|
|
|
|
/**
|
|
* @return RootPackage
|
|
*/
|
|
public function getAliasOf()
|
|
{
|
|
return $this->aliasOf;
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getAliases(): array
|
|
{
|
|
return $this->aliasOf->getAliases();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getMinimumStability(): string
|
|
{
|
|
return $this->aliasOf->getMinimumStability();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getStabilityFlags(): array
|
|
{
|
|
return $this->aliasOf->getStabilityFlags();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getReferences(): array
|
|
{
|
|
return $this->aliasOf->getReferences();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getPreferStable(): bool
|
|
{
|
|
return $this->aliasOf->getPreferStable();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function getConfig(): array
|
|
{
|
|
return $this->aliasOf->getConfig();
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setRequires(array $requires): void
|
|
{
|
|
$this->requires = $this->replaceSelfVersionDependencies($requires, Link::TYPE_REQUIRE);
|
|
|
|
$this->aliasOf->setRequires($requires);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setDevRequires(array $devRequires): void
|
|
{
|
|
$this->devRequires = $this->replaceSelfVersionDependencies($devRequires, Link::TYPE_DEV_REQUIRE);
|
|
|
|
$this->aliasOf->setDevRequires($devRequires);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setConflicts(array $conflicts): void
|
|
{
|
|
$this->conflicts = $this->replaceSelfVersionDependencies($conflicts, Link::TYPE_CONFLICT);
|
|
$this->aliasOf->setConflicts($conflicts);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setProvides(array $provides): void
|
|
{
|
|
$this->provides = $this->replaceSelfVersionDependencies($provides, Link::TYPE_PROVIDE);
|
|
$this->aliasOf->setProvides($provides);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setReplaces(array $replaces): void
|
|
{
|
|
$this->replaces = $this->replaceSelfVersionDependencies($replaces, Link::TYPE_REPLACE);
|
|
$this->aliasOf->setReplaces($replaces);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setAutoload(array $autoload): void
|
|
{
|
|
$this->aliasOf->setAutoload($autoload);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setDevAutoload(array $devAutoload): void
|
|
{
|
|
$this->aliasOf->setDevAutoload($devAutoload);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setStabilityFlags(array $stabilityFlags): void
|
|
{
|
|
$this->aliasOf->setStabilityFlags($stabilityFlags);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setMinimumStability($minimumStability): void
|
|
{
|
|
$this->aliasOf->setMinimumStability($minimumStability);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setPreferStable($preferStable): void
|
|
{
|
|
$this->aliasOf->setPreferStable($preferStable);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setConfig(array $config): void
|
|
{
|
|
$this->aliasOf->setConfig($config);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setReferences(array $references): void
|
|
{
|
|
$this->aliasOf->setReferences($references);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setAliases(array $aliases): void
|
|
{
|
|
$this->aliasOf->setAliases($aliases);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setSuggests(array $suggests): void
|
|
{
|
|
$this->aliasOf->setSuggests($suggests);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function setExtra(array $extra): void
|
|
{
|
|
$this->aliasOf->setExtra($extra);
|
|
}
|
|
|
|
public function __clone()
|
|
{
|
|
parent::__clone();
|
|
$this->aliasOf = clone $this->aliasOf;
|
|
}
|
|
}
|