@@ -26,9 +26,7 @@ open class NSLocale: NSObject, NSCopying, NSSecureCoding {
2626 case . countryCode: return self . countryCode
2727 case . scriptCode: return self . scriptCode
2828 case . variantCode: return self . variantCode
29- #if FOUNDATION_FRAMEWORK
30- case . exemplarCharacterSet: return self . exemplarCharacterSet
31- #endif
29+ //case .exemplarCharacterSet: return self.exemplarCharacterSet
3230 case . calendarIdentifier: return self . calendarIdentifier
3331 case . calendar: return _locale. calendar
3432 case . collationIdentifier: return self . collationIdentifier
@@ -415,6 +413,46 @@ extension NSLocale : _StructTypeBridgeable {
415413 }
416414}
417415
416+ // MARK: - Deprecated Locale API
417+
418+ extension Locale {
419+ /// Returns a list of available `Locale` language codes.
420+ @available ( * , deprecated, message: " Use `Locale.LanguageCode.isoLanguageCodes` instead " )
421+ public static var isoLanguageCodes : [ String ] {
422+ NSLocale . isoLanguageCodes
423+ }
424+
425+ /// Returns a dictionary that splits an identifier into its component pieces.
426+ @available ( * , deprecated, message: " Use `Locale.Components(identifier:)` to access components " )
427+ public static func components( fromIdentifier string: String ) -> [ String : String ] {
428+ NSLocale . components ( fromLocaleIdentifier: string)
429+ }
430+
431+ /// Returns a list of available `Locale` region codes.
432+ @available ( * , deprecated, message: " Use `Locale.Region.isoRegions` instead " )
433+ public static var isoRegionCodes : [ String ] {
434+ NSLocale . isoCountryCodes
435+ }
436+
437+ /// Returns a list of available `Locale` currency codes.
438+ @available ( * , deprecated, message: " Use `Locale.Currency.isoCurrencies` instead " )
439+ public static var isoCurrencyCodes : [ String ] {
440+ NSLocale . isoCurrencyCodes
441+ }
442+
443+ /// Returns the character direction for a specified language code.
444+ @available ( * , deprecated, message: " Use `Locale.Language(identifier:).characterDirection` " )
445+ public static func characterDirection( forLanguage isoLangCode: String ) -> Locale . LanguageDirection {
446+ NSLocale . characterDirection ( forLanguage: isoLangCode)
447+ }
448+
449+ /// Returns the line direction for a specified language code.
450+ @available ( * , deprecated, message: " Use `Locale.Language(identifier:).lineLayoutDirection` " )
451+ public static func lineDirection( forLanguage isoLangCode: String ) -> Locale . LanguageDirection {
452+ NSLocale . lineDirection ( forLanguage: isoLangCode)
453+ }
454+ }
455+
418456// MARK: - CF Conversions
419457
420458extension Locale {
0 commit comments