pub struct VariableNameIterator<'a, R: RuntimeServices> { /* private fields */ }Expand description
Provides a FallibleStreamingIterator over UEFI variable names
Produces an EFI status on error.
§Examples
§Iterating through all UEFI variable names
ⓘ
pub static RUNTIME_SERVICES: StandardRuntimeServices =
StandardRuntimeServices::new(&(*runtime_services_ptr));
let mut iter = VariableNameIterator::new_from_first(runtime_services);
while let Some(variable_identifier) = iter.next()? {
some_function(variable_identifier.name, variable_identifier.namespace);
}§Iterating through UEFI variable names, starting with a known one
ⓘ
let mut iter = VariableNameIterator::new_from_variable(
&SOME_VARIABLE_NAME,
&SOME_VARIABLE_NAMESPACE,
runtime_services
);
while let Some(variable_identifier) = iter.next()? {
some_function(variable_identifier.name, variable_identifier.namespace);
}Implementations§
Source§impl<'a, R: RuntimeServices> VariableNameIterator<'a, R>
impl<'a, R: RuntimeServices> VariableNameIterator<'a, R>
Sourcepub fn new_from_first(runtime_services: &'a R) -> Self
pub fn new_from_first(runtime_services: &'a R) -> Self
Produce a new iterator from the beginning of the UEFI variable list
Sourcepub fn new_from_variable(
name: &[u16],
namespace: &Guid,
runtime_services: &'a R,
) -> Self
pub fn new_from_variable( name: &[u16], namespace: &Guid, runtime_services: &'a R, ) -> Self
Produce a new iterator, starting from a given variable
Trait Implementations§
Source§impl<'a, R: Debug + RuntimeServices> Debug for VariableNameIterator<'a, R>
impl<'a, R: Debug + RuntimeServices> Debug for VariableNameIterator<'a, R>
Source§impl<'a, R: RuntimeServices> FallibleStreamingIterator for VariableNameIterator<'a, R>
impl<'a, R: RuntimeServices> FallibleStreamingIterator for VariableNameIterator<'a, R>
Source§type Item = VariableIdentifier
type Item = VariableIdentifier
The type being iterated over.
Source§fn advance(&mut self) -> Result<(), Self::Error>
fn advance(&mut self) -> Result<(), Self::Error>
Advances the iterator to the next position. Read more
Source§fn next(&mut self) -> Result<Option<&Self::Item>, Self::Error>
fn next(&mut self) -> Result<Option<&Self::Item>, Self::Error>
Advances the iterator, returning the next element. Read more
Source§fn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
Returns bounds on the number of remaining elements in the iterator.
Source§fn all<F>(&mut self, f: F) -> Result<bool, Self::Error>
fn all<F>(&mut self, f: F) -> Result<bool, Self::Error>
Determines if all elements of the iterator satisfy a predicate.
Source§fn any<F>(&mut self, f: F) -> Result<bool, Self::Error>
fn any<F>(&mut self, f: F) -> Result<bool, Self::Error>
Determines if any elements of the iterator satisfy a predicate.
Source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Borrows an iterator, rather than consuming it. Read more
Source§fn count(self) -> Result<usize, Self::Error>where
Self: Sized,
fn count(self) -> Result<usize, Self::Error>where
Self: Sized,
Returns the number of remaining elements in the iterator.
Source§fn filter<F>(self, f: F) -> Filter<Self, F>
fn filter<F>(self, f: F) -> Filter<Self, F>
Returns an iterator which filters elements by a predicate.
Source§fn find<F>(&mut self, f: F) -> Result<Option<&Self::Item>, Self::Error>
fn find<F>(&mut self, f: F) -> Result<Option<&Self::Item>, Self::Error>
Returns the first element of the iterator which satisfies a predicate.
Source§fn for_each<F>(self, f: F) -> Result<(), Self::Error>
fn for_each<F>(self, f: F) -> Result<(), Self::Error>
Calls a closure on each element of an iterator.
Source§fn fuse(self) -> Fuse<Self>where
Self: Sized,
fn fuse(self) -> Fuse<Self>where
Self: Sized,
Returns an iterator which is well-behaved at the beginning and end of iteration.
Source§fn map<F, B>(self, f: F) -> Map<Self, F, B>
fn map<F, B>(self, f: F) -> Map<Self, F, B>
Returns an iterator which applies a transform to elements.
Source§fn map_ref<F, B>(self, f: F) -> MapRef<Self, F>
fn map_ref<F, B>(self, f: F) -> MapRef<Self, F>
Returns an iterator which applies a transform to elements. Read more
Source§fn map_err<F, B>(self, f: F) -> MapErr<Self, F>
fn map_err<F, B>(self, f: F) -> MapErr<Self, F>
Returns an iterator that applies a transform to errors.
Source§fn nth(&mut self, n: usize) -> Result<Option<&Self::Item>, Self::Error>
fn nth(&mut self, n: usize) -> Result<Option<&Self::Item>, Self::Error>
Returns the
nth element of the iterator.Source§fn position<F>(&mut self, f: F) -> Result<Option<usize>, Self::Error>
fn position<F>(&mut self, f: F) -> Result<Option<usize>, Self::Error>
Returns the position of the first element matching a predicate.
Source§fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
Returns an iterator which skips the first
n elements.Source§fn skip_while<F>(self, f: F) -> SkipWhile<Self, F>
fn skip_while<F>(self, f: F) -> SkipWhile<Self, F>
Returns an iterator which skips the first sequence of elements matching a predicate.
Auto Trait Implementations§
impl<'a, R> Freeze for VariableNameIterator<'a, R>
impl<'a, R> RefUnwindSafe for VariableNameIterator<'a, R>where
R: RefUnwindSafe,
impl<'a, R> Send for VariableNameIterator<'a, R>where
R: Sync,
impl<'a, R> Sync for VariableNameIterator<'a, R>where
R: Sync,
impl<'a, R> Unpin for VariableNameIterator<'a, R>
impl<'a, R> UnwindSafe for VariableNameIterator<'a, R>where
R: RefUnwindSafe,
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