1<?php
2
3/*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12namespace Symfony\Component\DependencyInjection;
13
14use Symfony\Contracts\Service\ResetInterface;
15
16/**
17 * ResettableContainerInterface defines additional resetting functionality
18 * for containers, allowing to release shared services when the container is
19 * not needed anymore.
20 *
21 * @author Christophe Coevoet <stof@notk.org>
22 *
23 * @deprecated since Symfony 4.2, use "Symfony\Contracts\Service\ResetInterface" instead.
24 */
25interface ResettableContainerInterface extends ContainerInterface, ResetInterface
26{
27    /**
28     * Resets shared services from the container.
29     *
30     * The container is not intended to be used again after being reset in a normal workflow. This method is
31     * meant as a way to release references for ref-counting.
32     * A subsequent call to ContainerInterface::get will recreate a new instance of the shared service.
33     */
34    public function reset();
35}
36