Struct flatgeobuf::FeatureIter
source · pub struct FeatureIter<R, S> { /* private fields */ }
Implementations§
source§impl<R: Read> FeatureIter<R, NotSeekable>
impl<R: Read> FeatureIter<R, NotSeekable>
sourcepub fn cur_feature(&self) -> &FgbFeature
pub fn cur_feature(&self) -> &FgbFeature
Return current feature
sourcepub fn process_features<W: FeatureProcessor>(
&mut self,
out: &mut W
) -> Result<()>
pub fn process_features<W: FeatureProcessor>( &mut self, out: &mut W ) -> Result<()>
Read and process all selected features
source§impl<R: Read + Seek> FeatureIter<R, Seekable>
impl<R: Read + Seek> FeatureIter<R, Seekable>
sourcepub fn cur_feature(&self) -> &FgbFeature
pub fn cur_feature(&self) -> &FgbFeature
Return current feature
sourcepub fn process_features<W: FeatureProcessor>(
&mut self,
out: &mut W
) -> Result<()>
pub fn process_features<W: FeatureProcessor>( &mut self, out: &mut W ) -> Result<()>
Read and process all selected features
Trait Implementations§
source§impl<R: Read> FallibleStreamingIterator for FeatureIter<R, NotSeekable>
impl<R: Read> FallibleStreamingIterator for FeatureIter<R, NotSeekable>
FallibleStreamingIterator
differs from the standard library’s Iterator
in two ways:
- each call to
next
can fail. - returned
FgbFeature
is valid untilnext
is called again orFgbReader
is reset or finalized.
While these iterators cannot be used with Rust for
loops, while let
loops offer a similar level of ergonomics:
use flatgeobuf::*;
while let Some(feature) = fgb.next()? {
let props = feature.properties()?;
println!("{}", props["name"]);
}
§type Item = FgbFeature
type Item = FgbFeature
The type being iterated over.
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 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 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.
source§impl<R: Read + Seek> FallibleStreamingIterator for FeatureIter<R, Seekable>
impl<R: Read + Seek> FallibleStreamingIterator for FeatureIter<R, Seekable>
FallibleStreamingIterator
differs from the standard library’s Iterator
in two ways:
- each call to
next
can fail. - returned
FgbFeature
is valid untilnext
is called again orFgbReader
is reset or finalized.
While these iterators cannot be used with Rust for
loops, while let
loops offer a similar level of ergonomics:
use flatgeobuf::*;
while let Some(feature) = fgb.next()? {
let props = feature.properties()?;
println!("{}", props["name"]);
}
§type Item = FgbFeature
type Item = FgbFeature
The type being iterated over.
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 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 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.
source§impl<T: Read> GeozeroDatasource for FeatureIter<T, NotSeekable>
impl<T: Read> GeozeroDatasource for FeatureIter<T, NotSeekable>
source§fn process<P: FeatureProcessor>(&mut self, processor: &mut P) -> Result<()>
fn process<P: FeatureProcessor>(&mut self, processor: &mut P) -> Result<()>
Consume and process all selected features.
source§fn process_geom<P>(&mut self, processor: &mut P) -> Result<(), GeozeroError>where
P: GeomProcessor,
fn process_geom<P>(&mut self, processor: &mut P) -> Result<(), GeozeroError>where
P: GeomProcessor,
Consume and process geometries of all selected features.
source§impl<T: Read + Seek> GeozeroDatasource for FeatureIter<T, Seekable>
impl<T: Read + Seek> GeozeroDatasource for FeatureIter<T, Seekable>
source§fn process<P: FeatureProcessor>(&mut self, processor: &mut P) -> Result<()>
fn process<P: FeatureProcessor>(&mut self, processor: &mut P) -> Result<()>
Consume and process all selected features.
source§fn process_geom<P>(&mut self, processor: &mut P) -> Result<(), GeozeroError>where
P: GeomProcessor,
fn process_geom<P>(&mut self, processor: &mut P) -> Result<(), GeozeroError>where
P: GeomProcessor,
Consume and process geometries of all selected features.
Auto Trait Implementations§
impl<R, S> Freeze for FeatureIter<R, S>where
R: Freeze,
impl<R, S> RefUnwindSafe for FeatureIter<R, S>where
R: RefUnwindSafe,
S: RefUnwindSafe,
impl<R, S> Send for FeatureIter<R, S>
impl<R, S> Sync for FeatureIter<R, S>
impl<R, S> Unpin for FeatureIter<R, S>
impl<R, S> UnwindSafe for FeatureIter<R, S>where
R: UnwindSafe,
S: UnwindSafe,
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