Avatar
// ModuleC public func show<S: Sequence>(_ sequence: S) where S.Element: AdditiveArithmetic { for x in sequence { print(x) } } import ModuleA import ModuleC func useA(for x: Int) { x.foo() show(x) } import ModuleB import ModuleC func useB(for x: Int) { x.foo() show(x) } // main.swift import ModuleA import ModuleB useA(for: 65534) useB(for: 65534) ↑、 main の import 書く順によってどっちが呼び出されるか変わる😂