[][src]Struct c_linked_list::CLinkedListConst

pub struct CLinkedListConst<T, N: Fn(&T) -> *const T> { /* fields omitted */ }

Wraps a C linked list comprised of const pointers between nodes.

Methods

impl<'a, T: 'a, N: Fn(&T) -> *const T + 'a> CLinkedListConst<T, N>
[src]

Construct a CLinkedListConst by wrapping a C linked list. head points to the head element of the list or is NULL for a list of length 0. next is a function that takes a node and returns a pointer to the next element.

Example

To wrap this C type.

struct LinkedListNode {
    int value;
    const struct LinkedListNode *next;
};

Call this function as CLinkedListConst::from_ptr(ptr_to_head, |n| n.next).

Unsafety

This function is unsafe because it is up to the caller to ensure that head is valid.

Important traits for CLinkedListConstIter<'a, T, N>

Iterate over the linked list, returning immutable references to the nodes of the list.

Returns true if the list is empty.

Calculates the length of the list. This is an O(n) operation.

Provides a reference to the front element in the list, or None if the list is empty.

Trait Implementations

impl<'a, T: 'a, N: Fn(&T) -> *const T + 'a> IntoIterator for &'a CLinkedListConst<T, N>
[src]

The type of the elements being iterated over.

Which kind of iterator are we turning this into?

Important traits for CLinkedListConstIter<'a, T, N>

Creates an iterator from a value. Read more

impl<'a, T: Debug + 'a, N: Fn(&T) -> *const T + 'a> Debug for CLinkedListConst<T, N>
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<T, N> !Send for CLinkedListConst<T, N>

impl<T, N> !Sync for CLinkedListConst<T, N>

Blanket Implementations

impl<T> From for T
[src]

Performs the conversion.

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

Performs the conversion.

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

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

The type returned in the event of a conversion error.

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

Performs the conversion.

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

Immutably borrows from an owned value. Read more

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

Mutably borrows from an owned value. Read more

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

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

The type returned in the event of a conversion error.

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

Performs the conversion.

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

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

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more