Struct objc2_foundation::NSMapTable
source · #[repr(C)]pub struct NSMapTable<KeyType: ?Sized = AnyObject, ObjectType: ?Sized = AnyObject> { /* private fields */ }
Available on crate feature
NSMapTable
only.Implementations§
source§impl<KeyType: Message, ObjectType: Message> NSMapTable<KeyType, ObjectType>
impl<KeyType: Message, ObjectType: Message> NSMapTable<KeyType, ObjectType>
pub unsafe fn initWithKeyOptions_valueOptions_capacity( this: Allocated<Self>, key_options: NSPointerFunctionsOptions, value_options: NSPointerFunctionsOptions, initial_capacity: NSUInteger ) -> Retained<Self>
Available on crate feature
NSPointerFunctions
only.pub unsafe fn initWithKeyPointerFunctions_valuePointerFunctions_capacity( this: Allocated<Self>, key_functions: &NSPointerFunctions, value_functions: &NSPointerFunctions, initial_capacity: NSUInteger ) -> Retained<Self>
Available on crate feature
NSPointerFunctions
only.pub unsafe fn mapTableWithKeyOptions_valueOptions( key_options: NSPointerFunctionsOptions, value_options: NSPointerFunctionsOptions ) -> Retained<NSMapTable<KeyType, ObjectType>>
Available on crate feature
NSPointerFunctions
only.pub unsafe fn mapTableWithStrongToStrongObjects() -> Retained<AnyObject>
👎Deprecated: GC no longer supported
pub unsafe fn mapTableWithWeakToStrongObjects() -> Retained<AnyObject>
👎Deprecated: GC no longer supported
pub unsafe fn mapTableWithStrongToWeakObjects() -> Retained<AnyObject>
👎Deprecated: GC no longer supported
pub unsafe fn mapTableWithWeakToWeakObjects() -> Retained<AnyObject>
👎Deprecated: GC no longer supported
pub unsafe fn strongToStrongObjectsMapTable( ) -> Retained<NSMapTable<KeyType, ObjectType>>
pub unsafe fn weakToStrongObjectsMapTable( ) -> Retained<NSMapTable<KeyType, ObjectType>>
pub unsafe fn strongToWeakObjectsMapTable( ) -> Retained<NSMapTable<KeyType, ObjectType>>
pub unsafe fn weakToWeakObjectsMapTable( ) -> Retained<NSMapTable<KeyType, ObjectType>>
pub unsafe fn keyPointerFunctions(&self) -> Retained<NSPointerFunctions>
Available on crate feature
NSPointerFunctions
only.pub unsafe fn valuePointerFunctions(&self) -> Retained<NSPointerFunctions>
Available on crate feature
NSPointerFunctions
only.pub unsafe fn objectForKey( &self, a_key: Option<&KeyType> ) -> Option<Retained<ObjectType>>
pub unsafe fn removeObjectForKey(&self, a_key: Option<&KeyType>)
pub unsafe fn setObject_forKey( &self, an_object: Option<&ObjectType>, a_key: Option<&KeyType> )
pub unsafe fn count(&self) -> NSUInteger
pub unsafe fn keyEnumerator(&self) -> Retained<NSEnumerator<KeyType>>
Available on crate feature
NSEnumerator
only.pub unsafe fn objectEnumerator( &self ) -> Option<Retained<NSEnumerator<ObjectType>>>
Available on crate feature
NSEnumerator
only.pub unsafe fn removeAllObjects(&self)
pub unsafe fn dictionaryRepresentation( &self ) -> Retained<NSDictionary<KeyType, ObjectType>>
Available on crate feature
NSDictionary
only.Methods from Deref<Target = NSObject>§
sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§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());
sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load
instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
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.
sourcepub unsafe fn get_mut_ivar<T>(&mut self, name: &str) -> &mut Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load_mut
instead.
pub unsafe fn get_mut_ivar<T>(&mut self, name: &str) -> &mut Twhere
T: Encode,
Ivar::load_mut
instead.Use Ivar::load_mut
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.
Trait Implementations§
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<AnyObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<AnyObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<NSMapTable<KeyType, ObjectType>> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<NSMapTable<KeyType, ObjectType>> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<NSObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsMut<NSObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<AnyObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<AnyObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<NSMapTable<KeyType, ObjectType>> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<NSMapTable<KeyType, ObjectType>> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<NSObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> AsRef<NSObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Borrow<AnyObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Borrow<AnyObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Borrow<NSObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Borrow<NSObject> for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> BorrowMut<AnyObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> BorrowMut<AnyObject> for NSMapTable<KeyType, ObjectType>
source§fn borrow_mut(&mut self) -> &mut AnyObject
fn borrow_mut(&mut self) -> &mut AnyObject
Mutably borrows from an owned value. Read more
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> BorrowMut<NSObject> for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> BorrowMut<NSObject> for NSMapTable<KeyType, ObjectType>
source§fn borrow_mut(&mut self) -> &mut NSObject
fn borrow_mut(&mut self) -> &mut NSObject
Mutably borrows from an owned value. Read more
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> ClassType for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> ClassType for NSMapTable<KeyType, ObjectType>
§type Mutability = InteriorMutable
type Mutability = InteriorMutable
Whether the type is mutable or immutable. Read more
source§const NAME: &'static str = "NSMapTable"
const NAME: &'static str = "NSMapTable"
The name of the Objective-C class that this type represents. Read more
source§fn class() -> &'static AnyClass
fn class() -> &'static AnyClass
Get a reference to the Objective-C class that this type represents. Read more
source§fn as_super_mut(&mut self) -> &mut Self::Super
fn as_super_mut(&mut self) -> &mut Self::Super
Get a mutable reference to the superclass.
source§impl<KeyType: Debug + ?Sized, ObjectType: Debug + ?Sized> Debug for NSMapTable<KeyType, ObjectType>
impl<KeyType: Debug + ?Sized, ObjectType: Debug + ?Sized> Debug for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Deref for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Deref for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> DerefMut for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> DerefMut for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: Hash + ?Sized, ObjectType: Hash + ?Sized> Hash for NSMapTable<KeyType, ObjectType>
impl<KeyType: Hash + ?Sized, ObjectType: Hash + ?Sized> Hash for NSMapTable<KeyType, ObjectType>
source§impl<KeyType: PartialEq + ?Sized, ObjectType: PartialEq + ?Sized> PartialEq for NSMapTable<KeyType, ObjectType>
impl<KeyType: PartialEq + ?Sized, ObjectType: PartialEq + ?Sized> PartialEq for NSMapTable<KeyType, ObjectType>
source§fn eq(&self, other: &NSMapTable<KeyType, ObjectType>) -> bool
fn eq(&self, other: &NSMapTable<KeyType, ObjectType>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> RefEncode for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> RefEncode for NSMapTable<KeyType, ObjectType>
source§const ENCODING_REF: Encoding = <NSObject as ::objc2::RefEncode>::ENCODING_REF
const ENCODING_REF: Encoding = <NSObject as ::objc2::RefEncode>::ENCODING_REF
The Objective-C type-encoding for a reference of this type. Read more
impl<KeyType: Eq + ?Sized, ObjectType: Eq + ?Sized> Eq for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + Message, ObjectType: ?Sized + Message> Message for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + NSCoding, ObjectType: ?Sized + NSCoding> NSCoding for NSMapTable<KeyType, ObjectType>
Available on crate feature
NSObject
only.impl<KeyType: ?Sized + IsIdCloneable, ObjectType: ?Sized + IsIdCloneable> NSCopying for NSMapTable<KeyType, ObjectType>
Available on crate feature
NSObject
only.impl<KeyType: ?Sized, ObjectType: ?Sized> NSFastEnumeration for NSMapTable<KeyType, ObjectType>
Available on crate feature
NSEnumerator
only.impl<KeyType: ?Sized, ObjectType: ?Sized> NSObjectProtocol for NSMapTable<KeyType, ObjectType>
impl<KeyType: ?Sized + NSSecureCoding, ObjectType: ?Sized + NSSecureCoding> NSSecureCoding for NSMapTable<KeyType, ObjectType>
Available on crate feature
NSObject
only.impl<KeyType: ?Sized, ObjectType: ?Sized> StructuralPartialEq for NSMapTable<KeyType, ObjectType>
Auto Trait Implementations§
impl<KeyType = AnyObject, ObjectType = AnyObject> !Freeze for NSMapTable<KeyType, ObjectType>
impl<KeyType = AnyObject, ObjectType = AnyObject> !RefUnwindSafe for NSMapTable<KeyType, ObjectType>
impl<KeyType = AnyObject, ObjectType = AnyObject> !Send for NSMapTable<KeyType, ObjectType>
impl<KeyType = AnyObject, ObjectType = AnyObject> !Sync for NSMapTable<KeyType, ObjectType>
impl<KeyType = AnyObject, ObjectType = AnyObject> !Unpin for NSMapTable<KeyType, ObjectType>
impl<KeyType = AnyObject, ObjectType = AnyObject> !UnwindSafe for NSMapTable<KeyType, ObjectType>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more