||
$refl->
isFinal() ||
$method->
isFinal() ||
$method->
isPrivate() || ('.'
=== (self::
$internal[$class] ?? null
) && !
$refl->
isAbstract()) || '.'
=== (self::
$final[$class] ?? null
) || ''
=== ($doc['final'
][0
] ?? null
) || ''
=== ($doc['internal'
][0
] ?? null
) ;
} if (null
!== ($returnType = self::
$returnTypes[$class][$method->name
] ?? null
) && 'docblock' ===
$this->patchTypes
['force'
] && !
$method->
hasReturnType() &&
isset(TentativeTypes::RETURN_TYPES
[$returnType[2
]][$method->name
])) { $this->
patchReturnTypeWillChange($method);
} if (null
!== ($returnType ??= self::MAGIC_METHODS
[$method->name
] ?? null
) && !
$method->
hasReturnType() && !
isset($doc['return'
])) { [$normalizedType,
$returnType,
$declaringClass,
$declaringFile] = \
is_string($returnType) ?
[$returnType,
$returnType, '', ''
] :
$returnType;
if ($canAddReturnType && 'docblock' !==
$this->patchTypes
['force'
]) { $this->
patchMethod($method,
$returnType,
$declaringFile,
$normalizedType);
} if (!
isset($doc['deprecated'
]) &&
strncmp($ns,
$declaringClass,
$len)) { if ('docblock' ===
$this->patchTypes
['force'
]) { $this->
patchMethod($method,
$returnType,
$declaringFile,
$normalizedType);
}