protocol LocalizedItem { associatedtype Localized var german: Localized { get } var english: Localized { get } } extension LocalizedItem { func localized(in language: ContentLanguage) -> Localized { switch language { case .german: german case .english: english } } }