private function getInjectionProviderParams(Argument $argument) : array
    {
        $param = $argument->get();
        $class = $param->getDeclaringClass();
        if (! $class instanceof \ReflectionClass) {
            throw new \LogicException; // @codeCoverageIgnore
        }
        $method = $param->getDeclaringFunction();
        $this->setQualifiers($method, $param);

        return [
            new Node\Arg(new Scalar\String_((string) $argument)),
            new Expr\Array_([
                new Expr\ArrayItem(new Scalar\String_($class->name)),
                new Expr\ArrayItem(new Scalar\String_($method->name)),
                new Expr\ArrayItem(new Scalar\String_($param->name))
            ])
        ];
    }
private function getInjectionProviderParams(Argument $argument) : array
    {
        $param = $argument->get();
        $class = $param->getDeclaringClass();
        if (! $class instanceof \ReflectionClass) {
            throw new \LogicException; // @codeCoverageIgnore
        }
        $method = $param->getDeclaringFunction();
        $this->setQualifiers($method, $param);

        return [
            new Node\Arg(new Scalar\String_((string) $argument)),
            new Expr\Array_([
                new Expr\ArrayItem(new Scalar\String_($class->name)),
                new Expr\ArrayItem(new Scalar\String_($method->name)),
                new Expr\ArrayItem(new Scalar\String_($param->name))
            ])
        ];
    }
private function getInjectionProviderParams ( Argument $ argument ) : array { $ param = $ argument -> get ( ) ; $ class = $ param -> getDeclaringClass ( ) ; if ( ! $ class instanceof \ ReflectionClass ) { throw new \ LogicException ; // @codeCoverageIgnore } $ method = $ param -> getDeclaringFunction ( ) ; $ this -> setQualifiers ( $ method , $ param ) ; return [ new Node \ Arg ( new Scalar \ String_ ( ( string ) $ argument ) ) , new Expr \ Array_ ( [ new Expr \ ArrayItem ( new Scalar \ String_ ( $ class -> name ) ) , new Expr \ ArrayItem ( new Scalar \ String_ ( $ method -> name ) ) , new Expr \ ArrayItem ( new Scalar \ String_ ( $ param -> name ) ) ] ) ] ; }
Return code for provider

"$provider" needs [class, method, parameter] for InjectionPoint (Contextual Dependency Injection)

@param Argument $argument

@return array
Return code for provider