filterSubclassesOf
fun <T : Any> Sequence<Identifier<*>>.filterSubclassesOf(environment: ExtensibleInjectionEnvironment, kclass: KClass<T>): Sequence<Identifier<T>>
Filters the given identifiers to only include those whose actual object are subclasses of the given class parameter.
This class properly handles:
Cases where the "advertised" type in the identifier is not a subclass but the actual instance is (usually the case with services).
Ignore non-canonical resolvers (e.g. this function only keeps actual objects and will not include aliases that happen to also match the subclass).