cobin/foundation/
ns_array.rs

1use {
2  std::marker::PhantomData,
3  crate::{
4    obj::Object,
5    runtime::NSObjectBase,
6    PrivateMarker
7  }
8};
9
10pub trait NSArrayBase<T>: Object { }
11
12pub struct NSArray<T: 'static>(PrivateMarker, PhantomData<T>);
13
14impl<T> Object for NSArray<T> {}
15unsafe impl<T> objc::Message for NSArray<T> {}
16
17impl<T> NSObjectBase for NSArray<T> {
18  fn class_name() -> &'static str { "NSArray" }
19}
20
21impl<T> NSArrayBase<T> for NSArray<T> { }
22
23impl<T> NSArray<T> { }