use objc2::__framework_prelude::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct NSInflectionRule;
unsafe impl ClassType for NSInflectionRule {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
#[cfg(feature = "NSObject")]
unsafe impl NSCoding for NSInflectionRule {}
#[cfg(feature = "NSObject")]
unsafe impl NSCopying for NSInflectionRule {}
unsafe impl NSObjectProtocol for NSInflectionRule {}
#[cfg(feature = "NSObject")]
unsafe impl NSSecureCoding for NSInflectionRule {}
extern_methods!(
unsafe impl NSInflectionRule {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[method_id(@__retain_semantics Other automaticRule)]
pub unsafe fn automaticRule() -> Retained<NSInflectionRule>;
}
);
extern_methods!(
unsafe impl NSInflectionRule {
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct NSInflectionRuleExplicit;
unsafe impl ClassType for NSInflectionRuleExplicit {
#[inherits(NSObject)]
type Super = NSInflectionRule;
type Mutability = InteriorMutable;
}
);
#[cfg(feature = "NSObject")]
unsafe impl NSCoding for NSInflectionRuleExplicit {}
#[cfg(feature = "NSObject")]
unsafe impl NSCopying for NSInflectionRuleExplicit {}
unsafe impl NSObjectProtocol for NSInflectionRuleExplicit {}
#[cfg(feature = "NSObject")]
unsafe impl NSSecureCoding for NSInflectionRuleExplicit {}
extern_methods!(
unsafe impl NSInflectionRuleExplicit {
#[cfg(feature = "NSMorphology")]
#[method_id(@__retain_semantics Init initWithMorphology:)]
pub unsafe fn initWithMorphology(
this: Allocated<Self>,
morphology: &NSMorphology,
) -> Retained<Self>;
#[cfg(feature = "NSMorphology")]
#[method_id(@__retain_semantics Other morphology)]
pub unsafe fn morphology(&self) -> Retained<NSMorphology>;
}
);
extern_methods!(
unsafe impl NSInflectionRuleExplicit {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
}
);
extern_methods!(
unsafe impl NSInflectionRuleExplicit {
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Retained<Self>;
}
);
extern_methods!(
unsafe impl NSInflectionRule {
#[cfg(feature = "NSString")]
#[method(canInflectLanguage:)]
pub unsafe fn canInflectLanguage(language: &NSString) -> bool;
#[method(canInflectPreferredLocalization)]
pub unsafe fn canInflectPreferredLocalization() -> bool;
}
);