Rename ParameterResolver interface to Resolver#33
Merged
Conversation
Swap the names so the contract carries the minimal name and the implementation carries the qualifier describing what it does. The interface is the generic `resolve()` promise; the concrete class is specifically about resolving parameters from a PSR-11 container. ParameterResolver (interface) -> Resolver Resolver (class) -> ContainerResolver This frees the bare `Resolver` name for consumers depending on the abstraction (`Resolver $resolver`) and gives future strategies parallel, self-describing names. ContainerResolver's name now carries strictly more information than the interface's, matching the usual contract-vs- implementation convention. BC break (clean, no aliases): ships as a major version bump. - ParameterResolver is removed; type-hint Resolver instead. - The old Resolver class becomes ContainerResolver; `new Resolver(...)` callers must switch to `new ContainerResolver(...)`. README and tests updated; ResolverTest renamed to ContainerResolverTest.
This was referenced Jun 25, 2026
henriquemoody
approved these changes
Jun 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Swap the names so the contract carries the minimal name and the implementation carries the qualifier describing what it does. The interface is the generic
resolve()promise; the concrete class is specifically about resolving parameters from a PSR-11 container.ParameterResolver (interface) -> Resolver
Resolver (class) -> ContainerResolver
This frees the bare
Resolvername for consumers depending on the abstraction (Resolver $resolver) and gives future strategies parallel, self-describing names. ContainerResolver's name now carries strictly more information than the interface's, matching the usual contract-vs- implementation convention.BC break (clean, no aliases): ships as a major version bump.
new Resolver(...)callers must switch tonew ContainerResolver(...).README and tests updated; ResolverTest renamed to ContainerResolverTest.