SensioLabs\Deptrac\Configuration\ConfigurationCollector::fromArray PHP Méthode

fromArray() public static méthode

public static fromArray ( array $arr )
$arr array
    public static function fromArray(array $arr)
    {
        if (!isset($arr['type'])) {
            throw new \InvalidArgumentException('Collector needs a type.');
        }
        return new static($arr['type'], $arr);
    }

Usage Example

 public function satisfy(array $configuration, AstClassReferenceInterface $abstractClassReference, AstMap $astMap, CollectorFactory $collectorFactory, AstParserInterface $astParser)
 {
     if (!isset($configuration['must'])) {
         $configuration['must'] = [];
     }
     if (!isset($configuration['must_not'])) {
         $configuration['must_not'] = [];
     }
     if (!$configuration['must'] && !$configuration['must_not']) {
         throw new \InvalidArgumentException('bool collector must have a must or a must_not attribute');
     }
     foreach ($configuration['must'] as $v) {
         $configurationForCollector = ConfigurationCollector::fromArray($v);
         if (!$collectorFactory->getCollector($configurationForCollector->getType())->satisfy($configurationForCollector->getArgs(), $abstractClassReference, $astMap, $collectorFactory, $astParser)) {
             return false;
         }
     }
     foreach ($configuration['must_not'] as $v) {
         $configurationForCollector = ConfigurationCollector::fromArray($v);
         if ($collectorFactory->getCollector($configurationForCollector->getType())->satisfy($configurationForCollector->getArgs(), $abstractClassReference, $astMap, $collectorFactory, $astParser)) {
             return false;
         }
     }
     return true;
 }
All Usage Examples Of SensioLabs\Deptrac\Configuration\ConfigurationCollector::fromArray