name: KernelInterface
class_comment: null
dependencies:
- name: LoaderInterface
  type: class
  source: Symfony\Component\Config\Loader\LoaderInterface
- name: ContainerInterface
  type: class
  source: Symfony\Component\DependencyInjection\ContainerInterface
- name: BundleInterface
  type: class
  source: Symfony\Component\HttpKernel\Bundle\BundleInterface
properties: []
methods:
- name: registerBundles
  visibility: public
  parameters: []
  comment: '# * The Kernel is the heart of the Symfony system.

    # *

    # * It manages an environment made of application kernel and bundles.

    # *

    # * @author Fabien Potencier <fabien@symfony.com>

    # */

    # interface KernelInterface extends HttpKernelInterface

    # {

    # /**

    # * Returns an array of bundles to register.

    # *

    # * @return iterable<mixed, BundleInterface>'
- name: registerContainerConfiguration
  visibility: public
  parameters:
  - name: loader
  comment: '# * Loads the container configuration.

    # *

    # * @return void'
- name: boot
  visibility: public
  parameters: []
  comment: '# * Boots the current kernel.

    # *

    # * @return void'
- name: shutdown
  visibility: public
  parameters: []
  comment: '# * Shutdowns the kernel.

    # *

    # * This method is mainly useful when doing functional testing.

    # *

    # * @return void'
- name: getBundles
  visibility: public
  parameters: []
  comment: '# * Gets the registered bundle instances.

    # *

    # * @return array<string, BundleInterface>'
- name: getBundle
  visibility: public
  parameters:
  - name: name
  comment: '# * Returns a bundle.

    # *

    # * @throws \InvalidArgumentException when the bundle is not enabled'
- name: locateResource
  visibility: public
  parameters:
  - name: name
  comment: '# * Returns the file path for a given bundle resource.

    # *

    # * A Resource can be a file or a directory.

    # *

    # * The resource name must follow the following pattern:

    # *

    # *     "@BundleName/path/to/a/file.something"

    # *

    # * where BundleName is the name of the bundle

    # * and the remaining part is the relative path in the bundle.

    # *

    # * @throws \InvalidArgumentException if the file cannot be found or the name
    is not valid

    # * @throws \RuntimeException         if the name contains invalid/unsafe characters'
- name: getEnvironment
  visibility: public
  parameters: []
  comment: '# * Gets the environment.'
- name: isDebug
  visibility: public
  parameters: []
  comment: '# * Checks if debug mode is enabled.'
- name: getProjectDir
  visibility: public
  parameters: []
  comment: '# * Gets the project dir (path of the project''s composer file).'
- name: getContainer
  visibility: public
  parameters: []
  comment: '# * Gets the current container.'
- name: getStartTime
  visibility: public
  parameters: []
  comment: '# * Gets the request start time (not available if debug is disabled).'
- name: getCacheDir
  visibility: public
  parameters: []
  comment: '# * Gets the cache directory.

    # *

    # * Since Symfony 5.2, the cache directory should be used for caches that are
    written at runtime.

    # * For caches and artifacts that can be warmed at compile-time and deployed as
    read-only,

    # * use the new "build directory" returned by the {@see getBuildDir()} method.'
- name: getBuildDir
  visibility: public
  parameters: []
  comment: '# * Returns the build directory.

    # *

    # * This directory should be used to store build artifacts, and can be read-only
    at runtime.

    # * Caches written at runtime should be stored in the "cache directory" ({@see
    KernelInterface::getCacheDir()}).'
- name: getLogDir
  visibility: public
  parameters: []
  comment: '# * Gets the log directory.'
- name: getCharset
  visibility: public
  parameters: []
  comment: '# * Gets the charset of the application.'
traits:
- Symfony\Component\Config\Loader\LoaderInterface
- Symfony\Component\DependencyInjection\ContainerInterface
- Symfony\Component\HttpKernel\Bundle\BundleInterface
interfaces: []