public function make(string $abstract, array $parameters = [])
    {
        try {
            if (! isset($this->resolving[$abstract])) {
                $this->resolving[$abstract] = $this->construct($abstract);
            }

            return $this->resolving[$abstract]($abstract, $parameters);
        } catch (ReflectionException $e) {
            throw new ContainerException("Fail while attempt to make '$abstract'", 0, $e);
        }
    }
public function make(string $abstract, array $parameters = [])
    {
        try {
            if (! isset($this->resolving[$abstract])) {
                $this->resolving[$abstract] = $this->construct($abstract);
            }

            return $this->resolving[$abstract]($abstract, $parameters);
        } catch (ReflectionException $e) {
            throw new ContainerException("Fail while attempt to make '$abstract'", 0, $e);
        }
    }
public function make ( string $ abstract , array $ parameters = [ ] ) { try { if ( ! isset ( $ this -> resolving [ $ abstract ] ) ) { $ this -> resolving [ $ abstract ] = $ this -> construct ( $ abstract ) ; } return $ this -> resolving [ $ abstract ] ( $ abstract , $ parameters ) ; } catch ( ReflectionException $ e ) { throw new ContainerException ( "Fail while attempt to make '$abstract'" , 0 , $ e ) ; } }
Makes an element or class injecting automatically all the dependencies.

@param string $abstract   The class name or container element name to make.
@param array  $parameters Specific parameters definition.

@throws ContainerException
@return object|null
Makes an element or class injecting automatically all the dependencies .