impl Iterator for Foo<T> { // impl A
default type Item = u32; // associated-type-value with id V0
}
impl Iterator for Foo<String> { // impl B
type Item = char; // associated-type-value with id V1
forall<T> {
Normalize(<Foo<T> as Iterator>::Item -> u32) :-
Reveal,
not { Overrides[V0](Foo<T>: Iterator) }
Overrides[V0](Foo<String>: Iterator).
Normalize(<Foo<String> as Iterator>::Item -> u32).
2019.07.01
impl Iterator for Foo<T> { // impl A
default type Item = u32; // associated-type-value with id V0
}
impl Iterator for Foo<String> { // impl B
type Item = char; // associated-type-value with id V1
}
forall<T> {
Normalize(<Foo<T> as Iterator>::Item -> u32) :-
Reveal,
not { Overrides[V0](Foo<T>: Iterator) }
}
Overrides[V0](Foo<String>: Iterator).
Normalize(<Foo<String> as Iterator>::Item -> u32).