@@ -397,15 +397,9 @@ private function addServiceReturn($id, $isSimpleInstance)
397
397
*/
398
398
private function addServiceInstance ($ id , Definition $ definition , $ isSimpleInstance )
399
399
{
400
- $ class = $ definition ->getClass ();
401
-
402
- if ('\\' === substr ($ class , 0 , 1 )) {
403
- $ class = substr ($ class , 1 );
404
- }
405
-
406
- $ class = $ this ->dumpValue ($ class );
400
+ $ class = $ this ->dumpValue ($ definition ->getClass ());
407
401
408
- if (0 === strpos ($ class , "' " ) && false === strpos ($ class , '$ ' ) && !preg_match ('/^ \'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*( \\\{2}[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)* \'$/ ' , $ class )) {
402
+ if (0 === strpos ($ class , "' " ) && false === strpos ($ class , '$ ' ) && !preg_match ('/^ \'(?: \\ \{2})? [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*(?: \\\{2}[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)* \'$/ ' , $ class )) {
409
403
throw new InvalidArgumentException (sprintf ('"%s" is not a valid class name for the "%s" service. ' , $ class , $ id ));
410
404
}
411
405
@@ -1564,11 +1558,13 @@ private function dumpLiteralClass($class)
1564
1558
if (false !== strpos ($ class , '$ ' )) {
1565
1559
return sprintf ('${($_ = %s) && false ?: "_"} ' , $ class );
1566
1560
}
1567
- if (0 !== strpos ($ class , "' " ) || !preg_match ('/^ \'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*( \\\{2}[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)* \'$/ ' , $ class )) {
1561
+ if (0 !== strpos ($ class , "' " ) || !preg_match ('/^ \'(?: \\ \{2})? [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*(?: \\\{2}[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)* \'$/ ' , $ class )) {
1568
1562
throw new RuntimeException (sprintf ('Cannot dump definition because of invalid class name (%s) ' , $ class ?: 'n/a ' ));
1569
1563
}
1570
1564
1571
- return '\\' .substr (str_replace ('\\\\' , '\\' , $ class ), 1 , -1 );
1565
+ $ class = substr (str_replace ('\\\\' , '\\' , $ class ), 1 , -1 );
1566
+
1567
+ return 0 === strpos ($ class , '\\' ) ? $ class : '\\' .$ class ;
1572
1568
}
1573
1569
1574
1570
/**
0 commit comments