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.
An idea for making a trait to tell whether a specific class is a subclass of another. Basically, the more generic version of the
ClassType
trait.The need arises on
NSMeasurement
, which is defined in the Objective-C header as:With this we could define the generic in Rust as:
Unfortunately, automatically declaring it doesn't work, since we have no way of ensuring in the type-system, that
Super
is not recursive:So maybe it'd make sense to add it anyways, and then implement it in
extern_class!
instead? At least if the problem comes up in other places thanNSMeasurement
(NSUnit
is an "abstract class", meaning it really acts more like a protocol than a class, which is why this case is kinda special).See also #518.