Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ComposerRepository.php

function ComposerRepository::getPackageNames

Parameters

string|null $packageFilter Package pattern filter which can include "*" as a wildcard:

Return value

string[]

2 calls to ComposerRepository::getPackageNames()
ComposerRepository::getVendorNames in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
ComposerRepository::search in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
@inheritDoc

File

vendor/composer/composer/src/Composer/Repository/ComposerRepository.php, line 362

Class

ComposerRepository
@author Jordi Boggiano <j.boggiano@seld.be>

Namespace

Composer\Repository

Code

public function getPackageNames(?string $packageFilter = null) {
    $hasProviders = $this->hasProviders();
    $filterResults = static function (array $results) : array {
        return $results;
    };
    if (null !== $packageFilter && '' !== $packageFilter) {
        $packageFilterRegex = BasePackage::packageNameToRegexp($packageFilter);
        $filterResults = static function (array $results) use ($packageFilterRegex) : array {
            
            /** @var list<string> $results */
            return Preg::grep($packageFilterRegex, $results);
        };
    }
    if ($this->lazyProvidersUrl) {
        if (is_array($this->availablePackages)) {
            return $filterResults(array_keys($this->availablePackages));
        }
        if ($this->listUrl) {
            // no need to call $filterResults here as the $packageFilter is applied in the function itself
            return $this->loadPackageList($packageFilter);
        }
        if ($this->hasPartialPackages() && $this->partialPackagesByName !== null) {
            return $filterResults(array_keys($this->partialPackagesByName));
        }
        return [];
    }
    if ($hasProviders) {
        return $filterResults($this->getProviderNames());
    }
    $names = [];
    foreach ($this->getPackages() as $package) {
        $names[] = $package->getPrettyName();
    }
    return $filterResults($names);
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal