Struct core_foundation::array::CFArray[][src]

pub struct CFArray<T = *const c_void>(_, _);
Expand description

A heterogeneous immutable array.

Implementations

impl<T> CFArray<T>[src]

pub fn from_copyable(elems: &[T]) -> CFArray<T> where
    T: Copy
[src]

Creates a new CFArray with the given elements, which must implement Copy.

pub fn from_CFTypes(elems: &[T]) -> CFArray<T> where
    T: TCFType
[src]

Creates a new CFArray with the given elements, which must be CFType objects.

pub fn to_untyped(&self) -> CFArray[src]

pub fn into_untyped(self) -> CFArray[src]

Returns the same array, but with the type reset to void pointers. Equal to to_untyped, but is faster since it does not increment the retain count.

pub fn iter<'a>(&'a self) -> CFArrayIterator<'a, T>

Notable traits for CFArrayIterator<'a, T>

impl<'a, T: FromVoid> Iterator for CFArrayIterator<'a, T> type Item = ItemRef<'a, T>;
[src]

Iterates over the elements of this CFArray.

Careful; the loop body must wrap the reference properly. Generally, when array elements are Core Foundation objects (not always true), they need to be wrapped with TCFType::wrap_under_get_rule().

pub fn len(&self) -> CFIndex[src]

pub unsafe fn get_unchecked<'a>(&'a self, index: CFIndex) -> ItemRef<'a, T> where
    T: FromVoid
[src]

pub fn get<'a>(&'a self, index: CFIndex) -> Option<ItemRef<'a, T>> where
    T: FromVoid
[src]

pub fn get_values(&self, range: CFRange) -> Vec<*const c_void>[src]

pub fn get_all_values(&self) -> Vec<*const c_void>[src]

Trait Implementations

impl CFPropertyListSubClass for CFArray[src]

fn to_CFPropertyList(&self) -> CFPropertyList[src]

Create an instance of the superclass type CFPropertyList for this instance. Read more

fn into_CFPropertyList(self) -> CFPropertyList where
    Self: Sized
[src]

Equal to to_CFPropertyList, but consumes self and avoids changing the reference count. Read more

impl Clone for CFArray[src]

fn clone(&self) -> CFArray[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for CFArray[src]

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

Formats the value using the given formatter. Read more

impl<T> Drop for CFArray<T>[src]

fn drop(&mut self)[src]

Executes the destructor for this type. Read more

impl<'a, T: FromVoid> IntoIterator for &'a CFArray<T>[src]

type Item = ItemRef<'a, T>

The type of the elements being iterated over.

type IntoIter = CFArrayIterator<'a, T>

Which kind of iterator are we turning this into?

fn into_iter(self) -> CFArrayIterator<'a, T>

Notable traits for CFArrayIterator<'a, T>

impl<'a, T: FromVoid> Iterator for CFArrayIterator<'a, T> type Item = ItemRef<'a, T>;
[src]

Creates an iterator from a value. Read more

impl PartialEq<CFArray<*const c_void>> for CFArray[src]

fn eq(&self, other: &CFArray) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

impl<T> TCFType for CFArray<T>[src]

type Ref = CFArrayRef

The reference type wrapped inside this type.

fn as_concrete_TypeRef(&self) -> CFArrayRef[src]

Returns the object as its concrete TypeRef.

unsafe fn wrap_under_get_rule(reference: CFArrayRef) -> Self[src]

Returns an instance of the object, wrapping the underlying CFTypeRef subclass. Use this when following Core Foundation’s “Get Rule”. The reference count is bumped. Read more

fn as_CFTypeRef(&self) -> CFTypeRef[src]

Returns the object as a raw CFTypeRef. The reference count is not adjusted.

unsafe fn wrap_under_create_rule(reference: CFArrayRef) -> Self[src]

Returns an instance of the object, wrapping the underlying CFTypeRef subclass. Use this when following Core Foundation’s “Create Rule”. The reference count is not bumped. Read more

fn type_id() -> CFTypeID[src]

Returns the type ID for this class.

fn as_CFType(&self) -> CFType[src]

Returns the object as a wrapped CFType. The reference count is incremented by one.

fn into_CFType(self) -> CFType where
    Self: Sized
[src]

Returns the object as a wrapped CFType. Consumes self and avoids changing the reference count. Read more

fn retain_count(&self) -> CFIndex[src]

Returns the reference count of the object. It is unwise to do anything other than test whether the return value of this method is greater than zero. Read more

fn type_of(&self) -> CFTypeID[src]

Returns the type ID of this object.

fn show(&self)[src]

Writes a debugging version of this object on standard error.

fn instance_of<OtherCFType: TCFType>(&self) -> bool[src]

Returns true if this value is an instance of another type.

impl<'a> ToVoid<CFArray<*const c_void>> for &'a CFArray[src]

impl ToVoid<CFArray<*const c_void>> for CFArray[src]

impl ToVoid<CFArray<*const c_void>> for CFArrayRef[src]

impl ConcreteCFType for CFArray<*const c_void>[src]

impl Eq for CFArray[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for CFArray<T> where
    T: RefUnwindSafe

impl<T = *const c_void> !Send for CFArray<T>

impl<T = *const c_void> !Sync for CFArray<T>

impl<T> Unpin for CFArray<T> where
    T: Unpin

impl<T> UnwindSafe for CFArray<T> where
    T: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> FromMutVoid for T where
    T: TCFType
[src]

pub unsafe fn from_mut_void<'a>(*mut c_void) -> ItemMutRef<'a, T>[src]

impl<T> FromVoid for T where
    T: TCFType
[src]

pub unsafe fn from_void<'a>(*const c_void) -> ItemRef<'a, T>[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.