use objc2::__framework_prelude::*;
use crate::*;
#[cfg(feature = "NSString")]
pub type NSLinguisticTagScheme = NSString;
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeTokenType: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeLexicalClass: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeNameType: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeNameTypeOrLexicalClass: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeLemma: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeLanguage: &'static NSLinguisticTagScheme;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSchemeScript: &'static NSLinguisticTagScheme;
}
#[cfg(feature = "NSString")]
pub type NSLinguisticTag = NSString;
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagWord: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagPunctuation: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagWhitespace: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOther: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagNoun: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagVerb: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagAdjective: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagAdverb: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagPronoun: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagDeterminer: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagParticle: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagPreposition: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagNumber: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagConjunction: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagInterjection: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagClassifier: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagIdiom: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOtherWord: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagSentenceTerminator: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOpenQuote: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagCloseQuote: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOpenParenthesis: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagCloseParenthesis: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagWordJoiner: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagDash: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOtherPunctuation: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagParagraphBreak: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOtherWhitespace: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagPersonalName: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagPlaceName: &'static NSLinguisticTag;
}
extern "C" {
#[cfg(feature = "NSString")]
pub static NSLinguisticTagOrganizationName: &'static NSLinguisticTag;
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct NSLinguisticTaggerUnit(pub NSInteger);
impl NSLinguisticTaggerUnit {
#[doc(alias = "NSLinguisticTaggerUnitWord")]
pub const Word: Self = Self(0);
#[doc(alias = "NSLinguisticTaggerUnitSentence")]
pub const Sentence: Self = Self(1);
#[doc(alias = "NSLinguisticTaggerUnitParagraph")]
pub const Paragraph: Self = Self(2);
#[doc(alias = "NSLinguisticTaggerUnitDocument")]
pub const Document: Self = Self(3);
}
unsafe impl Encode for NSLinguisticTaggerUnit {
const ENCODING: Encoding = NSInteger::ENCODING;
}
unsafe impl RefEncode for NSLinguisticTaggerUnit {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct NSLinguisticTaggerOptions(pub NSUInteger);
bitflags::bitflags! {
impl NSLinguisticTaggerOptions: NSUInteger {
const NSLinguisticTaggerOmitWords = 1<<0;
const NSLinguisticTaggerOmitPunctuation = 1<<1;
const NSLinguisticTaggerOmitWhitespace = 1<<2;
const NSLinguisticTaggerOmitOther = 1<<3;
const NSLinguisticTaggerJoinNames = 1<<4;
}
}
unsafe impl Encode for NSLinguisticTaggerOptions {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for NSLinguisticTaggerOptions {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
pub struct NSLinguisticTagger;
unsafe impl ClassType for NSLinguisticTagger {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl NSObjectProtocol for NSLinguisticTagger {}
extern_methods!(
unsafe impl NSLinguisticTagger {
#[cfg(all(feature = "NSArray", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Init initWithTagSchemes:options:)]
pub unsafe fn initWithTagSchemes_options(
this: Allocated<Self>,
tag_schemes: &NSArray<NSLinguisticTagScheme>,
opts: NSUInteger,
) -> Retained<Self>;
#[cfg(all(feature = "NSArray", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagSchemes)]
pub unsafe fn tagSchemes(&self) -> Retained<NSArray<NSLinguisticTagScheme>>;
#[cfg(feature = "NSString")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other string)]
pub unsafe fn string(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(setString:)]
pub unsafe fn setString(&self, string: Option<&NSString>);
#[cfg(all(feature = "NSArray", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other availableTagSchemesForUnit:language:)]
pub unsafe fn availableTagSchemesForUnit_language(
unit: NSLinguisticTaggerUnit,
language: &NSString,
) -> Retained<NSArray<NSLinguisticTagScheme>>;
#[cfg(all(feature = "NSArray", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other availableTagSchemesForLanguage:)]
pub unsafe fn availableTagSchemesForLanguage(
language: &NSString,
) -> Retained<NSArray<NSLinguisticTagScheme>>;
#[cfg(all(feature = "NSOrthography", feature = "NSRange"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(setOrthography:range:)]
pub unsafe fn setOrthography_range(
&self,
orthography: Option<&NSOrthography>,
range: NSRange,
);
#[cfg(all(feature = "NSOrthography", feature = "NSRange"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other orthographyAtIndex:effectiveRange:)]
pub unsafe fn orthographyAtIndex_effectiveRange(
&self,
char_index: NSUInteger,
effective_range: NSRangePointer,
) -> Option<Retained<NSOrthography>>;
#[cfg(feature = "NSRange")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(stringEditedInRange:changeInLength:)]
pub unsafe fn stringEditedInRange_changeInLength(
&self,
new_range: NSRange,
delta: NSInteger,
);
#[cfg(feature = "NSRange")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(tokenRangeAtIndex:unit:)]
pub unsafe fn tokenRangeAtIndex_unit(
&self,
char_index: NSUInteger,
unit: NSLinguisticTaggerUnit,
) -> NSRange;
#[cfg(feature = "NSRange")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(sentenceRangeForRange:)]
pub unsafe fn sentenceRangeForRange(&self, range: NSRange) -> NSRange;
#[cfg(all(feature = "NSRange", feature = "NSString", feature = "block2"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(enumerateTagsInRange:unit:scheme:options:usingBlock:)]
pub unsafe fn enumerateTagsInRange_unit_scheme_options_usingBlock(
&self,
range: NSRange,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
block: &block2::Block<dyn Fn(*mut NSLinguisticTag, NSRange, NonNull<Bool>) + '_>,
);
#[cfg(all(feature = "NSRange", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagAtIndex:unit:scheme:tokenRange:)]
pub unsafe fn tagAtIndex_unit_scheme_tokenRange(
&self,
char_index: NSUInteger,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
token_range: NSRangePointer,
) -> Option<Retained<NSLinguisticTag>>;
#[cfg(all(
feature = "NSArray",
feature = "NSRange",
feature = "NSString",
feature = "NSValue"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagsInRange:unit:scheme:options:tokenRanges:)]
pub unsafe fn tagsInRange_unit_scheme_options_tokenRanges(
&self,
range: NSRange,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
token_ranges: Option<&mut Option<Retained<NSArray<NSValue>>>>,
) -> Retained<NSArray<NSLinguisticTag>>;
#[cfg(all(feature = "NSRange", feature = "NSString", feature = "block2"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(enumerateTagsInRange:scheme:options:usingBlock:)]
pub unsafe fn enumerateTagsInRange_scheme_options_usingBlock(
&self,
range: NSRange,
tag_scheme: &NSLinguisticTagScheme,
opts: NSLinguisticTaggerOptions,
block: &block2::Block<
dyn Fn(*mut NSLinguisticTag, NSRange, NSRange, NonNull<Bool>) + '_,
>,
);
#[cfg(all(feature = "NSRange", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagAtIndex:scheme:tokenRange:sentenceRange:)]
pub unsafe fn tagAtIndex_scheme_tokenRange_sentenceRange(
&self,
char_index: NSUInteger,
scheme: &NSLinguisticTagScheme,
token_range: NSRangePointer,
sentence_range: NSRangePointer,
) -> Option<Retained<NSLinguisticTag>>;
#[cfg(all(
feature = "NSArray",
feature = "NSRange",
feature = "NSString",
feature = "NSValue"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagsInRange:scheme:options:tokenRanges:)]
pub unsafe fn tagsInRange_scheme_options_tokenRanges(
&self,
range: NSRange,
tag_scheme: &NSString,
opts: NSLinguisticTaggerOptions,
token_ranges: Option<&mut Option<Retained<NSArray<NSValue>>>>,
) -> Retained<NSArray<NSString>>;
#[cfg(feature = "NSString")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other dominantLanguage)]
pub unsafe fn dominantLanguage(&self) -> Option<Retained<NSString>>;
#[cfg(feature = "NSString")]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other dominantLanguageForString:)]
pub unsafe fn dominantLanguageForString(string: &NSString) -> Option<Retained<NSString>>;
#[cfg(all(feature = "NSOrthography", feature = "NSRange", feature = "NSString"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagForString:atIndex:unit:scheme:orthography:tokenRange:)]
pub unsafe fn tagForString_atIndex_unit_scheme_orthography_tokenRange(
string: &NSString,
char_index: NSUInteger,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
orthography: Option<&NSOrthography>,
token_range: NSRangePointer,
) -> Option<Retained<NSLinguisticTag>>;
#[cfg(all(
feature = "NSArray",
feature = "NSOrthography",
feature = "NSRange",
feature = "NSString",
feature = "NSValue"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other tagsForString:range:unit:scheme:options:orthography:tokenRanges:)]
pub unsafe fn tagsForString_range_unit_scheme_options_orthography_tokenRanges(
string: &NSString,
range: NSRange,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
orthography: Option<&NSOrthography>,
token_ranges: Option<&mut Option<Retained<NSArray<NSValue>>>>,
) -> Retained<NSArray<NSLinguisticTag>>;
#[cfg(all(
feature = "NSOrthography",
feature = "NSRange",
feature = "NSString",
feature = "block2"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(enumerateTagsForString:range:unit:scheme:options:orthography:usingBlock:)]
pub unsafe fn enumerateTagsForString_range_unit_scheme_options_orthography_usingBlock(
string: &NSString,
range: NSRange,
unit: NSLinguisticTaggerUnit,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
orthography: Option<&NSOrthography>,
block: &block2::Block<dyn Fn(*mut NSLinguisticTag, NSRange, NonNull<Bool>) + '_>,
);
#[cfg(all(
feature = "NSArray",
feature = "NSRange",
feature = "NSString",
feature = "NSValue"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other possibleTagsAtIndex:scheme:tokenRange:sentenceRange:scores:)]
pub unsafe fn possibleTagsAtIndex_scheme_tokenRange_sentenceRange_scores(
&self,
char_index: NSUInteger,
tag_scheme: &NSString,
token_range: NSRangePointer,
sentence_range: NSRangePointer,
scores: Option<&mut Option<Retained<NSArray<NSValue>>>>,
) -> Option<Retained<NSArray<NSString>>>;
}
);
extern_methods!(
unsafe impl NSLinguisticTagger {
#[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>;
}
);
extern_methods!(
#[cfg(feature = "NSString")]
unsafe impl NSString {
#[cfg(all(
feature = "NSArray",
feature = "NSOrthography",
feature = "NSRange",
feature = "NSValue"
))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method_id(@__retain_semantics Other linguisticTagsInRange:scheme:options:orthography:tokenRanges:)]
pub unsafe fn linguisticTagsInRange_scheme_options_orthography_tokenRanges(
&self,
range: NSRange,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
orthography: Option<&NSOrthography>,
token_ranges: Option<&mut Option<Retained<NSArray<NSValue>>>>,
) -> Retained<NSArray<NSLinguisticTag>>;
#[cfg(all(feature = "NSOrthography", feature = "NSRange", feature = "block2"))]
#[deprecated = "All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API"]
#[method(enumerateLinguisticTagsInRange:scheme:options:orthography:usingBlock:)]
pub unsafe fn enumerateLinguisticTagsInRange_scheme_options_orthography_usingBlock(
&self,
range: NSRange,
scheme: &NSLinguisticTagScheme,
options: NSLinguisticTaggerOptions,
orthography: Option<&NSOrthography>,
block: &block2::Block<
dyn Fn(*mut NSLinguisticTag, NSRange, NSRange, NonNull<Bool>) + '_,
>,
);
}
);