class ParameterNamesCheck extends AbstractCallableCheck (View source)

Validates that parameter names in stub functions/methods match those in reflection.

Named parameters were introduced in PHP 8.0, so this check only applies to PHP >= 8.0.

Algorithm:

  1. Look up the callable in both reflection and stubs using findCallable().
  2. If not found in stubs, silently succeed — FunctionExistsCheck handles existence.
  3. Filter and deduplicate stub parameters by version (merges same-named variadic pairs).
  4. If parameter counts differ, silently succeed — ParametersCountCheck handles that.
  5. Compare names positionally; collect all mismatches into one failure message.

Known problems are supported via EntityType::FUNCTION / EntityType::METHOD (auto-detected from the entityId format) with checkName 'ParameterNamesCheck'.

Properties

protected ReflectionProviderInterface $reflectionProvider from  AbstractReflectionCheck
protected KnownProblemsRegistry $knownProblemsRegistry from  AbstractReflectionCheck
protected EntityLookupService $entityLookup from  AbstractCallableCheck

Methods

__construct(ReflectionProviderInterface|null $reflectionProvider = null, KnownProblemsRegistry|null $knownProblemsRegistry = null, EntityLookupService|null $entityLookup = null)

No description

bool
skipWithKnownProblem(CheckResultSet $results, string $entityType, string $entityId, string $checkName, string $phpVersion)

Records a skipped-success result if a known problem covers this entity, and returns true.

findCallable(StubDataQueryInterface $storage, string $entityId, string $phpVersion)

Find a function or method in the given storage.

bool
supports(string $phpVersion)

No description

run(StubDataQueryInterface $stubs, string $entityId, string $phpVersion)

No description

Details

__construct(ReflectionProviderInterface|null $reflectionProvider = null, KnownProblemsRegistry|null $knownProblemsRegistry = null, EntityLookupService|null $entityLookup = null)

No description

Parameters

ReflectionProviderInterface|null $reflectionProvider
KnownProblemsRegistry|null $knownProblemsRegistry
EntityLookupService|null $entityLookup

protected bool skipWithKnownProblem(CheckResultSet $results, string $entityType, string $entityId, string $checkName, string $phpVersion)

Records a skipped-success result if a known problem covers this entity, and returns true.

Returns false if validation should proceed normally.

Parameters

CheckResultSet $results
string $entityType
string $entityId
string $checkName
string $phpVersion

Return Value

bool

protected PHPFunction|null findCallable(StubDataQueryInterface $storage, string $entityId, string $phpVersion)

Find a function or method in the given storage.

Parameters

StubDataQueryInterface $storage
string $entityId

Format: "functionName" or "ClassName::methodName"

string $phpVersion

Return Value

PHPFunction|null

bool supports(string $phpVersion)

No description

Parameters

string $phpVersion

Return Value

bool

CheckResultSet run(StubDataQueryInterface $stubs, string $entityId, string $phpVersion)

No description

Parameters

StubDataQueryInterface $stubs

Parsed stubs data

string $entityId

Entity identifier to validate

string $phpVersion

PHP version string

Return Value

CheckResultSet