Allow checking if a model does NOT implement a given theory #175
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.
Addresses #174
This fixes the typo of the catch-all case, i.e.
We replace
Module
withAny
.However, the way we check whether or not an
@instance
call needs to define a new instance method is whether or not there are any methodsimplements(::ModelType, Val{specific_tag})
. So now there is one that is always there by default.One would think, then, that the correct way to fix this logic is to check whether or not there is exactly one method, rather than zero like before. However, because of how
methods
works, once some earlier@instance
call has already defined the more specificimplements
method (which returns notnothing
), it's not that there are now two methods but there still is just one (it's the newer, more specific one). So the logic check is to simply check whether or not theonly
method is equal to the catch-all case.