rector/rules/Naming/ValueObject/VariableAndCallAssign.php
Tomas Votruba 7e46eb8267 Updated Rector to commit a2d6da8b4e
a2d6da8b4e Back to php-scoper 0.14 with scoping from php 8.0 (#2370)
2022-05-27 11:51:31 +00:00

80 lines
2.2 KiB
PHP

<?php
declare (strict_types=1);
namespace Rector\Naming\ValueObject;
use PhpParser\Node\Expr\Assign;
use PhpParser\Node\Expr\Closure;
use PhpParser\Node\Expr\FuncCall;
use PhpParser\Node\Expr\MethodCall;
use PhpParser\Node\Expr\StaticCall;
use PhpParser\Node\Expr\Variable;
use PhpParser\Node\Stmt\ClassMethod;
use PhpParser\Node\Stmt\Function_;
final class VariableAndCallAssign
{
/**
* @readonly
* @var \PhpParser\Node\Expr\Variable
*/
private $variable;
/**
* @readonly
* @var \PhpParser\Node\Expr\FuncCall|\PhpParser\Node\Expr\StaticCall|\PhpParser\Node\Expr\MethodCall
*/
private $expr;
/**
* @readonly
* @var \PhpParser\Node\Expr\Assign
*/
private $assign;
/**
* @readonly
* @var string
*/
private $variableName;
/**
* @readonly
* @var \PhpParser\Node\Stmt\ClassMethod|\PhpParser\Node\Stmt\Function_|\PhpParser\Node\Expr\Closure
*/
private $functionLike;
/**
* @param \PhpParser\Node\Expr\FuncCall|\PhpParser\Node\Expr\StaticCall|\PhpParser\Node\Expr\MethodCall $expr
* @param \PhpParser\Node\Stmt\ClassMethod|\PhpParser\Node\Stmt\Function_|\PhpParser\Node\Expr\Closure $functionLike
*/
public function __construct(\PhpParser\Node\Expr\Variable $variable, $expr, \PhpParser\Node\Expr\Assign $assign, string $variableName, $functionLike)
{
$this->variable = $variable;
$this->expr = $expr;
$this->assign = $assign;
$this->variableName = $variableName;
$this->functionLike = $functionLike;
}
public function getVariable() : \PhpParser\Node\Expr\Variable
{
return $this->variable;
}
/**
* @return \PhpParser\Node\Expr\FuncCall|\PhpParser\Node\Expr\MethodCall|\PhpParser\Node\Expr\StaticCall
*/
public function getCall()
{
return $this->expr;
}
public function getVariableName() : string
{
return $this->variableName;
}
/**
* @return \PhpParser\Node\Expr\Closure|\PhpParser\Node\Stmt\ClassMethod|\PhpParser\Node\Stmt\Function_
*/
public function getFunctionLike()
{
return $this->functionLike;
}
public function getAssign() : \PhpParser\Node\Expr\Assign
{
return $this->assign;
}
}