From a8b22a7d3b23ce18ff90367af926506f7749ecaf Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Tue, 14 Apr 2020 10:35:19 +0200 Subject: [PATCH] [DI] Replaced inline() by service() in PHP DSL --- service_container/alias_private.rst | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/service_container/alias_private.rst b/service_container/alias_private.rst index ff5729ccd45..ffde46bfce6 100644 --- a/service_container/alias_private.rst +++ b/service_container/alias_private.rst @@ -267,15 +267,20 @@ The following example shows how to inject an anonymous service into another serv $services = $configurator->services(); $services->set(Foo::class) - ->args([inline(AnonymousBar::class)]) + ->args([service(AnonymousBar::class)]) }; +.. versionadded:: 5.1 + + The ``service()`` function was introduced in Symfony 5.1. In previous + versions it was called ``inline()``. + .. note:: Anonymous services do *NOT* inherit the definitions provided from the defaults defined in the configuration. So you'll need to explicitly mark service as autowired or autoconfigured when doing an anonymous service - e.g.: ``inline(Foo::class)->autowire()->autoconfigure()``. + e.g.: ``service(Foo::class)->autowire()->autoconfigure()``. Using an anonymous service as a factory looks like this: @@ -318,7 +323,7 @@ Using an anonymous service as a factory looks like this: $services = $configurator->services(); $services->set(Foo::class) - ->factory([inline(AnonymousBar::class), 'constructFoo']) + ->factory([service(AnonymousBar::class), 'constructFoo']) }; Deprecating Services