Loosen the self-type constraint for Net::HTTPHeader #1932
Merged
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.
Net::HTTPHeader could be included by classes that do not inherit
::Object
and we need to loosen the self-type constraint.For example, HTTParty::Response::Headers, which includes
Net::HTTPHeader
, inheritsSimpleDelegator < Delegator < BasicObject
. With the current definition, it causes an error like below:Note that to reproduce the error above, you need to modify the manifest.yml like below:
I also considered defining an interface instead of using BasicObject at first, but it seems the following syntax is illegal.