public function createGraph($type, $graph) { $this->repository = new ClassRepository(); $object = $this->top->create($type, [], $graph); $this->named_parameters = array(); // in case the object didn't instantiate, for example from Value lifecycle $this->unnamed_parameters = []; return $object; }
public function instantiate(Context $context, $nesting, $graph = null) { $instances = []; foreach ($this->preferences as $preference) { if ($preference instanceof Lifecycle) { $preferContext = empty($preference->class) ? $context : $context->determineContext($preference->class, $graph); $instances[] = $preference->instantiate($preferContext, $nesting, $graph); } elseif (!is_string($preference)) { $instances[] = $preference; } else { $instances[] = $context->create($preference, $nesting, $graph); } } return $instances; }