PHP Класс Wikimedia\Composer\Merge\ExtraPackage

Автор: Bryan Davis ([email protected])
Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
$composer Composer\Composer
$json array
$logger Wikimedia\Composer\Logger
$package Composer\Package\CompletePackage
$path string
$versionParser Composer\Package\Version\VersionParser

Открытые методы

Метод Описание
__construct ( string $path, Composer\Composer $composer, Wikimedia\Composer\Logger $logger )
getIncludes ( ) : array Get list of additional packages to include if precessing recursively.
getRequires ( ) : array Get list of additional packages to require if precessing recursively.
mergeDevInto ( Composer\Package\RootPackageInterface $root, PluginState $state ) Merge just the dev portion into a RootPackageInterface
mergeExtra ( Composer\Package\RootPackageInterface $root, PluginState $state ) Merge extra config into a RootPackageInterface
mergeExtraArray ( boolean $mergeDeep, array $array1, array $array2 ) : array Merges two arrays either via arrayMergeDeep or via array_merge.
mergeInto ( Composer\Package\RootPackageInterface $root, PluginState $state ) Merge this package into a RootPackageInterface
unwrapIfNeeded ( Composer\Package\RootPackageInterface $root, string $method = 'setExtra' ) : Composer\Package\RootPackageInterface | Composer\Package\RootPackage Get a full featured Package from a RootPackageInterface.

Защищенные методы

