Struct NSString

Source
#[repr(C)]
pub struct NSString { /* private fields */ }
Available on crate feature NSString only.
Expand description

Implementations§

Source§

impl NSString

NSBundleExtensionMethods.

Source

pub unsafe fn variantFittingPresentationWidth( &self, width: NSInteger, ) -> Retained<NSString>

Available on crate feature NSBundle only.
Source§

impl NSString

Source

pub unsafe fn from_point(a_point: NSPoint) -> Retained<NSString>

Available on crate features NSGeometry and objc2-core-foundation only.
Source

pub unsafe fn from_size(a_size: NSSize) -> Retained<NSString>

Available on crate features NSGeometry and objc2-core-foundation only.
Source

pub unsafe fn from_rect(a_rect: NSRect) -> Retained<NSString>

Available on crate features NSGeometry and objc2-core-foundation only.
Source§

impl NSString

Source

pub unsafe fn from_hash_table(table: &NSHashTable) -> Retained<NSString>

Available on crate feature NSHashTable only.
Source§

impl NSString

NSLinguisticAnalysis.

Source

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>>

👎Deprecated: All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API
Available on crate features NSLinguisticTagger and NSArray and NSOrthography and NSRange and NSValue only.
Source

pub unsafe fn enumerateLinguisticTagsInRange_scheme_options_orthography_usingBlock( &self, range: NSRange, scheme: &NSLinguisticTagScheme, options: NSLinguisticTaggerOptions, orthography: Option<&NSOrthography>, block: &DynBlock<dyn Fn(*mut NSLinguisticTag, NSRange, NSRange, NonNull<Bool>) + '_>, )

👎Deprecated: All NSLinguisticTagger API should be replaced with NaturalLanguage.framework API
Available on crate features NSLinguisticTagger and NSOrthography and NSRange and block2 only.
Source§

impl NSString

Source

pub unsafe fn from_map_table(table: &NSMapTable) -> Retained<NSString>

Available on crate feature NSMapTable only.
Source§

impl NSString

Source

pub unsafe fn from_selector(a_selector: Sel) -> Retained<NSString>

Available on crate feature NSObjCRuntime only.
Source§

impl NSString

Source

pub fn from_class(a_class: &AnyClass) -> Retained<NSString>

Available on crate feature NSObjCRuntime only.
Source§

impl NSString

Source

pub unsafe fn from_protocol(proto: &AnyProtocol) -> Retained<NSString>

Available on crate feature NSObjCRuntime only.
Source§

impl NSString

NSStringPathExtensions.

Source

pub unsafe fn pathWithComponents( components: &NSArray<NSString>, ) -> Retained<NSString>

Available on crate features NSPathUtilities and NSArray only.
Source

pub unsafe fn pathComponents(&self) -> Retained<NSArray<NSString>>

Available on crate features NSPathUtilities and NSArray only.
Source

pub unsafe fn isAbsolutePath(&self) -> bool

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn lastPathComponent(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByDeletingLastPathComponent(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub fn stringByAppendingPathComponent( &self, str: &NSString, ) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn pathExtension(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByDeletingPathExtension(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByAppendingPathExtension( &self, str: &NSString, ) -> Option<Retained<NSString>>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByAbbreviatingWithTildeInPath(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByExpandingTildeInPath(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByStandardizingPath(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringByResolvingSymlinksInPath(&self) -> Retained<NSString>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn stringsByAppendingPaths( &self, paths: &NSArray<NSString>, ) -> Retained<NSArray<NSString>>

Available on crate features NSPathUtilities and NSArray only.
Source

pub unsafe fn completePathIntoString_caseSensitive_matchesIntoArray_filterTypes( &self, output_name: Option<&mut Option<Retained<NSString>>>, flag: bool, output_array: Option<&mut Option<Retained<NSArray<NSString>>>>, filter_types: Option<&NSArray<NSString>>, ) -> NSUInteger

Available on crate features NSPathUtilities and NSArray only.
Source

pub unsafe fn fileSystemRepresentation(&self) -> NonNull<c_char>

Available on crate feature NSPathUtilities only.
Source

pub unsafe fn getFileSystemRepresentation_maxLength( &self, cname: NonNull<c_char>, max: NSUInteger, ) -> bool

Available on crate feature NSPathUtilities only.
Source§

impl NSString

Source

pub unsafe fn from_range(range: NSRange) -> Retained<NSString>

Available on crate feature NSRange only.
Source§

impl NSString

Source

pub fn length(&self) -> NSUInteger

Source

pub unsafe fn characterAtIndex(&self, index: NSUInteger) -> unichar

Source

pub fn init(this: Allocated<Self>) -> Retained<Self>

Source

pub unsafe fn initWithCoder( this: Allocated<Self>, coder: &NSCoder, ) -> Option<Retained<Self>>

Available on crate feature NSCoder only.
Source§

impl NSString

Methods declared on superclass NSObject.

Source

pub fn new() -> Retained<Self>

Source§

impl NSString

NSStringExtensionMethods.

Source

pub unsafe fn substringFromIndex(&self, from: NSUInteger) -> Retained<NSString>

Source

pub unsafe fn substringToIndex(&self, to: NSUInteger) -> Retained<NSString>

Source

pub unsafe fn substringWithRange(&self, range: NSRange) -> Retained<NSString>

Available on crate feature NSRange only.
Source

pub unsafe fn getCharacters_range( &self, buffer: NonNull<unichar>, range: NSRange, )

Available on crate feature NSRange only.
Source

pub fn compare(&self, string: &NSString) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn compare_options( &self, string: &NSString, mask: NSStringCompareOptions, ) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn compare_options_range( &self, string: &NSString, mask: NSStringCompareOptions, range_of_receiver_to_compare: NSRange, ) -> NSComparisonResult

Available on crate features NSObjCRuntime and NSRange only.
Source

pub unsafe fn compare_options_range_locale( &self, string: &NSString, mask: NSStringCompareOptions, range_of_receiver_to_compare: NSRange, locale: Option<&AnyObject>, ) -> NSComparisonResult

Available on crate features NSObjCRuntime and NSRange only.
Source

pub unsafe fn caseInsensitiveCompare( &self, string: &NSString, ) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn localizedCompare(&self, string: &NSString) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn localizedCaseInsensitiveCompare( &self, string: &NSString, ) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn localizedStandardCompare( &self, string: &NSString, ) -> NSComparisonResult

Available on crate feature NSObjCRuntime only.
Source

pub unsafe fn isEqualToString(&self, a_string: &NSString) -> bool

Source

pub fn hasPrefix(&self, str: &NSString) -> bool

Source

pub fn hasSuffix(&self, str: &NSString) -> bool

Source

pub unsafe fn commonPrefixWithString_options( &self, str: &NSString, mask: NSStringCompareOptions, ) -> Retained<NSString>

Source

pub unsafe fn containsString(&self, str: &NSString) -> bool

Source

pub unsafe fn localizedCaseInsensitiveContainsString( &self, str: &NSString, ) -> bool

Source

pub unsafe fn localizedStandardContainsString(&self, str: &NSString) -> bool

Source

pub unsafe fn localizedStandardRangeOfString(&self, str: &NSString) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn rangeOfString(&self, search_string: &NSString) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn rangeOfString_options( &self, search_string: &NSString, mask: NSStringCompareOptions, ) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn rangeOfString_options_range( &self, search_string: &NSString, mask: NSStringCompareOptions, range_of_receiver_to_search: NSRange, ) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn rangeOfString_options_range_locale( &self, search_string: &NSString, mask: NSStringCompareOptions, range_of_receiver_to_search: NSRange, locale: Option<&NSLocale>, ) -> NSRange

Available on crate features NSLocale and NSRange only.
Source

pub unsafe fn rangeOfCharacterFromSet( &self, search_set: &NSCharacterSet, ) -> NSRange

Available on crate features NSCharacterSet and NSRange only.
Source

pub unsafe fn rangeOfCharacterFromSet_options( &self, search_set: &NSCharacterSet, mask: NSStringCompareOptions, ) -> NSRange

Available on crate features NSCharacterSet and NSRange only.
Source

pub unsafe fn rangeOfCharacterFromSet_options_range( &self, search_set: &NSCharacterSet, mask: NSStringCompareOptions, range_of_receiver_to_search: NSRange, ) -> NSRange

Available on crate features NSCharacterSet and NSRange only.
Source

pub unsafe fn rangeOfComposedCharacterSequenceAtIndex( &self, index: NSUInteger, ) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn rangeOfComposedCharacterSequencesForRange( &self, range: NSRange, ) -> NSRange

Available on crate feature NSRange only.
Source

pub fn stringByAppendingString(&self, a_string: &NSString) -> Retained<NSString>

Source

pub unsafe fn doubleValue(&self) -> c_double

Source

pub unsafe fn floatValue(&self) -> c_float

Source

pub unsafe fn intValue(&self) -> c_int

Source

pub unsafe fn integerValue(&self) -> NSInteger

Source

pub unsafe fn longLongValue(&self) -> c_longlong

Source

pub unsafe fn boolValue(&self) -> bool

Source

pub unsafe fn uppercaseString(&self) -> Retained<NSString>

Source

pub unsafe fn lowercaseString(&self) -> Retained<NSString>

Source

pub unsafe fn capitalizedString(&self) -> Retained<NSString>

Source

pub unsafe fn localizedUppercaseString(&self) -> Retained<NSString>

Source

pub unsafe fn localizedLowercaseString(&self) -> Retained<NSString>

Source

pub unsafe fn localizedCapitalizedString(&self) -> Retained<NSString>

Source

pub unsafe fn uppercaseStringWithLocale( &self, locale: Option<&NSLocale>, ) -> Retained<NSString>

Available on crate feature NSLocale only.
Source

pub unsafe fn lowercaseStringWithLocale( &self, locale: Option<&NSLocale>, ) -> Retained<NSString>

Available on crate feature NSLocale only.
Source

pub unsafe fn capitalizedStringWithLocale( &self, locale: Option<&NSLocale>, ) -> Retained<NSString>

Available on crate feature NSLocale only.
Source

pub unsafe fn getLineStart_end_contentsEnd_forRange( &self, start_ptr: *mut NSUInteger, line_end_ptr: *mut NSUInteger, contents_end_ptr: *mut NSUInteger, range: NSRange, )

Available on crate feature NSRange only.
Source

pub unsafe fn lineRangeForRange(&self, range: NSRange) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn getParagraphStart_end_contentsEnd_forRange( &self, start_ptr: *mut NSUInteger, par_end_ptr: *mut NSUInteger, contents_end_ptr: *mut NSUInteger, range: NSRange, )

Available on crate feature NSRange only.
Source

pub unsafe fn paragraphRangeForRange(&self, range: NSRange) -> NSRange

Available on crate feature NSRange only.
Source

pub unsafe fn enumerateSubstringsInRange_options_usingBlock( &self, range: NSRange, opts: NSStringEnumerationOptions, block: &DynBlock<dyn Fn(*mut NSString, NSRange, NSRange, NonNull<Bool>)>, )

Available on crate features NSRange and block2 only.
Source

pub unsafe fn enumerateLinesUsingBlock( &self, block: &DynBlock<dyn Fn(NonNull<NSString>, NonNull<Bool>)>, )

Available on crate feature block2 only.
Source

pub fn UTF8String(&self) -> *const c_char

Source

pub unsafe fn fastestEncoding(&self) -> NSStringEncoding

Source

pub unsafe fn smallestEncoding(&self) -> NSStringEncoding

Source

pub unsafe fn dataUsingEncoding_allowLossyConversion( &self, encoding: NSStringEncoding, lossy: bool, ) -> Option<Retained<NSData>>

Available on crate feature NSData only.
Source

pub unsafe fn dataUsingEncoding( &self, encoding: NSStringEncoding, ) -> Option<Retained<NSData>>

Available on crate feature NSData only.
Source

pub unsafe fn canBeConvertedToEncoding( &self, encoding: NSStringEncoding, ) -> bool

Source

pub unsafe fn cStringUsingEncoding( &self, encoding: NSStringEncoding, ) -> *const c_char

Source

pub unsafe fn getCString_maxLength_encoding( &self, buffer: NonNull<c_char>, max_buffer_count: NSUInteger, encoding: NSStringEncoding, ) -> bool

Source

pub unsafe fn getBytes_maxLength_usedLength_encoding_options_range_remainingRange( &self, buffer: *mut c_void, max_buffer_count: NSUInteger, used_buffer_count: *mut NSUInteger, encoding: NSStringEncoding, options: NSStringEncodingConversionOptions, range: NSRange, leftover: NSRangePointer, ) -> bool

Available on crate feature NSRange only.
Source

pub unsafe fn maximumLengthOfBytesUsingEncoding( &self, enc: NSStringEncoding, ) -> NSUInteger

Source

pub fn lengthOfBytesUsingEncoding(&self, enc: NSStringEncoding) -> NSUInteger

Source

pub unsafe fn availableStringEncodings() -> NonNull<NSStringEncoding>

Source

pub unsafe fn localizedNameOfStringEncoding( encoding: NSStringEncoding, ) -> Retained<NSString>

Source

pub unsafe fn defaultCStringEncoding() -> NSStringEncoding

Source

pub unsafe fn decomposedStringWithCanonicalMapping(&self) -> Retained<NSString>

Source

pub unsafe fn precomposedStringWithCanonicalMapping(&self) -> Retained<NSString>

Source

pub unsafe fn decomposedStringWithCompatibilityMapping( &self, ) -> Retained<NSString>

Source

pub unsafe fn precomposedStringWithCompatibilityMapping( &self, ) -> Retained<NSString>

Source

pub unsafe fn componentsSeparatedByString( &self, separator: &NSString, ) -> Retained<NSArray<NSString>>

Available on crate feature NSArray only.
Source

pub unsafe fn componentsSeparatedByCharactersInSet( &self, separator: &NSCharacterSet, ) -> Retained<NSArray<NSString>>

Available on crate features NSArray and NSCharacterSet only.
Source

pub unsafe fn stringByTrimmingCharactersInSet( &self, set: &NSCharacterSet, ) -> Retained<NSString>

Available on crate feature NSCharacterSet only.
Source

pub unsafe fn stringByPaddingToLength_withString_startingAtIndex( &self, new_length: NSUInteger, pad_string: &NSString, pad_index: NSUInteger, ) -> Retained<NSString>

Source

pub unsafe fn stringByFoldingWithOptions_locale( &self, options: NSStringCompareOptions, locale: Option<&NSLocale>, ) -> Retained<NSString>

Available on crate feature NSLocale only.
Source

pub unsafe fn stringByReplacingOccurrencesOfString_withString_options_range( &self, target: &NSString, replacement: &NSString, options: NSStringCompareOptions, search_range: NSRange, ) -> Retained<NSString>

Available on crate feature NSRange only.
Source

pub unsafe fn stringByReplacingOccurrencesOfString_withString( &self, target: &NSString, replacement: &NSString, ) -> Retained<NSString>

Source

pub unsafe fn stringByReplacingCharactersInRange_withString( &self, range: NSRange, replacement: &NSString, ) -> Retained<NSString>

Available on crate feature NSRange only.
Source

pub unsafe fn stringByApplyingTransform_reverse( &self, transform: &NSStringTransform, reverse: bool, ) -> Option<Retained<NSString>>

Source

pub unsafe fn writeToURL_atomically_encoding_error( &self, url: &NSURL, use_auxiliary_file: bool, enc: NSStringEncoding, ) -> Result<(), Retained<NSError>>

Available on crate features NSError and NSURL only.
Source

pub unsafe fn writeToFile_atomically_encoding_error( &self, path: &NSString, use_auxiliary_file: bool, enc: NSStringEncoding, ) -> Result<(), Retained<NSError>>

Available on crate feature NSError only.
Source

pub unsafe fn description(&self) -> Retained<NSString>

Source

pub unsafe fn hash(&self) -> NSUInteger

Source

pub unsafe fn initWithCharactersNoCopy_length_freeWhenDone( this: Allocated<Self>, characters: NonNull<unichar>, length: NSUInteger, free_buffer: bool, ) -> Retained<Self>

Source

pub unsafe fn initWithCharactersNoCopy_length_deallocator( this: Allocated<Self>, chars: NonNull<unichar>, len: NSUInteger, deallocator: Option<&DynBlock<dyn Fn(NonNull<unichar>, NSUInteger)>>, ) -> Retained<Self>

Available on crate feature block2 only.
Source

pub unsafe fn initWithCharacters_length( this: Allocated<Self>, characters: NonNull<unichar>, length: NSUInteger, ) -> Retained<Self>

Source

pub unsafe fn initWithUTF8String( this: Allocated<Self>, null_terminated_c_string: NonNull<c_char>, ) -> Option<Retained<Self>>

Source

pub fn initWithString( this: Allocated<Self>, a_string: &NSString, ) -> Retained<Self>

Source

pub unsafe fn initWithData_encoding( this: Allocated<Self>, data: &NSData, encoding: NSStringEncoding, ) -> Option<Retained<Self>>

Available on crate feature NSData only.
Source

pub unsafe fn initWithBytes_length_encoding( this: Allocated<Self>, bytes: NonNull<c_void>, len: NSUInteger, encoding: NSStringEncoding, ) -> Option<Retained<Self>>

Source

pub unsafe fn initWithBytesNoCopy_length_encoding_freeWhenDone( this: Allocated<Self>, bytes: NonNull<c_void>, len: NSUInteger, encoding: NSStringEncoding, free_buffer: bool, ) -> Option<Retained<Self>>

Source

pub unsafe fn initWithBytesNoCopy_length_encoding_deallocator( this: Allocated<Self>, bytes: NonNull<c_void>, len: NSUInteger, encoding: NSStringEncoding, deallocator: Option<&DynBlock<dyn Fn(NonNull<c_void>, NSUInteger)>>, ) -> Option<Retained<Self>>

Available on crate feature block2 only.
Source

pub unsafe fn string() -> Retained<Self>

Source

pub fn stringWithString(string: &NSString) -> Retained<Self>

Source

pub unsafe fn stringWithCharacters_length( characters: NonNull<unichar>, length: NSUInteger, ) -> Retained<Self>

Source

pub unsafe fn stringWithUTF8String( null_terminated_c_string: NonNull<c_char>, ) -> Option<Retained<Self>>

Source

pub unsafe fn initWithCString_encoding( this: Allocated<Self>, null_terminated_c_string: NonNull<c_char>, encoding: NSStringEncoding, ) -> Option<Retained<Self>>

Source

pub unsafe fn stringWithCString_encoding( c_string: NonNull<c_char>, enc: NSStringEncoding, ) -> Option<Retained<Self>>

Source

pub unsafe fn initWithContentsOfURL_encoding_error( this: Allocated<Self>, url: &NSURL, enc: NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate features NSError and NSURL only.
Source

pub unsafe fn initWithContentsOfFile_encoding_error( this: Allocated<Self>, path: &NSString, enc: NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate feature NSError only.
Source

pub unsafe fn stringWithContentsOfURL_encoding_error( url: &NSURL, enc: NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate features NSError and NSURL only.
Source

pub unsafe fn stringWithContentsOfFile_encoding_error( path: &NSString, enc: NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate feature NSError only.
Source

pub unsafe fn initWithContentsOfURL_usedEncoding_error( this: Allocated<Self>, url: &NSURL, enc: *mut NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate features NSError and NSURL only.
Source

pub unsafe fn initWithContentsOfFile_usedEncoding_error( this: Allocated<Self>, path: &NSString, enc: *mut NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate feature NSError only.
Source

pub unsafe fn stringWithContentsOfURL_usedEncoding_error( url: &NSURL, enc: *mut NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate features NSError and NSURL only.
Source

pub unsafe fn stringWithContentsOfFile_usedEncoding_error( path: &NSString, enc: *mut NSStringEncoding, ) -> Result<Retained<Self>, Retained<NSError>>

Available on crate feature NSError only.
Source§

impl NSString

NSStringEncodingDetection.

Source

pub unsafe fn stringEncodingForData_encodingOptions_convertedString_usedLossyConversion( data: &NSData, opts: Option<&NSDictionary<NSStringEncodingDetectionOptionsKey, AnyObject>>, string: Option<&mut Option<Retained<NSString>>>, used_lossy_conversion: *mut Bool, ) -> NSStringEncoding

Available on crate features NSData and NSDictionary only.
Source§

impl NSString

NSItemProvider.

This impl block contains no items.
Source§

impl NSString

NSExtendedStringPropertyListParsing.

Source

pub unsafe fn propertyList(&self) -> Retained<AnyObject>

Source

pub unsafe fn propertyListFromStringsFileFormat( &self, ) -> Option<Retained<NSDictionary>>

Available on crate feature NSDictionary only.
Source§

impl NSString

NSStringDeprecated.

Source

pub unsafe fn cString(&self) -> *const c_char

👎Deprecated: Use -cStringUsingEncoding: instead
Source

pub unsafe fn lossyCString(&self) -> *const c_char

👎Deprecated: Use -cStringUsingEncoding: instead
Source

pub unsafe fn cStringLength(&self) -> NSUInteger

👎Deprecated: Use -lengthOfBytesUsingEncoding: instead
Source

pub unsafe fn getCString(&self, bytes: NonNull<c_char>)

👎Deprecated: Use -getCString:maxLength:encoding: instead
Source

pub unsafe fn getCString_maxLength( &self, bytes: NonNull<c_char>, max_length: NSUInteger, )

👎Deprecated: Use -getCString:maxLength:encoding: instead
Source

pub unsafe fn getCString_maxLength_range_remainingRange( &self, bytes: NonNull<c_char>, max_length: NSUInteger, a_range: NSRange, leftover_range: NSRangePointer, )

👎Deprecated: Use -getCString:maxLength:encoding: instead
Available on crate feature NSRange only.
Source

pub unsafe fn writeToFile_atomically( &self, path: &NSString, use_auxiliary_file: bool, ) -> bool

👎Deprecated: Use -writeToFile:atomically:encoding:error: instead
Source

pub unsafe fn writeToURL_atomically( &self, url: &NSURL, atomically: bool, ) -> bool

👎Deprecated: Use -writeToURL:atomically:encoding:error: instead
Available on crate feature NSURL only.
Source

pub unsafe fn initWithContentsOfFile( this: Allocated<Self>, path: &NSString, ) -> Option<Retained<Self>>

👎Deprecated: Use -initWithContentsOfFile:encoding:error: instead
Source

pub unsafe fn initWithContentsOfURL( this: Allocated<Self>, url: &NSURL, ) -> Option<Retained<Self>>

👎Deprecated: Use -initWithContentsOfURL:encoding:error: instead
Available on crate feature NSURL only.
Source

pub unsafe fn stringWithContentsOfFile( path: &NSString, ) -> Option<Retained<AnyObject>>

👎Deprecated: Use +stringWithContentsOfFile:encoding:error: instead
Source

pub unsafe fn stringWithContentsOfURL( url: &NSURL, ) -> Option<Retained<AnyObject>>

👎Deprecated: Use +stringWithContentsOfURL:encoding:error: instead
Available on crate feature NSURL only.
Source

pub unsafe fn initWithCStringNoCopy_length_freeWhenDone( this: Allocated<Self>, bytes: NonNull<c_char>, length: NSUInteger, free_buffer: bool, ) -> Option<Retained<Self>>

👎Deprecated: Use -initWithCString:encoding: instead
Source

pub unsafe fn initWithCString_length( this: Allocated<Self>, bytes: NonNull<c_char>, length: NSUInteger, ) -> Option<Retained<Self>>

👎Deprecated: Use -initWithCString:encoding: instead
Source

pub unsafe fn initWithCString( this: Allocated<Self>, bytes: NonNull<c_char>, ) -> Option<Retained<Self>>

👎Deprecated: Use -initWithCString:encoding: instead
Source

pub unsafe fn stringWithCString_length( bytes: NonNull<c_char>, length: NSUInteger, ) -> Option<Retained<AnyObject>>

👎Deprecated: Use +stringWithCString:encoding:
Source

pub unsafe fn stringWithCString( bytes: NonNull<c_char>, ) -> Option<Retained<AnyObject>>

👎Deprecated: Use +stringWithCString:encoding: instead
Source

pub unsafe fn getCharacters(&self, buffer: NonNull<unichar>)

Source§

impl NSString

NSURLUtilities.

Source

pub unsafe fn stringByAddingPercentEncodingWithAllowedCharacters( &self, allowed_characters: &NSCharacterSet, ) -> Option<Retained<NSString>>

Available on crate features NSURL and NSCharacterSet only.
Source

pub unsafe fn stringByRemovingPercentEncoding( &self, ) -> Option<Retained<NSString>>

Available on crate feature NSURL only.
Source

pub unsafe fn stringByAddingPercentEscapesUsingEncoding( &self, enc: NSStringEncoding, ) -> Option<Retained<NSString>>

👎Deprecated: Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid.
Available on crate feature NSURL only.
Source

pub unsafe fn stringByReplacingPercentEscapesUsingEncoding( &self, enc: NSStringEncoding, ) -> Option<Retained<NSString>>

👎Deprecated: Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding.
Available on crate feature NSURL only.
Source§

impl NSString

Source

pub fn len(&self) -> usize

The number of UTF-8 code units in self.

Source

pub fn len_utf16(&self) -> usize

The number of UTF-16 code units in the string.

See also NSString::len.

Source

pub fn is_empty(&self) -> bool

Source

pub unsafe fn to_str<'r, 's: 'r, 'p: 'r>( &'s self, pool: AutoreleasePool<'p>, ) -> &'r str

Convert the string into a string slice.

The signature of this method can be a bit confusing, as it contains several lifetimes; the lifetime 's of the NSString, the lifetime 'p of the current autorelease pool and the lifetime 'r of the returned string slice.

In general, this method converts the string to a newly allocated UTF-8 string, autoreleases the buffer, and returns a slice pointer to this internal buffer, which will become invalid once the autorelease pool is popped. So the lifetime of the return value is bound to the current autorelease pool.

However, as an optimization, this method may choose to instead return an internal reference to the NSString when it can, and when the string is immutable, and that is why the lifetime of the returned string slice is also bound to the string itself.

You should prefer the to_string method or the Display implementation over this method when possible.

§Safety

The pool must be the innermost pool, see the documentation on autoreleasepool.

§Examples

Get the string slice of the NSString, and compare it with another inside an autorelease pool.

use objc2_foundation::NSString;
use objc2::rc::autoreleasepool;

let string = NSString::from_str("foo");
autoreleasepool(|pool| {
    // SAFETY: The str is not used outside the autorelease pool.
    assert_eq!(unsafe { string.to_str(pool) }, "foo");
});
Source

pub fn from_str(string: &str) -> Retained<Self>

Creates an immutable NSString by copying the given string slice.

Prefer using the ns_string! macro when possible.

Methods from Deref<Target = NSObject>§

Source

pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !

Handle messages the object doesn’t recognize.

See Apple’s documentation for details.

Methods from Deref<Target = AnyObject>§

Source

pub fn class(&self) -> &'static AnyClass

Dynamically find the class of this object.

§Panics

May panic if the object is invalid (which may be the case for objects returned from unavailable init/new methods).

§Example

Check that an instance of NSObject has the precise class NSObject.

use objc2::ClassType;
use objc2::runtime::NSObject;

let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());
Source

pub unsafe fn get_ivar<T>(&self, name: &str) -> &T
where T: Encode,

👎Deprecated: this is difficult to use correctly, use Ivar::load instead.

Use Ivar::load instead.

§Safety

The object must have an instance variable with the given name, and it must be of type T.

See Ivar::load_ptr for details surrounding this.

Source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: DowncastTarget,

Attempt to downcast the object to a class of type T.

This is the reference-variant. Use Retained::downcast if you want to convert a retained object to another type.

§Mutable classes

Some classes have immutable and mutable variants, such as NSString and NSMutableString.

When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.

So using this method to convert a NSString to a NSMutableString, while not unsound, is generally frowned upon unless you created the string yourself, or the API explicitly documents the string to be mutable.

See Apple’s documentation on mutability and on isKindOfClass: for more details.

§Generic classes

Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.

You can, however, safely downcast to generic collections where all the type-parameters are AnyObject.

§Panics

This works internally by calling isKindOfClass:. That means that the object must have the instance method of that name, and an exception will be thrown (if CoreFoundation is linked) or the process will abort if that is not the case. In the vast majority of cases, you don’t need to worry about this, since both root objects NSObject and NSProxy implement this method.

§Examples

Cast an NSString back and forth from NSObject.

use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};

let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();

Try (and fail) to cast an NSObject to an NSString.

use objc2_foundation::{NSObject, NSString};

let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());

Try to cast to an array of strings.

use objc2_foundation::{NSArray, NSObject, NSString};

let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();

This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.

Downcast when processing each element instead.

use objc2_foundation::{NSArray, NSObject, NSString};

let arr = NSArray::from_retained_slice(&[NSObject::new()]);

for elem in arr {
    if let Some(data) = elem.downcast_ref::<NSString>() {
        // handle `data`
    }
}

Trait Implementations§

Source§

impl AddAssign<&NSString> for &NSMutableString

Source§

fn add_assign(&mut self, other: &NSString)

Performs the += operation. Read more
Source§

impl AsRef<AnyObject> for NSString

Source§

fn as_ref(&self) -> &AnyObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<NSObject> for NSString

Source§

fn as_ref(&self) -> &NSObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<NSString> for NSConstantString

Source§

fn as_ref(&self) -> &NSString

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<NSString> for NSMutableString

Source§

fn as_ref(&self) -> &NSString

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<NSString> for NSSimpleCString

Source§

fn as_ref(&self) -> &NSString

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<NSString> for NSString

Source§

fn as_ref(&self) -> &Self

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Borrow<AnyObject> for NSString

Source§

fn borrow(&self) -> &AnyObject

Immutably borrows from an owned value. Read more
Source§

impl Borrow<NSObject> for NSString

Source§

fn borrow(&self) -> &NSObject

Immutably borrows from an owned value. Read more
Source§

impl Borrow<NSString> for NSConstantString

Source§

fn borrow(&self) -> &NSString

Immutably borrows from an owned value. Read more
Source§

impl Borrow<NSString> for NSMutableString

Source§

fn borrow(&self) -> &NSString

Immutably borrows from an owned value. Read more
Source§

impl Borrow<NSString> for NSSimpleCString

Source§

fn borrow(&self) -> &NSString

Immutably borrows from an owned value. Read more
Source§

impl ClassType for NSString

Source§

const NAME: &'static str = "NSString"

The name of the Objective-C class that this type represents. Read more
Source§

type Super = NSObject

The superclass of this class. Read more
Source§

type ThreadKind = <<NSString as ClassType>::Super as ClassType>::ThreadKind

Whether the type can be used from any thread, or from only the main thread. Read more
Source§

fn class() -> &'static AnyClass

Get a reference to the Objective-C class that this type represents. Read more
Source§

fn as_super(&self) -> &Self::Super

Get an immutable reference to the superclass.
Source§

impl CopyingHelper for NSString

Available on crate feature NSObject only.
Source§

type Result = NSString

The immutable counterpart of the type, or Self if the type has no immutable counterpart. Read more
Source§

impl Debug for NSString

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl DefaultRetained for NSString

Source§

fn default_retained() -> Retained<Self>

The default Retained for a type. Read more
Source§

impl Deref for NSString

Source§

type Target = NSObject

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Display for NSString

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for NSString

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Message for NSString

Source§

fn retain(&self) -> Retained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

impl MutableCopyingHelper for NSString

Available on crate feature NSObject only.
Source§

type Result = NSMutableString

The mutable counterpart of the type, or Self if the type has no mutable counterpart. Read more
Source§

impl NSCoding for NSString

Source§

unsafe fn encodeWithCoder(&self, coder: &NSCoder)
where Self: Sized + Message,

Available on crate features NSObject and NSCoder only.
Source§

unsafe fn initWithCoder( this: Allocated<Self>, coder: &NSCoder, ) -> Option<Retained<Self>>
where Self: Sized + Message,

Available on crate features NSObject and NSCoder only.
Source§

impl NSCopying for NSString

Source§

fn copy(&self) -> Retained<Self::Result>
where Self: Sized + Message + CopyingHelper,

Available on crate feature NSObject only.
Returns a new instance that’s a copy of the receiver. Read more
Source§

unsafe fn copyWithZone(&self, zone: *mut NSZone) -> Retained<Self::Result>
where Self: Sized + Message + CopyingHelper,

Available on crate feature NSObject only.
Returns a new instance that’s a copy of the receiver. Read more
Source§

impl NSItemProviderReading for NSString

Source§

unsafe fn readableTypeIdentifiersForItemProvider() -> Retained<NSArray<NSString>>
where Self: Sized + ClassType,

Available on crate features NSArray and NSItemProvider only.
Source§

unsafe fn objectWithItemProviderData_typeIdentifier_error( data: &NSData, type_identifier: &NSString, ) -> Result<Retained<Self>, Retained<NSError>>
where Self: Sized + ClassType,

Available on crate features NSData and NSError and NSItemProvider only.
Source§

impl NSItemProviderWriting for NSString

Source§

unsafe fn writableTypeIdentifiersForItemProvider_class() -> Retained<NSArray<NSString>>
where Self: Sized + ClassType,

Available on crate features NSArray and NSItemProvider only.
Source§

unsafe fn writableTypeIdentifiersForItemProvider( &self, ) -> Retained<NSArray<NSString>>
where Self: Sized + Message,

Available on crate features NSArray and NSItemProvider only.
Source§

unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier_class( type_identifier: &NSString, ) -> NSItemProviderRepresentationVisibility
where Self: Sized + ClassType,

Available on crate feature NSItemProvider only.
Source§

unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier( &self, type_identifier: &NSString, ) -> NSItemProviderRepresentationVisibility
where Self: Sized + Message,

Available on crate feature NSItemProvider only.
Source§

unsafe fn loadDataWithTypeIdentifier_forItemProviderCompletionHandler( &self, type_identifier: &NSString, completion_handler: &DynBlock<dyn Fn(*mut NSData, *mut NSError)>, ) -> Option<Retained<NSProgress>>
where Self: Sized + Message,

Available on crate features NSData and NSError and NSProgress and block2 and NSItemProvider only.
Source§

impl NSMutableCopying for NSString

Source§

fn mutableCopy(&self) -> Retained<Self::Result>

Available on crate feature NSObject only.
Returns a new instance that’s a mutable copy of the receiver. Read more
Source§

unsafe fn mutableCopyWithZone( &self, zone: *mut NSZone, ) -> Retained<Self::Result>

Available on crate feature NSObject only.
Returns a new instance that’s a mutable copy of the receiver. Read more
Source§

impl NSObjectProtocol for NSString

Source§

fn isEqual(&self, other: Option<&AnyObject>) -> bool
where Self: Sized + Message,

Check whether the object is equal to an arbitrary other object. Read more
Source§

fn hash(&self) -> usize
where Self: Sized + Message,

An integer that can be used as a table address in a hash table structure. Read more
Source§

fn isKindOfClass(&self, cls: &AnyClass) -> bool
where Self: Sized + Message,

Check if the object is an instance of the class, or one of its subclasses. Read more
Source§

fn is_kind_of<T>(&self) -> bool
where T: ClassType, Self: Sized + Message,

👎Deprecated: use isKindOfClass directly, or cast your objects with AnyObject::downcast_ref
Check if the object is an instance of the class type, or one of its subclasses. Read more
Source§

fn isMemberOfClass(&self, cls: &AnyClass) -> bool
where Self: Sized + Message,

Check if the object is an instance of a specific class, without checking subclasses. Read more
Source§

fn respondsToSelector(&self, aSelector: Sel) -> bool
where Self: Sized + Message,

Check whether the object implements or inherits a method with the given selector. Read more
Source§

fn conformsToProtocol(&self, aProtocol: &AnyProtocol) -> bool
where Self: Sized + Message,

Check whether the object conforms to a given protocol. Read more
Source§

fn description(&self) -> Retained<NSObject>
where Self: Sized + Message,

A textual representation of the object. Read more
Source§

fn debugDescription(&self) -> Retained<NSObject>
where Self: Sized + Message,

A textual representation of the object to use when debugging. Read more
Source§

fn isProxy(&self) -> bool
where Self: Sized + Message,

Check whether the receiver is a subclass of the NSProxy root class instead of the usual NSObject. Read more
Source§

fn retainCount(&self) -> usize
where Self: Sized + Message,

The reference count of the object. Read more
Source§

impl NSSecureCoding for NSString

Source§

unsafe fn supportsSecureCoding() -> bool
where Self: Sized + ClassType,

Available on crate feature NSObject only.
Source§

impl Ord for NSString

Available on crate feature NSObjCRuntime only.
Source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq<NSMutableString> for NSString

Source§

fn eq(&self, other: &NSMutableString) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq<NSString> for NSMutableString

Source§

fn eq(&self, other: &NSString) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialEq for NSString

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd<NSMutableString> for NSString

Available on crate feature NSObjCRuntime only.
Source§

fn partial_cmp(&self, other: &NSMutableString) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl PartialOrd<NSString> for NSMutableString

Available on crate feature NSObjCRuntime only.
Source§

fn partial_cmp(&self, other: &NSString) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl PartialOrd for NSString

Available on crate feature NSObjCRuntime only.
Source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl RefEncode for NSString

Source§

const ENCODING_REF: Encoding = <NSObject as ::objc2::RefEncode>::ENCODING_REF

The Objective-C type-encoding for a reference of this type. Read more
Source§

impl ToOwned for NSString

Available on crate feature NSObject only.
Source§

type Owned = Retained<NSString>

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> Self::Owned

Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · Source§

fn clone_into(&self, target: &mut Self::Owned)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl DowncastTarget for NSString

Source§

impl Eq for NSString

Source§

impl RefUnwindSafe for NSString

Source§

impl UnwindSafe for NSString

Auto Trait Implementations§

§

impl !Freeze for NSString

§

impl !Send for NSString

§

impl !Sync for NSString

§

impl !Unpin for NSString

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<'a, T> AnyThread for T
where T: ClassType<ThreadKind = dyn AnyThread + 'a> + ?Sized,

Source§

fn alloc() -> Allocated<Self>
where Self: Sized + ClassType,

Allocate a new instance of the class. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> AutoreleaseSafe for T
where T: ?Sized,