objc2_foundation/generated/
NSPersonNameComponentsFormatter.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6
7use crate::*;
8
9#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct NSPersonNameComponentsFormatterStyle(pub NSInteger);
14impl NSPersonNameComponentsFormatterStyle {
15 #[doc(alias = "NSPersonNameComponentsFormatterStyleDefault")]
16 pub const Default: Self = Self(0);
17 #[doc(alias = "NSPersonNameComponentsFormatterStyleShort")]
18 pub const Short: Self = Self(1);
19 #[doc(alias = "NSPersonNameComponentsFormatterStyleMedium")]
20 pub const Medium: Self = Self(2);
21 #[doc(alias = "NSPersonNameComponentsFormatterStyleLong")]
22 pub const Long: Self = Self(3);
23 #[doc(alias = "NSPersonNameComponentsFormatterStyleAbbreviated")]
24 pub const Abbreviated: Self = Self(4);
25}
26
27unsafe impl Encode for NSPersonNameComponentsFormatterStyle {
28 const ENCODING: Encoding = NSInteger::ENCODING;
29}
30
31unsafe impl RefEncode for NSPersonNameComponentsFormatterStyle {
32 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
33}
34
35#[repr(transparent)]
38#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
39pub struct NSPersonNameComponentsFormatterOptions(pub NSUInteger);
40bitflags::bitflags! {
41 impl NSPersonNameComponentsFormatterOptions: NSUInteger {
42 #[doc(alias = "NSPersonNameComponentsFormatterPhonetic")]
43 const Phonetic = 1<<1;
44 }
45}
46
47unsafe impl Encode for NSPersonNameComponentsFormatterOptions {
48 const ENCODING: Encoding = NSUInteger::ENCODING;
49}
50
51unsafe impl RefEncode for NSPersonNameComponentsFormatterOptions {
52 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
53}
54
55extern_class!(
56 #[unsafe(super(NSFormatter, NSObject))]
58 #[derive(Debug, PartialEq, Eq, Hash)]
59 #[cfg(feature = "NSFormatter")]
60 pub struct NSPersonNameComponentsFormatter;
61);
62
63#[cfg(feature = "NSFormatter")]
64unsafe impl Send for NSPersonNameComponentsFormatter {}
65
66#[cfg(feature = "NSFormatter")]
67unsafe impl Sync for NSPersonNameComponentsFormatter {}
68
69#[cfg(all(feature = "NSFormatter", feature = "NSObject"))]
70extern_conformance!(
71 unsafe impl NSCoding for NSPersonNameComponentsFormatter {}
72);
73
74#[cfg(all(feature = "NSFormatter", feature = "NSObject"))]
75extern_conformance!(
76 unsafe impl NSCopying for NSPersonNameComponentsFormatter {}
77);
78
79#[cfg(all(feature = "NSFormatter", feature = "NSObject"))]
80unsafe impl CopyingHelper for NSPersonNameComponentsFormatter {
81 type Result = Self;
82}
83
84#[cfg(feature = "NSFormatter")]
85extern_conformance!(
86 unsafe impl NSObjectProtocol for NSPersonNameComponentsFormatter {}
87);
88
89#[cfg(feature = "NSFormatter")]
90impl NSPersonNameComponentsFormatter {
91 extern_methods!(
92 #[unsafe(method(style))]
93 #[unsafe(method_family = none)]
94 pub unsafe fn style(&self) -> NSPersonNameComponentsFormatterStyle;
95
96 #[unsafe(method(setStyle:))]
98 #[unsafe(method_family = none)]
99 pub unsafe fn setStyle(&self, style: NSPersonNameComponentsFormatterStyle);
100
101 #[unsafe(method(isPhonetic))]
102 #[unsafe(method_family = none)]
103 pub unsafe fn isPhonetic(&self) -> bool;
104
105 #[unsafe(method(setPhonetic:))]
107 #[unsafe(method_family = none)]
108 pub unsafe fn setPhonetic(&self, phonetic: bool);
109
110 #[cfg(feature = "NSLocale")]
111 #[unsafe(method(locale))]
112 #[unsafe(method_family = none)]
113 pub unsafe fn locale(&self) -> Retained<NSLocale>;
114
115 #[cfg(feature = "NSLocale")]
116 #[unsafe(method(setLocale:))]
118 #[unsafe(method_family = none)]
119 pub unsafe fn setLocale(&self, locale: Option<&NSLocale>);
120
121 #[cfg(all(feature = "NSPersonNameComponents", feature = "NSString"))]
122 #[unsafe(method(localizedStringFromPersonNameComponents:style:options:))]
123 #[unsafe(method_family = none)]
124 pub unsafe fn localizedStringFromPersonNameComponents_style_options(
125 components: &NSPersonNameComponents,
126 name_format_style: NSPersonNameComponentsFormatterStyle,
127 name_options: NSPersonNameComponentsFormatterOptions,
128 ) -> Retained<NSString>;
129
130 #[cfg(all(feature = "NSPersonNameComponents", feature = "NSString"))]
131 #[unsafe(method(stringFromPersonNameComponents:))]
132 #[unsafe(method_family = none)]
133 pub unsafe fn stringFromPersonNameComponents(
134 &self,
135 components: &NSPersonNameComponents,
136 ) -> Retained<NSString>;
137
138 #[cfg(all(feature = "NSAttributedString", feature = "NSPersonNameComponents"))]
139 #[unsafe(method(annotatedStringFromPersonNameComponents:))]
140 #[unsafe(method_family = none)]
141 pub unsafe fn annotatedStringFromPersonNameComponents(
142 &self,
143 components: &NSPersonNameComponents,
144 ) -> Retained<NSAttributedString>;
145
146 #[cfg(all(feature = "NSPersonNameComponents", feature = "NSString"))]
147 #[unsafe(method(personNameComponentsFromString:))]
148 #[unsafe(method_family = none)]
149 pub unsafe fn personNameComponentsFromString(
150 &self,
151 string: &NSString,
152 ) -> Option<Retained<NSPersonNameComponents>>;
153
154 #[cfg(feature = "NSString")]
155 #[unsafe(method(getObjectValue:forString:errorDescription:))]
156 #[unsafe(method_family = none)]
157 pub unsafe fn getObjectValue_forString_errorDescription(
158 &self,
159 obj: Option<&mut Option<Retained<AnyObject>>>,
160 string: &NSString,
161 error: Option<&mut Option<Retained<NSString>>>,
162 ) -> bool;
163 );
164}
165
166#[cfg(feature = "NSFormatter")]
168impl NSPersonNameComponentsFormatter {
169 extern_methods!(
170 #[unsafe(method(init))]
171 #[unsafe(method_family = init)]
172 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
173
174 #[unsafe(method(new))]
175 #[unsafe(method_family = new)]
176 pub unsafe fn new() -> Retained<Self>;
177 );
178}
179
180extern "C" {
181 #[cfg(feature = "NSString")]
183 pub static NSPersonNameComponentKey: &'static NSString;
184}
185
186extern "C" {
187 #[cfg(feature = "NSString")]
189 pub static NSPersonNameComponentGivenName: &'static NSString;
190}
191
192extern "C" {
193 #[cfg(feature = "NSString")]
195 pub static NSPersonNameComponentFamilyName: &'static NSString;
196}
197
198extern "C" {
199 #[cfg(feature = "NSString")]
201 pub static NSPersonNameComponentMiddleName: &'static NSString;
202}
203
204extern "C" {
205 #[cfg(feature = "NSString")]
207 pub static NSPersonNameComponentPrefix: &'static NSString;
208}
209
210extern "C" {
211 #[cfg(feature = "NSString")]
213 pub static NSPersonNameComponentSuffix: &'static NSString;
214}
215
216extern "C" {
217 #[cfg(feature = "NSString")]
219 pub static NSPersonNameComponentNickname: &'static NSString;
220}
221
222extern "C" {
223 #[cfg(feature = "NSString")]
225 pub static NSPersonNameComponentDelimiter: &'static NSString;
226}