protocol A {
associatedtype T
var t: T { get }
}
protocol B: A where T == Int {}
var b: B? = nil // Protocol 'B' can only be used as a generic constraint
// because it has Self or associated type requirements.
Is there a way to create an extended protocol (B) that assigns a concrete type to the base protocol's (A's) associated type, and by doing so "removes" the associated type requirements, and becomes a protocol with no associated types, usable not only as a generic constraint?