public static function create(ProviderRepository $providerRepository = null)
    {
        $container = new Container(
            $providerRepository
        );


        if (!$container->isProvided(AnnotationServiceProvider::class)) {
            $container->addProvider(AnnotationServiceProvider::class);
        }

        $container->add(
            Container::class,
            function () use ($container) {
                return $container;
            }
        )->alias(ContainerInterface::class);

        return $container;
    }
public static function create(ProviderRepository $providerRepository = null)
    {
        $container = new Container(
            $providerRepository
        );


        if (!$container->isProvided(AnnotationServiceProvider::class)) {
            $container->addProvider(AnnotationServiceProvider::class);
        }

        $container->add(
            Container::class,
            function () use ($container) {
                return $container;
            }
        )->alias(ContainerInterface::class);

        return $container;
    }
public static function create ( ProviderRepository $ providerRepository = null ) { $ container = new Container ( $ providerRepository ) ; if ( ! $ container -> isProvided ( AnnotationServiceProvider :: class ) ) { $ container -> addProvider ( AnnotationServiceProvider :: class ) ; } $ container -> add ( Container :: class , function ( ) use ( $ container ) { return $ container ; } ) -> alias ( ContainerInterface :: class ) ; return $ container ; }
create a new container instance

@param ProviderRepository|null $providerRepository
@throws ProviderException
@return Container
create a new container instance