27 private $sharedInstances;
36 &$sharedInstances = [],
41 $this->sharedInstances = &$sharedInstances;
55 $args = $this->config->getArguments($requestedType);
56 $type = $this->config->getInstanceType($requestedType);
61 }
elseif ($args !==
null) {
75 foreach ($args as $key => &$argument) {
78 }
elseif (isset($argument[
'_i_'])) {
79 $argument = $this->
get($argument[
'_i_']);
80 }
elseif (isset($argument[
'_ins_'])) {
81 $argument = $this->
create($argument[
'_ins_']);
82 }
elseif (isset($argument[
'_v_'])) {
83 $argument = $argument[
'_v_'];
84 }
elseif (isset($argument[
'_vac_'])) {
85 $argument = $argument[
'_vac_'];
87 }
elseif (isset($argument[
'_vn_'])) {
89 }
elseif (isset($argument[
'_a_'])) {
90 if (isset($this->globalArguments[$argument[
'_a_']])) {
91 $argument = $this->globalArguments[$argument[
'_a_']];
93 $argument = $argument[
'_d_'];
97 $args = array_values($args);
108 return $this->createObject(
$type, $args);
122 foreach ($array as $key => &$argument) {
123 if ($argument === (array)$argument) {
124 if (isset($argument[
'_i_'])) {
125 $argument = $this->
get($argument[
'_i_']);
126 }
elseif (isset($argument[
'_ins_'])) {
127 $argument = $this->
create($argument[
'_ins_']);
128 }
elseif (isset($argument[
'_a_'])) {
129 if (isset($this->globalArguments[$argument[
'_a_']])) {
130 $argument = $this->globalArguments[$argument[
'_a_']];
132 $argument = $argument[
'_d_'];
149 if (!isset($this->sharedInstances[
$type])) {
150 $this->sharedInstances[
$type] = $this->
create($type);
152 return $this->sharedInstances[
$type];
elseif(isset( $params[ 'redirect_parent']))
create($requestedType, array $arguments=[])
__construct(\Magento\Framework\ObjectManager\ConfigInterface $config, &$sharedInstances=[], $globalArguments=[])
resolveArgumentsInRuntime($requestedType, array $parameters, array $arguments=[])