use objc2::__framework_prelude::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct NSPersonNameComponents;
unsafe impl ClassType for NSPersonNameComponents {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
#[cfg(feature = "NSObject")]
unsafe impl NSCoding for NSPersonNameComponents {}
#[cfg(feature = "NSObject")]
unsafe impl NSCopying for NSPersonNameComponents {}
unsafe impl NSObjectProtocol for NSPersonNameComponents {}
#[cfg(feature = "NSObject")]
unsafe impl NSSecureCoding for NSPersonNameComponents {}
extern_methods!(
unsafe impl NSPersonNameComponents {
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other namePrefix)]
pub unsafe fn namePrefix(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setNamePrefix:)]
pub unsafe fn setNamePrefix(&self, name_prefix: Option<&NSString>);
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other givenName)]
pub unsafe fn givenName(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setGivenName:)]
pub unsafe fn setGivenName(&self, given_name: Option<&NSString>);
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other middleName)]
pub unsafe fn middleName(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setMiddleName:)]
pub unsafe fn setMiddleName(&self, middle_name: Option<&NSString>);
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other familyName)]
pub unsafe fn familyName(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setFamilyName:)]
pub unsafe fn setFamilyName(&self, family_name: Option<&NSString>);
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other nameSuffix)]
pub unsafe fn nameSuffix(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setNameSuffix:)]
pub unsafe fn setNameSuffix(&self, name_suffix: Option<&NSString>);
#[cfg(feature = "NSString")]
#[method_id(@__retain_semantics Other nickname)]
pub unsafe fn nickname(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[method(setNickname:)]
pub unsafe fn setNickname(&self, nickname: Option<&NSString>);
#[method_id(@__retain_semantics Other phoneticRepresentation)]
pub unsafe fn phoneticRepresentation(&self) -> Option<Retained<NSPersonNameComponents>>;
#[method(setPhoneticRepresentation:)]
pub unsafe fn setPhoneticRepresentation(
&self,
phonetic_representation: Option<&NSPersonNameComponents>,
);
}
);
extern_methods!(
unsafe impl NSPersonNameComponents {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);