Struct mongodb::sync::SessionCursor [−][src]
pub struct SessionCursor<T> where
T: DeserializeOwned + Unpin, { /* fields omitted */ }
This is supported on crate feature
sync
only.Expand description
A SessionCursor
is a cursor that was created with a ClientSession
must be iterated using
one. To iterate, retrieve a [SessionCursorIter]
using SessionCursor::iter
:
for doc in cursor.iter(&mut session) {
println!("{}", doc?)
}
Implementations
pub fn iter<'session>(
&mut self,
session: &'session mut ClientSession
) -> SessionCursorIter<'_, 'session, T>ⓘNotable traits for SessionCursorIter<'_, '_, T>impl<T> Iterator for SessionCursorIter<'_, '_, T> where
T: DeserializeOwned + Unpin + Send + Sync, type Item = Result<T>;
pub fn iter<'session>(
&mut self,
session: &'session mut ClientSession
) -> SessionCursorIter<'_, 'session, T>ⓘNotable traits for SessionCursorIter<'_, '_, T>impl<T> Iterator for SessionCursorIter<'_, '_, T> where
T: DeserializeOwned + Unpin + Send + Sync, type Item = Result<T>;
Notable traits for SessionCursorIter<'_, '_, T>
impl<T> Iterator for SessionCursorIter<'_, '_, T> where
T: DeserializeOwned + Unpin + Send + Sync, type Item = Result<T>;
Retrieves a SessionCursorIter
to iterate this cursor. The session provided must be
the same session used to create the cursor.
Retrieve the next result from the cursor. The session provided must be the same session used to create the cursor.
Use this method when the session needs to be used again between iterations or when the added
functionality of Iterator
is not needed.
let mut cursor = coll.find_with_session(doc! { "x": 1 }, None, &mut session)?;
while let Some(doc) = cursor.next(&mut session).transpose()? {
other_coll.insert_one_with_session(doc, None, &mut session)?;
}