name: Kernel
class_comment: null
dependencies:
- name: ConfigBuilderGenerator
  type: class
  source: Symfony\Component\Config\Builder\ConfigBuilderGenerator
- name: ConfigCache
  type: class
  source: Symfony\Component\Config\ConfigCache
- name: DelegatingLoader
  type: class
  source: Symfony\Component\Config\Loader\DelegatingLoader
- name: LoaderResolver
  type: class
  source: Symfony\Component\Config\Loader\LoaderResolver
- name: CompilerPassInterface
  type: class
  source: Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface
- name: PassConfig
  type: class
  source: Symfony\Component\DependencyInjection\Compiler\PassConfig
- name: RemoveBuildParametersPass
  type: class
  source: Symfony\Component\DependencyInjection\Compiler\RemoveBuildParametersPass
- name: ContainerBuilder
  type: class
  source: Symfony\Component\DependencyInjection\ContainerBuilder
- name: ContainerInterface
  type: class
  source: Symfony\Component\DependencyInjection\ContainerInterface
- name: PhpDumper
  type: class
  source: Symfony\Component\DependencyInjection\Dumper\PhpDumper
- name: Preloader
  type: class
  source: Symfony\Component\DependencyInjection\Dumper\Preloader
- name: ExtensionInterface
  type: class
  source: Symfony\Component\DependencyInjection\Extension\ExtensionInterface
- name: ClosureLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\ClosureLoader
- name: DirectoryLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\DirectoryLoader
- name: GlobFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\GlobFileLoader
- name: IniFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\IniFileLoader
- name: PhpFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\PhpFileLoader
- name: XmlFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\XmlFileLoader
- name: YamlFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\YamlFileLoader
- name: DebugClassLoader
  type: class
  source: Symfony\Component\ErrorHandler\DebugClassLoader
- name: Filesystem
  type: class
  source: Symfony\Component\Filesystem\Filesystem
- name: Request
  type: class
  source: Symfony\Component\HttpFoundation\Request
- name: Response
  type: class
  source: Symfony\Component\HttpFoundation\Response
- name: BundleInterface
  type: class
  source: Symfony\Component\HttpKernel\Bundle\BundleInterface
- name: WarmableInterface
  type: class
  source: Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface
- name: FileLocator
  type: class
  source: Symfony\Component\HttpKernel\Config\FileLocator
- name: MergeExtensionConfigurationPass
  type: class
  source: Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass
