public function __construct(\Traversable
$resettableServices, array
$resetMethods) { $this->resettableServices =
$resettableServices;
$this->resetMethods =
$resetMethods;
} public function reset(): void
{ foreach ($this->resettableServices
as $id =>
$service) { if ($service instanceof LazyObjectInterface && !
$service->
isLazyObjectInitialized(true
)) { continue;
} if ($service instanceof LazyLoadingInterface && !
$service->
isProxyInitialized()) { continue;
} foreach ((array) $this->resetMethods
[$id] as $resetMethod) { if ('?' ===
$resetMethod[0
] && !
method_exists($service,
$resetMethod =
substr($resetMethod, 1
))) { continue;
}