2026-07-25 12:39:32 +02:00
|
|
|
internal import CPlaydate
|
|
|
|
|
|
|
|
|
|
extension System {
|
2026-09-18 13:15:08 +00:00
|
|
|
/// A system language. Wraps `PDLanguage`.
|
2026-07-25 12:39:32 +02:00
|
|
|
public enum Language: UInt32, Sendable {
|
|
|
|
|
case english = 0
|
|
|
|
|
case japanese = 1
|
2026-09-18 13:15:08 +00:00
|
|
|
/// The current system language; only meaningful for `localizedText(forKey:language:)`.
|
2026-07-25 12:39:32 +02:00
|
|
|
case system = 2
|
|
|
|
|
|
2026-09-18 13:15:08 +00:00
|
|
|
// Unknown C values fall back to English.
|
2026-07-25 12:39:32 +02:00
|
|
|
init(_ language: PDLanguage) {
|
|
|
|
|
self = Language(rawValue: UInt32(language.rawValue)) ?? .english
|
|
|
|
|
}
|
|
|
|
|
var cValue: PDLanguage { PDLanguage(PDLanguage.RawValue(rawValue)) }
|
|
|
|
|
}
|
|
|
|
|
}
|