Avatar
protocol P { associatedtype Dep func a(arg: Dep) init() init(with dep: Dep) } extension P { init(with dep: Dep) { self = Self.init() } } final class A: P { required init() {} func a(arg: () -> Int) {} convenience init(with dep: @escaping @autoclosure () -> Int) { self.init(with: dep) } } _ = A(with: 1) finalくっつける必要あったけど、これでいけた。
3:03 AM
ありがとう、この方向でいってみようと思います!