$id =
sprintf('.%d_%s', ++
$this->anonymousCount,
preg_replace('/^.*\\\\/', '',
$class).'~'.
$this->anonymousHash
);
} elseif (!
$defaults->
isPublic() || !
$defaults->
isPrivate()) { $definition->
setPublic($defaults->
isPublic() && !
$defaults->
isPrivate());
} $definition->
setAutowired($defaults->
isAutowired());
$definition->
setAutoconfigured($defaults->
isAutoconfigured());
// deep clone, to avoid multiple process of the same instance in the passes
$definition->
setBindings(unserialize(serialize($defaults->
getBindings())));
$definition->
setChanges([]);
$configurator =
new ServiceConfigurator($this->container,
$this->instanceof, true,
$this,
$definition,
$id,
$defaults->
getTags(),
$this->path
);
return null !==
$class ?
$configurator->
class($class) :
$configurator;
} /**
* Removes an already defined service definition or alias.
*
* @return $this
*/
final public function remove(string
$id):
static {