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

Breadcrumb

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

class JsonLoader

@author Konstantin Kudryashiv <ever.zet@gmail.com>

Hierarchy

  • class \Composer\Package\Loader\JsonLoader

Expanded class hierarchy of JsonLoader

File

vendor/composer/composer/src/Composer/Package/Loader/JsonLoader.php, line 25

Namespace

Composer\Package\Loader
View source
class JsonLoader {
    
    /** @var LoaderInterface */
    private $loader;
    public function __construct(LoaderInterface $loader) {
        $this->loader = $loader;
    }
    
    /**
     * @param  string|JsonFile                      $json A filename, json string or JsonFile instance to load the package from
     * @return CompletePackage|CompleteAliasPackage|RootPackage|RootAliasPackage
     */
    public function load($json) : BasePackage {
        if ($json instanceof JsonFile) {
            $config = $json->read();
        }
        elseif (file_exists($json)) {
            $config = JsonFile::parseJson(file_get_contents($json), $json);
        }
        elseif (is_string($json)) {
            $config = JsonFile::parseJson($json);
        }
        else {
            throw new \InvalidArgumentException(sprintf("JsonLoader: Unknown \$json parameter %s. Please report at https://github.com/composer/composer/issues/new.", gettype($json)));
        }
        return $this->loader
            ->load($config);
    }

}

Members

Title Sort descending Modifiers Object type Summary
JsonLoader::$loader private property @var LoaderInterface
JsonLoader::load public function
JsonLoader::__construct public function

API Navigation

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