#[repr(C)]pub struct CFStringTokenizer { /* private fields */ }
CFStringTokenizer
only.Expand description
Implementations§
Source§impl CFStringTokenizer
impl CFStringTokenizer
Sourcepub unsafe fn best_string_language(
string: &CFString,
range: CFRange,
) -> Option<CFRetained<CFString>>
pub unsafe fn best_string_language( string: &CFString, range: CFRange, ) -> Option<CFRetained<CFString>>
Guesses the language of a string and returns the BCP 47 string of the language.
Parameter string
: The string whose language is to be guessed.
Parameter range
: The range of characters in string whose language to be
guessed. The specified range must not exceed the bounds of the string.
Returns: A language represented in BCP 47 string. NULL is returned either if string is NULL, the location of range is negative, the length of range is 0, or the language of the string cannot be guessed.
The result is not guaranteed to be accurate. Typically 200-400 characters are required to reliably guess the language of a string.
Source§impl CFStringTokenizer
impl CFStringTokenizer
Sourcepub unsafe fn new(
alloc: Option<&CFAllocator>,
string: Option<&CFString>,
range: CFRange,
options: CFOptionFlags,
locale: Option<&CFLocale>,
) -> Option<CFRetained<CFStringTokenizer>>
Available on crate feature CFLocale
only.
pub unsafe fn new( alloc: Option<&CFAllocator>, string: Option<&CFString>, range: CFRange, options: CFOptionFlags, locale: Option<&CFLocale>, ) -> Option<CFRetained<CFStringTokenizer>>
CFLocale
only.Creates a tokenizer instance.
Parameter alloc
: The CFAllocator which should be used to allocate memory for the
tokenizer and its storage for values. This parameter may be NULL in which
case the current default CFAllocator is used.
Parameter string
: The string to tokenize.
Parameter range
: The range of characters within the string to be tokenized. The
specified range must not exceed the length of the string.
Parameter options
: Use one of the Tokenization Unit options to specify how the
string should be tokenized. Optionally specify one or more attribute
specifiers to tell the tokenizer to prepare specified attributes when it
tokenizes the string.
Parameter locale
: The locale to specify language or region specific behavior. Pass
NULL if you want tokenizer to identify the locale automatically.
Returns: A reference to the new CFStringTokenizer.
Sourcepub unsafe fn set_string(
self: &CFStringTokenizer,
string: Option<&CFString>,
range: CFRange,
)
pub unsafe fn set_string( self: &CFStringTokenizer, string: Option<&CFString>, range: CFRange, )
Set the string to tokenize.
Parameter tokenizer
: The reference to CFStringTokenizer returned by
CFStringTokenizerCreate.
Parameter string
: The string to tokenize.
Parameter range
: The range of characters within the string to be tokenized. The
specified range must not exceed the length of the string.
Sourcepub unsafe fn go_to_token_at_index(
self: &CFStringTokenizer,
index: CFIndex,
) -> CFStringTokenizerTokenType
pub unsafe fn go_to_token_at_index( self: &CFStringTokenizer, index: CFIndex, ) -> CFStringTokenizerTokenType
Random access to a token. Find a token that includes the character specified by character index, and set it as the current token.
Parameter tokenizer
: The reference to CFStringTokenizer returned by
CFStringTokenizerCreate.
Parameter index
: The index of the Unicode character in the CFString.
Returns: Type of the token if succeeded in finding a token and setting it as current token. kCFStringTokenizerTokenNone if failed in finding a token.
The range and attribute of the token can be obtained by calling CFStringTokenizerGetCurrentTokenRange and CFStringTokenizerCopyCurrentTokenAttribute. If the token is a compound (with type kCFStringTokenizerTokenHasSubTokensMask or kCFStringTokenizerTokenHasDerivedSubTokensMask), its subtokens and (or) derived subtokens can be obtained by calling CFStringTokenizerGetCurrentSubTokens.
Sourcepub unsafe fn advance_to_next_token(
self: &CFStringTokenizer,
) -> CFStringTokenizerTokenType
pub unsafe fn advance_to_next_token( self: &CFStringTokenizer, ) -> CFStringTokenizerTokenType
Token enumerator.
Parameter tokenizer
: The reference to CFStringTokenizer returned by
CFStringTokenizerCreate.
Returns: Type of the token if succeeded in finding a token and setting it as current token. kCFStringTokenizerTokenNone if failed in finding a token.
If there is no preceding call to CFStringTokenizerGoToTokenAtIndex or CFStringTokenizerAdvanceToNextToken, it finds the first token in the range specified to CFStringTokenizerCreate. If there is a current token after successful call to CFStringTokenizerGoToTokenAtIndex or CFStringTokenizerAdvanceToNextToken, it proceeds to the next token. If succeeded in finding a token, set it as current token and return its token type. Otherwise invalidate current token and return kCFStringTokenizerTokenNone. The range and attribute of the token can be obtained by calling CFStringTokenizerGetCurrentTokenRange and CFStringTokenizerCopyCurrentTokenAttribute. If the token is a compound (with type kCFStringTokenizerTokenHasSubTokensMask or kCFStringTokenizerTokenHasDerivedSubTokensMask), its subtokens and (or) derived subtokens can be obtained by calling CFStringTokenizerGetCurrentSubTokens.
Sourcepub unsafe fn current_token_range(self: &CFStringTokenizer) -> CFRange
pub unsafe fn current_token_range(self: &CFStringTokenizer) -> CFRange
Returns the range of current token.
Parameter tokenizer
: The reference to CFStringTokenizer returned by
CFStringTokenizerCreate.
Returns: Range of current token, or {kCFNotFound,0} if there is no current token.
Sourcepub unsafe fn current_token_attribute(
self: &CFStringTokenizer,
attribute: CFOptionFlags,
) -> Option<CFRetained<CFType>>
pub unsafe fn current_token_attribute( self: &CFStringTokenizer, attribute: CFOptionFlags, ) -> Option<CFRetained<CFType>>
Copies the specified attribute of current token.
Parameter tokenizer
: The reference to CFStringTokenizer returned by
CFStringTokenizerCreate.
Parameter attribute
: Specify a token attribute you want to obtain. The value is
one of kCFStringTokenizerAttributeLatinTranscription or
kCFStringTokenizerAttributeLanguage.
Returns: Token attribute, or NULL if current token does not have the specified attribute or if there is no current token.
Sourcepub unsafe fn current_sub_tokens(
self: &CFStringTokenizer,
ranges: *mut CFRange,
max_range_length: CFIndex,
derived_sub_tokens: Option<&CFMutableArray>,
) -> CFIndex
Available on crate feature CFArray
only.
pub unsafe fn current_sub_tokens( self: &CFStringTokenizer, ranges: *mut CFRange, max_range_length: CFIndex, derived_sub_tokens: Option<&CFMutableArray>, ) -> CFIndex
CFArray
only.Retrieves the subtokens or derived subtokens contained in the compound token.
Parameter tokenizer
: The reference to CFStringTokenizer returned by CFStringTokenizerCreate.
Parameter ranges
: An array of CFRange to fill in with the ranges of subtokens. The filled in
ranges are relative to the string specified to CFStringTokenizerCreate. This parameter
can be NULL.
Parameter maxRangeLength
: The maximum number of ranges to return.
Parameter derivedSubTokens
: An array of CFMutableArray to which the derived subtokens are to
be added. This parameter can be NULL.
Returns: number of subtokens.
If token type is kCFStringTokenizerTokenNone, the ranges array and derivedSubTokens array are untouched and the return value is 0. If token type is kCFStringTokenizerTokenNormal, the ranges array has one item filled in with the entire range of the token (if maxRangeLength >= 1) and a string taken from the entire token range is added to the derivedSubTokens array and the return value is 1. If token type is kCFStringTokenizerTokenHasSubTokensMask or kCFStringTokenizerTokenHasDerivedSubTokensMask, the ranges array is filled in with as many items as there are subtokens (up to a limit of maxRangeLength). The derivedSubTokens array will have sub tokens added even when the sub token is a substring of the token. If token type is kCFStringTokenizerTokenHasSubTokensMask, the ordinary non-derived subtokens are added to the derivedSubTokens array.
Methods from Deref<Target = CFType>§
Sourcepub fn downcast_ref<T: ConcreteType>(&self) -> Option<&T>
pub fn downcast_ref<T: ConcreteType>(&self) -> Option<&T>
Attempt to downcast the type to that of type T
.
This is the reference-variant. Use CFRetained::downcast
if you
want to convert a retained type. See also ConcreteType
for more
details on which types support being converted to.
Sourcepub fn retain_count(&self) -> usize
pub fn retain_count(&self) -> usize
Get the reference count of the object.
This function may be useful for debugging. You normally do not use this function otherwise.
Beware that some things (like CFNumber
s, small CFString
s etc.) may
not have a normal retain count for optimization purposes, and can
return usize::MAX
in that case.
Trait Implementations§
Source§impl AsRef<AnyObject> for CFStringTokenizer
impl AsRef<AnyObject> for CFStringTokenizer
Source§impl AsRef<CFStringTokenizer> for CFStringTokenizer
impl AsRef<CFStringTokenizer> for CFStringTokenizer
Source§impl AsRef<CFType> for CFStringTokenizer
impl AsRef<CFType> for CFStringTokenizer
Source§impl Borrow<AnyObject> for CFStringTokenizer
impl Borrow<AnyObject> for CFStringTokenizer
Source§impl Borrow<CFType> for CFStringTokenizer
impl Borrow<CFType> for CFStringTokenizer
Source§impl ConcreteType for CFStringTokenizer
impl ConcreteType for CFStringTokenizer
Source§impl Debug for CFStringTokenizer
impl Debug for CFStringTokenizer
Source§impl Deref for CFStringTokenizer
impl Deref for CFStringTokenizer
Source§impl Hash for CFStringTokenizer
impl Hash for CFStringTokenizer
Source§impl Message for CFStringTokenizer
impl Message for CFStringTokenizer
Source§impl PartialEq for CFStringTokenizer
impl PartialEq for CFStringTokenizer
Source§impl RefEncode for CFStringTokenizer
impl RefEncode for CFStringTokenizer
Source§const ENCODING_REF: Encoding
const ENCODING_REF: Encoding
Source§impl Type for CFStringTokenizer
impl Type for CFStringTokenizer
Source§fn retain(&self) -> CFRetained<Self> ⓘwhere
Self: Sized,
fn retain(&self) -> CFRetained<Self> ⓘwhere
Self: Sized,
Source§fn as_concrete_TypeRef(&self) -> &Self
fn as_concrete_TypeRef(&self) -> &Self
core-foundation
crate.Source§unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self> ⓘwhere
Self: Sized,
unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self> ⓘwhere
Self: Sized,
core-foundation
crate. Read moreSource§fn as_CFTypeRef(&self) -> &CFType
fn as_CFTypeRef(&self) -> &CFType
core-foundation
crate.Source§unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self> ⓘwhere
Self: Sized,
unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self> ⓘwhere
Self: Sized,
core-foundation
crate. Read more