Метод Описание
extractReferences ( array $requires, array $references ) : array Extract vcs revision from version constraint (dev-master#abc123.
fixRelativePaths ( array $paths ) : array Fix a collection of paths that are relative to this package to be relative to the base package.
loadPackage ( array $json ) : Composer\Package\CompletePackage
mergeAutoload ( string $type, Composer\Package\RootPackageInterface $root ) Merge autoload or autoload-dev into a RootPackageInterface
mergeOrDefer ( string $type, array $origin, array $merge, PluginState $state ) : array Merge two collections of package links and collect duplicates for subsequent processing.
mergePackageLinks ( string $type, Composer\Package\RootPackageInterface $root ) Merge package links of the given type into a RootPackageInterface
mergeReferences ( Composer\Package\RootPackageInterface $root ) Update the root packages reference information.
mergeRequires ( string $type, Composer\Package\RootPackageInterface $root, PluginState $state ) Merge require or require-dev into a RootPackageInterface
mergeStabilityFlags ( Composer\Package\RootPackageInterface $root, array $requires ) Extract and merge stability flags from the given collection of requires and merge them into a RootPackageInterface
mergeSuggests ( Composer\Package\RootPackageInterface $root ) Merge suggested packages into a RootPackageInterface
prependRepositories ( Composer\Package\RootPackageInterface $root ) Add a collection of repositories described by the given configuration to the given package and the global repository manager.
readPackageJson ( string $path ) : array Read the contents of a composer.json style file into an array.
replaceSelfVersionDependencies ( string $type, array $links, Composer\Package\RootPackageInterface $root ) : array Update Links with a 'self.version' constraint with the root package's version.

Описание методов

__construct() публичный Метод

public __construct ( string $path, Composer\Composer $composer, Wikimedia\Composer\Logger $logger )
$path string Path to composer.json file
$composer Composer\Composer
$logger Wikimedia\Composer\Logger

extractReferences() защищенный Метод

Extract vcs revision from version constraint (dev-master#abc123.
См. также: RootPackageLoader::extractReferences()
protected extractReferences ( array $requires, array $references ) : array
$requires array
$references array
Результат array

fixRelativePaths() защищенный Метод

Fix a collection of paths that are relative to this package to be relative to the base package.
protected fixRelativePaths ( array $paths ) : array
$paths array
Результат array

getIncludes() публичный Метод

Get list of additional packages to include if precessing recursively.
public getIncludes ( ) : array
Результат array

getRequires() публичный Метод

Get list of additional packages to require if precessing recursively.
public getRequires ( ) : array
Результат array

loadPackage() защищенный Метод

protected loadPackage ( array $json ) : Composer\Package\CompletePackage
$json array
Результат Composer\Package\CompletePackage

mergeAutoload() защищенный Метод

Merge autoload or autoload-dev into a RootPackageInterface
protected mergeAutoload ( string $type, Composer\Package\RootPackageInterface $root )
$type string 'autoload' or 'devAutoload'
$root Composer\Package\RootPackageInterface

mergeDevInto() публичный Метод

Merge just the dev portion into a RootPackageInterface
public mergeDevInto ( Composer\Package\RootPackageInterface $root, PluginState $state )
$root Composer\Package\RootPackageInterface
$state PluginState

mergeExtra() публичный Метод

Merge extra config into a RootPackageInterface
public mergeExtra ( Composer\Package\RootPackageInterface $root, PluginState $state )
$root Composer\Package\RootPackageInterface
$state PluginState

mergeExtraArray() публичный статический Метод

Merges two arrays either via arrayMergeDeep or via array_merge.
public static mergeExtraArray ( boolean $mergeDeep, array $array1, array $array2 ) : array
$mergeDeep boolean
$array1 array
$array2 array
Результат array

mergeInto() публичный Метод

Merge this package into a RootPackageInterface
public mergeInto ( Composer\Package\RootPackageInterface $root, PluginState $state )
$root Composer\Package\RootPackageInterface
$state PluginState

mergeOrDefer() защищенный Метод

Merge two collections of package links and collect duplicates for subsequent processing.
protected mergeOrDefer ( string $type, array $origin, array $merge, PluginState $state ) : array
$type string 'require' or 'require-dev'
$origin array Primary collection
$merge array Additional collection
$state PluginState
Результат array Merged collection

mergeReferences() защищенный Метод

Update the root packages reference information.
protected mergeReferences ( Composer\Package\RootPackageInterface $root )
$root Composer\Package\RootPackageInterface

mergeRequires() защищенный Метод

Merge require or require-dev into a RootPackageInterface
protected mergeRequires ( string $type, Composer\Package\RootPackageInterface $root, PluginState $state )
$type string 'require' or 'require-dev'
$root Composer\Package\RootPackageInterface
$state PluginState

mergeStabilityFlags() защищенный Метод

Extract and merge stability flags from the given collection of requires and merge them into a RootPackageInterface
protected mergeStabilityFlags ( Composer\Package\RootPackageInterface $root, array $requires )
$root Composer\Package\RootPackageInterface
$requires array

mergeSuggests() защищенный Метод

Merge suggested packages into a RootPackageInterface
protected mergeSuggests ( Composer\Package\RootPackageInterface $root )
$root Composer\Package\RootPackageInterface

prependRepositories() защищенный Метод

Add a collection of repositories described by the given configuration to the given package and the global repository manager.
protected prependRepositories ( Composer\Package\RootPackageInterface $root )
$root Composer\Package\RootPackageInterface

readPackageJson() защищенный Метод

The package contents are fixed up to be usable to create a Package object by providing dummy "name" and "version" values if they have not been provided in the file. This is consistent with the default root package loading behavior of Composer.
protected readPackageJson ( string $path ) : array
$path string
Результат array

replaceSelfVersionDependencies() защищенный Метод

Update Links with a 'self.version' constraint with the root package's version.
protected replaceSelfVersionDependencies ( string $type, array $links, Composer\Package\RootPackageInterface $root ) : array
$type string Link type
$links array
$root Composer\Package\RootPackageInterface
Результат array

unwrapIfNeeded() публичный статический Метод

In Composer versions before 599ad77 the RootPackageInterface only defines a sub-set of operations needed by composer-merge-plugin and RootAliasPackage only implemented those methods defined by the interface. Most of the unimplemented methods in RootAliasPackage can be worked around because the getter methods that are implemented proxy to the aliased package which we can modify by unwrapping. The exception being modifying the 'conflicts', 'provides' and 'replaces' collections. We have no way to actually modify those collections unfortunately in older versions of Composer.
public static unwrapIfNeeded ( Composer\Package\RootPackageInterface $root, string $method = 'setExtra' ) : Composer\Package\RootPackageInterface | Composer\Package\RootPackage
$root Composer\Package\RootPackageInterface
$method string Method needed
Результат Composer\Package\RootPackageInterface | Composer\Package\RootPackage

Описание свойств

$composer защищенное свойство

protected Composer,Composer $composer
Результат Composer\Composer

$json защищенное свойство

protected array $json
Результат array

$logger защищенное свойство

protected Logger,Wikimedia\Composer $logger
Результат Wikimedia\Composer\Logger

$package защищенное свойство

protected CompletePackage,Composer\Package $package
Результат Composer\Package\CompletePackage

$path защищенное свойство

protected string $path
Результат string

$versionParser защищенное свойство

protected VersionParser,Composer\Package\Version $versionParser
Результат Composer\Package\Version\VersionParser