properties: []
methods:
- name: getHttpKernel
  visibility: protected
  parameters: []
  comment: "# * The Kernel is the heart of the Symfony system.\n# *\n# * It manages\
    \ an environment made of bundles.\n# *\n# * Environment names must always start\
    \ with a letter and\n# * they must only contain letters and numbers.\n# *\n# *\
    \ @author Fabien Potencier <fabien@symfony.com>\n# */\n# abstract class Kernel\
    \ implements KernelInterface, RebootableInterface, TerminableInterface\n# {\n\
    # /**\n# * @var array<string, BundleInterface>\n# */\n# protected array $bundles\
    \ = [];\n# \n# protected ?ContainerInterface $container = null;\n# protected bool\
    \ $booted = false;\n# protected ?float $startTime = null;\n# \n# private string\
    \ $projectDir;\n# private ?string $warmupDir = null;\n# private int $requestStackSize\
    \ = 0;\n# private bool $resetServices = false;\n# \n# /**\n# * @var array<string,\
    \ bool>\n# */\n# private static array $freshCache = [];\n# \n# public const VERSION\
    \ = '7.2.0-DEV';\n# public const VERSION_ID = 70200;\n# public const MAJOR_VERSION\
    \ = 7;\n# public const MINOR_VERSION = 2;\n# public const RELEASE_VERSION = 0;\n\
    # public const EXTRA_VERSION = 'DEV';\n# \n# public const END_OF_MAINTENANCE =\
    \ '07/2025';\n# public const END_OF_LIFE = '07/2025';\n# \n# public function __construct(\n\
    # protected string $environment,\n# protected bool $debug,\n# ) {\n# if (!$environment)\
    \ {\n# throw new \\InvalidArgumentException(\\sprintf('Invalid environment provided\
    \ to \"%s\": the environment cannot be empty.', get_debug_type($this)));\n# }\n\
    # }\n# \n# public function __clone()\n# {\n# $this->booted = false;\n# $this->container\
    \ = null;\n# $this->requestStackSize = 0;\n# $this->resetServices = false;\n#\
    \ }\n# \n# public function boot(): void\n# {\n# if (true === $this->booted) {\n\
    # if (!$this->requestStackSize && $this->resetServices) {\n# if ($this->container->has('services_resetter'))\
    \ {\n# $this->container->get('services_resetter')->reset();\n# }\n# $this->resetServices\
    \ = false;\n# if ($this->debug) {\n# $this->startTime = microtime(true);\n# }\n\
    # }\n# \n# return;\n# }\n# \n# if (null === $this->container) {\n# $this->preBoot();\n\
    # }\n# \n# foreach ($this->getBundles() as $bundle) {\n# $bundle->setContainer($this->container);\n\
    # $bundle->boot();\n# }\n# \n# $this->booted = true;\n# }\n# \n# public function\
    \ reboot(?string $warmupDir): void\n# {\n# $this->shutdown();\n# $this->warmupDir\
    \ = $warmupDir;\n# $this->boot();\n# }\n# \n# public function terminate(Request\
    \ $request, Response $response): void\n# {\n# if (false === $this->booted) {\n\
    # return;\n# }\n# \n# if ($this->getHttpKernel() instanceof TerminableInterface)\
    \ {\n# $this->getHttpKernel()->terminate($request, $response);\n# }\n# }\n# \n\
    # public function shutdown(): void\n# {\n# if (false === $this->booted) {\n# return;\n\
    # }\n# \n# $this->booted = false;\n# \n# foreach ($this->getBundles() as $bundle)\
    \ {\n# $bundle->shutdown();\n# $bundle->setContainer(null);\n# }\n# \n# $this->container\
    \ = null;\n# $this->requestStackSize = 0;\n# $this->resetServices = false;\n#\
    \ }\n# \n# public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST,\
    \ bool $catch = true): Response\n# {\n# if (!$this->booted) {\n# $container =\
    \ $this->container ?? $this->preBoot();\n# \n# if ($container->has('http_cache'))\
    \ {\n# return $container->get('http_cache')->handle($request, $type, $catch);\n\
    # }\n# }\n# \n# $this->boot();\n# ++$this->requestStackSize;\n# $this->resetServices\
    \ = true;\n# \n# try {\n# return $this->getHttpKernel()->handle($request, $type,\
    \ $catch);\n# } finally {\n# --$this->requestStackSize;\n# }\n# }\n# \n# /**\n\
    # * Gets an HTTP kernel from the container."
- name: getBundles
  visibility: public
  parameters: []
  comment: null
- name: getBundle
  visibility: public
  parameters:
  - name: name
  comment: null
- name: locateResource
  visibility: public
  parameters:
  - name: name
  comment: null
- name: getEnvironment
  visibility: public
  parameters: []
  comment: null
- name: isDebug
  visibility: public
  parameters: []
  comment: null
- name: getProjectDir
  visibility: public
  parameters: []
  comment: '# * Gets the application root dir (path of the project''s composer file).'
- name: getContainer
  visibility: public
  parameters: []
  comment: null
- name: setAnnotatedClassCache
  visibility: public
  parameters:
  - name: annotatedClasses
  comment: '# * @internal

    # *

    # * @deprecated since Symfony 7.1, to be removed in 8.0'
- name: getStartTime
  visibility: public
  parameters: []
  comment: null
- name: getCacheDir
  visibility: public
  parameters: []
  comment: null
- name: getBuildDir
  visibility: public
  parameters: []
  comment: null
- name: getLogDir
  visibility: public
  parameters: []
  comment: null
- name: getCharset
  visibility: public
  parameters: []
  comment: null
