ApiPlatform\SchemaGenerator\Tests\TypesGeneratorTest::getContextMatcher PHP Méthode

getContextMatcher() private méthode

private getContextMatcher ( array $class ) : Closure
$class array
Résultat Closure
    private function getContextMatcher(array $class)
    {
        $config = $this->getConfig();
        $classes = $this->getClasses();
        return function ($context) use($config, $classes, $class) {
            if (!isset($context['config']) || $config !== $context['config']) {
                return false;
            }
            $baseClass = array_diff_key($class, ['fields' => null]);
            if (!isset($context['class']) || !is_array($context['class']) || $baseClass != array_intersect_key($context['class'], $baseClass)) {
                return false;
            }
            if (array_keys($class['fields']) != array_keys($context['class']['fields'])) {
                return false;
            }
            foreach ($class['fields'] as $fieldName => $field) {
                if ($field != array_intersect_key($context['class']['fields'][$fieldName], $field)) {
                    return false;
                }
            }
            return true;
        };
    }