[][src]Struct kube::api::ObjectList

pub struct ObjectList<T> where
    T: Clone
{ pub metadata: ListMeta, pub items: Vec<T>, }

A generic Kubernetes object list

This is used instead of a full struct for DeploymentList, PodList, etc. Kubernetes' API always seem to expose list structs in this manner.

Note that this is only used internally within reflectors and informers, and is generally produced from list/watch/delete collection queries on an Resource.

This almost equivalent to k8s_openapi::List, but iterable

Fields

metadata: ListMeta

ListMeta - only really used for its resourceVersion

See ListMeta

items: Vec<T>

The items we are actually interested in. In practice; T:= Resource<T,U>.

Implementations

impl<T: Clone> ObjectList<T>[src]

pub fn iter<'a>(&'a self) -> impl Iterator<Item = &T> + 'a[src]

iter returns an Iterator over the elements of this ObjectList

Example

use kube::api::{ListMeta, ObjectList};

let metadata: ListMeta = Default::default();
let items = vec![1, 2, 3];
let objectlist = ObjectList { metadata, items };

let first = objectlist.iter().next();
println!("First element: {:?}", first); // prints "First element: Some(1)"

pub fn iter_mut<'a>(&'a mut self) -> impl Iterator<Item = &mut T> + 'a[src]

iter_mut returns an Iterator of mutable references to the elements of this ObjectList

Example

use kube::api::{ObjectList, ListMeta};

let metadata: ListMeta = Default::default();
let items = vec![1, 2, 3];
let mut objectlist = ObjectList { metadata, items };

let mut first = objectlist.iter_mut().next();

// Reassign the value in first
if let Some(elem) = first {
    *elem = 2;
    println!("First element: {:?}", elem); // prints "First element: 2"
}

Trait Implementations

impl<T: Debug> Debug for ObjectList<T> where
    T: Clone
[src]

impl<'de, T> Deserialize<'de> for ObjectList<T> where
    T: Clone,
    Vec<T>: Deserialize<'de>, 
[src]

impl<T: Clone> IntoIterator for ObjectList<T>[src]

type IntoIter = IntoIter<Self::Item>

Which kind of iterator are we turning this into?

type Item = T

The type of the elements being iterated over.

impl<'a, T: Clone> IntoIterator for &'a ObjectList<T>[src]

type IntoIter = Iter<'a, T>

Which kind of iterator are we turning this into?

type Item = &'a T

The type of the elements being iterated over.

impl<'a, T: Clone> IntoIterator for &'a mut ObjectList<T>[src]

type IntoIter = IterMut<'a, T>

Which kind of iterator are we turning this into?

type Item = &'a mut T

The type of the elements being iterated over.

Auto Trait Implementations

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

impl<T> Send for ObjectList<T> where
    T: Send

impl<T> Sync for ObjectList<T> where
    T: Sync

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

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

Blanket Implementations

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

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

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

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

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

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

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

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.

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.