Fix possible Node/MissingToken mismatch (error reported in Lumen project)
parent
d56d1b7fe7
commit
e0a7b2108e
|
@ -544,18 +544,18 @@ class DefinitionResolver
|
||||||
*/
|
*/
|
||||||
public function resolveExpressionNodeToType($expr)
|
public function resolveExpressionNodeToType($expr)
|
||||||
{
|
{
|
||||||
if ($expr == null || $expr instanceof PhpParser\MissingToken || $expr instanceof PhpParser\SkippedToken) {
|
|
||||||
// TODO some members are null or Missing/SkippedToken
|
|
||||||
// How do we handle this more generally?
|
|
||||||
return new Types\Mixed;
|
|
||||||
}
|
|
||||||
|
|
||||||
// PARENTHESIZED EXPRESSION
|
// PARENTHESIZED EXPRESSION
|
||||||
// Retrieve inner expression from parenthesized expression
|
// Retrieve inner expression from parenthesized expression
|
||||||
while ($expr instanceof Node\Expression\ParenthesizedExpression) {
|
while ($expr instanceof Node\Expression\ParenthesizedExpression) {
|
||||||
$expr = $expr->expression;
|
$expr = $expr->expression;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($expr == null || $expr instanceof PhpParser\MissingToken || $expr instanceof PhpParser\SkippedToken) {
|
||||||
|
// TODO some members are null or Missing/SkippedToken
|
||||||
|
// How do we handle this more generally?
|
||||||
|
return new Types\Mixed;
|
||||||
|
}
|
||||||
|
|
||||||
// VARIABLE
|
// VARIABLE
|
||||||
// $this -> Type\this
|
// $this -> Type\this
|
||||||
// $myVariable -> type of corresponding assignment expression
|
// $myVariable -> type of corresponding assignment expression
|
||||||
|
|
Loading…
Reference in New Issue