- name: getAnnotatedClassesToCompile
  visibility: public
  parameters: []
  comment: '# * Gets the patterns defining the classes to parse and cache for annotations.

    # *

    # * @return string[]

    # *

    # * @deprecated since Symfony 7.1, to be removed in 8.0'
- name: initializeBundles
  visibility: protected
  parameters: []
  comment: '# * Initializes bundles.

    # *

    # * @throws \LogicException if two bundles share a common name'
- name: build
  visibility: protected
  parameters:
  - name: container
  comment: '# * The extension point similar to the Bundle::build() method.

    # *

    # * Use this method to register compiler passes and manipulate the container during
    the building process.'
- name: getContainerClass
  visibility: protected
  parameters: []
  comment: '# * Gets the container class.

    # *

    # * @throws \InvalidArgumentException If the generated classname is invalid'
- name: getContainerBaseClass
  visibility: protected
  parameters: []
  comment: '# * Gets the container''s base class.

    # *

    # * All names except Container must be fully qualified.'
- name: initializeContainer
  visibility: protected
  parameters: []
  comment: '# * Initializes the service container.

    # *

    # * The built version of the service container is used when fresh, otherwise the

    # * container is built.'
- name: getKernelParameters
  visibility: protected
  parameters: []
  comment: '# * Returns the kernel parameters.

    # *

    # * @return array<string, array|bool|string|int|float|\UnitEnum|null>'
- name: buildContainer
  visibility: protected
  parameters: []
  comment: '# * Builds the service container.

    # *

    # * @throws \RuntimeException'
- name: prepareContainer
  visibility: protected
  parameters:
  - name: container
  comment: '# * Prepares the ContainerBuilder before it is compiled.'
- name: getContainerBuilder
  visibility: protected
  parameters: []
  comment: '# * Gets a new ContainerBuilder instance used to build the service container.'
- name: dumpContainer
  visibility: protected
  parameters:
  - name: cache
  - name: container
  - name: class
  - name: baseClass
  comment: '# * Dumps the service container to PHP code in the cache.

    # *

    # * @param string $class     The name of the class to generate

    # * @param string $baseClass The name of the container''s base class'
- name: getContainerLoader
  visibility: protected
  parameters:
  - name: container
  comment: '# * Returns a loader for the container.'
- name: preBoot
  visibility: private
  parameters: []
  comment: null
- name: __sleep
  visibility: public
  parameters: []
  comment: null
- name: __wakeup
  visibility: public
  parameters: []
  comment: null
traits:
- Symfony\Component\Config\Builder\ConfigBuilderGenerator
- Symfony\Component\Config\ConfigCache
- Symfony\Component\Config\Loader\DelegatingLoader
- Symfony\Component\Config\Loader\LoaderResolver
- Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface
- Symfony\Component\DependencyInjection\Compiler\PassConfig
- Symfony\Component\DependencyInjection\Compiler\RemoveBuildParametersPass
- Symfony\Component\DependencyInjection\ContainerBuilder
- Symfony\Component\DependencyInjection\ContainerInterface
- Symfony\Component\DependencyInjection\Dumper\PhpDumper
- Symfony\Component\DependencyInjection\Dumper\Preloader
- Symfony\Component\DependencyInjection\Extension\ExtensionInterface
- Symfony\Component\DependencyInjection\Loader\ClosureLoader
- Symfony\Component\DependencyInjection\Loader\DirectoryLoader
- Symfony\Component\DependencyInjection\Loader\GlobFileLoader
- Symfony\Component\DependencyInjection\Loader\IniFileLoader
- Symfony\Component\DependencyInjection\Loader\PhpFileLoader
- Symfony\Component\DependencyInjection\Loader\XmlFileLoader
- Symfony\Component\DependencyInjection\Loader\YamlFileLoader
- Symfony\Component\ErrorHandler\DebugClassLoader
- Symfony\Component\Filesystem\Filesystem
- Symfony\Component\HttpFoundation\Request
- Symfony\Component\HttpFoundation\Response
- Symfony\Component\HttpKernel\Bundle\BundleInterface
- Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface
- Symfony\Component\HttpKernel\Config\FileLocator
- Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass
interfaces:
- KernelInterface