Skip to content

Commit e1e3bd3

Browse files
committed
Add deprecated API to Locale
1 parent 11c4942 commit e1e3bd3

File tree

1 file changed

+41
-3
lines changed

1 file changed

+41
-3
lines changed

Sources/Foundation/NSLocale.swift

+41-3
Original file line numberDiff line numberDiff line change
@@ -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

420458
extension Locale {

0 commit comments

Comments
 (0)