// WARNING: Please don't edit this file. It was generated by Swift/WinRT v0.0.1 // swiftlint:disable all import Foundation @_spi(WinRTInternal) @_spi(WinRTImplements) import WindowsFoundation import CWinRT /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.languagelayoutdirection) public typealias LanguageLayoutDirection = __x_ABI_CWindows_CGlobalization_CLanguageLayoutDirection /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language) public final class Language : WinRTClass { private typealias SwiftABI = __ABI_Windows_Globalization.ILanguage private typealias CABI = __x_ABI_CWindows_CGlobalization_CILanguage private lazy var _default: SwiftABI! = getInterfaceForCaching() @_spi(WinRTInternal) override public func _getABI() -> UnsafeMutablePointer? { if T.self == CABI.self { return RawPointer(_default) } return super._getABI() } @_spi(WinRTInternal) public static func from(abi: ComPtr<__x_ABI_CWindows_CGlobalization_CILanguage>?) -> Language? { guard let abi = abi else { return nil } return .init(fromAbi: WindowsFoundation.IInspectable(abi)) } @_spi(WinRTInternal) public init(fromAbi: WindowsFoundation.IInspectable) { super.init(fromAbi) } private static let _ILanguageFactory: __ABI_Windows_Globalization.ILanguageFactory = try! RoGetActivationFactory(HString("Windows.Globalization.Language")) public init(_ languageTag: String) { super.init(try! Self._ILanguageFactory.CreateLanguageImpl(languageTag)) } private static let _ILanguageStatics: __ABI_Windows_Globalization.ILanguageStatics = try! RoGetActivationFactory(HString("Windows.Globalization.Language")) /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.iswellformed) public static func isWellFormed(_ languageTag: String) -> Bool { return try! _ILanguageStatics.IsWellFormedImpl(languageTag) } /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.currentinputmethodlanguagetag) public static var currentInputMethodLanguageTag : String { get { try! _ILanguageStatics.get_CurrentInputMethodLanguageTagImpl() } } private static let _ILanguageStatics2: __ABI_Windows_Globalization.ILanguageStatics2 = try! RoGetActivationFactory(HString("Windows.Globalization.Language")) /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.trysetinputmethodlanguagetag) public static func trySetInputMethodLanguageTag(_ languageTag: String) -> Bool { return try! _ILanguageStatics2.TrySetInputMethodLanguageTagImpl(languageTag) } /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.displayname) public var displayName : String { get { try! _default.get_DisplayNameImpl() } } /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.languagetag) public var languageTag : String { get { try! _default.get_LanguageTagImpl() } } /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.nativename) public var nativeName : String { get { try! _default.get_NativeNameImpl() } } /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.script) public var script : String { get { try! _default.get_ScriptImpl() } } private lazy var _ILanguageExtensionSubtags: __ABI_Windows_Globalization.ILanguageExtensionSubtags! = getInterfaceForCaching() /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.getextensionsubtags) public func getExtensionSubtags(_ singleton: String) throws -> WindowsFoundation.AnyIVectorView! { try _ILanguageExtensionSubtags.GetExtensionSubtagsImpl(singleton) } private lazy var _ILanguage2: __ABI_Windows_Globalization.ILanguage2! = getInterfaceForCaching() /// [Open Microsoft documentation](https://learn.microsoft.com/uwp/api/windows.globalization.language.layoutdirection) public var layoutDirection : LanguageLayoutDirection { get { try! _ILanguage2.get_LayoutDirectionImpl() } } deinit { _default = nil _ILanguageExtensionSubtags = nil _ILanguage2 = nil } } extension UWP.LanguageLayoutDirection { public static var ltr : UWP.LanguageLayoutDirection { __x_ABI_CWindows_CGlobalization_CLanguageLayoutDirection_Ltr } public static var rtl : UWP.LanguageLayoutDirection { __x_ABI_CWindows_CGlobalization_CLanguageLayoutDirection_Rtl } public static var ttbLtr : UWP.LanguageLayoutDirection { __x_ABI_CWindows_CGlobalization_CLanguageLayoutDirection_TtbLtr } public static var ttbRtl : UWP.LanguageLayoutDirection { __x_ABI_CWindows_CGlobalization_CLanguageLayoutDirection_TtbRtl } } extension UWP.LanguageLayoutDirection: @retroactive Hashable, @retroactive Codable {}