Exemple #1
0
 public function __invoke($abstract, $concrete, ContainerInterface $container)
 {
     if ($concrete instanceof \Closure) {
         return new CallableDefinition($abstract, $concrete, $container);
     }
     if (is_string($concrete) && $container->has($concrete)) {
         $container->alias($concrete, $abstract);
         return;
     }
     if (is_string($concrete) && class_exists($concrete)) {
         return new ClassDefinition($abstract, $concrete, $container);
     }
     return $concrete;
 }