Fix: Tip line shows parameterized type name in strategy show#504
Merged
Conversation
…ized type name
The Tip message in Base.show(io, MIME"text/plain", strategy) used
type_name (just nameof(T)) instead of display_name (which includes the
parameter, e.g. DifferentiationInterface{GPU}). This caused the Tip to
always show describe(DifferentiationInterface) even for parameterized
instances like DifferentiationInterface{GPU}.
Changed type_name to display_name in the Tip println call. Updated the
docstring example to show both non-parameterized and parameterized cases.
Added tests with a fake parameterized strategy (CovFakeParamStrategy{P})
to verify:
- Non-parameterized: Tip shows describe(CovFakeStrategy) without {…}
- Parameterized: Tip shows describe(CovFakeParamStrategy{CPU}) with {CPU}
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.
Summary
The Tip message in Base.show(io, MIME"text/plain", strategy) used type_name (just nameof(T)) instead of display_name (which includes the parameter, e.g. DifferentiationInterface{GPU}).
This caused the Tip to always show describe(DifferentiationInterface) even for parameterized instances like DifferentiationInterface{GPU}().
Changes
Testing
All 943 tests in the strategies suite pass.