Skip to main content

RegisterEntries

Struct RegisterEntries 

Source
pub struct RegisterEntries<'a, 'ctx> { /* private fields */ }
Expand description

FallibleLender returned by Ledger::register_entries.

Holds the running cumulative Amount and a borrow into the underlying transactions; each call to FallibleLender::next advances to the next matching posting, updates the running total, and lends a borrow. Errors from currency conversion are surfaced as QueryError.

Trait Implementations§

Source§

impl<'a, 'ctx> FallibleLender for RegisterEntries<'a, 'ctx>

Source§

type Error = QueryError

The error type.
Source§

fn __check_covariance<'long: 'short, 'short>( proof: CovariantProof<<Self as FallibleLending<'long>>::Lend>, ) -> CovariantProof<<Self as FallibleLending<'short>>::Lend>

Internal method for checking the covariance of the Lend associated type of this fallible lender. Read more
Source§

fn next(&mut self) -> Result<Option<FallibleLend<'_, Self>>, Self::Error>

Yields the next lend, if any, of the lender, or Ok(None) when iteration is finished. Read more
Source§

fn next_chunk(&mut self, chunk_size: usize) -> Chunk<'_, Self>
where Self: Sized,

Takes the next chunk_size lends of the lender with temporary lender Chunk. The returned Chunk borrows this fallible lender mutably and advances it as the chunk is consumed; any elements left unconsumed when the Chunk is dropped remain and are produced by later calls. Read more
Source§

fn size_hint(&self) -> (usize, Option<usize>)

Gets the estimated minimum and maximum length of the lender. Both bounds assume that all remaining calls to next() succeed. That is, next() could return an Err in fewer calls than specified by the lower bound. Read more
Source§

fn count(self) -> Result<usize, Self::Error>
where Self: Sized,

Counts the number of lends in the lender by consuming it until the lender yields Ok(None) or Err(_). Read more
Source§

fn last<'call>(&'call mut self) -> Result<Option<Self::Lend>, Self::Error>
where Self: Sized,

Gets the last lend of the lender, if any, by consuming it. Read more
Source§

fn advance_by( &mut self, n: usize, ) -> Result<Result<(), NonZero<usize>>, Self::Error>

Advances the lender by n lends. Read more
Source§

fn nth(&mut self, n: usize) -> Result<Option<Self::Lend>, Self::Error>

Yields the nth lend of the lender, if any, by consuming it. If the lender does not have enough lends, returns Ok(None). Read more
Source§

fn step_by(self, step: usize) -> StepBy<Self>
where Self: Sized,

Skips step - 1 lends between each lend of the lender. Read more
Source§

fn chain<U>( self, other: U, ) -> Chain<Self, <U as IntoFallibleLender>::FallibleLender>
where Self: Sized, U: IntoFallibleLender<Error = Self::Error> + for<'all> FallibleLending<'all, Lend = Self::Lend>,

Chains the lender with another lender of the same type. Read more
Source§

fn zip<U>( self, other: U, ) -> Zip<Self, <U as IntoFallibleLender>::FallibleLender>
where U: IntoFallibleLender, Self: Sized,

Zips the lender with another lender of the same or different type. Read more
Source§

fn intersperse_with<'call, G>( self, separator: G, ) -> IntersperseWith<'call, Self, G>
where Self: Sized, G: FnMut() -> Result<Self::Lend, Self::Error>,

Intersperses each lend of this lender with the separator produced by the given function. Read more
Source§

fn map<F>(self, f: Covar<F>) -> Map<Self, F>
where Self: Sized, F: for<'all> FnMutHKARes<'all, Self::Lend, Self::Error>,

Maps each lend of this lender using the given function. Read more
Source§

fn map_err<E, F>(self, f: F) -> MapErr<E, Self, F>
where Self: Sized, F: FnMut(Self::Error) -> E,

Maps the error of this lender using the given function. Read more
Source§

fn map_into_iter<O, F>(self, f: F) -> MapIntoIter<Self, O, F> ⓘ
where Self: Sized, F: FnMut(Self::Lend) -> Result<O, Self::Error>,

Maps each lend of this lender into an owned value using the given function. Read more
Source§

fn for_each<F>(self, f: F) -> Result<(), Self::Error>
where Self: Sized, F: FnMut(Self::Lend) -> Result<(), Self::Error>,

Calls the given function with each lend of this lender. Read more
Source§

fn filter<P>(self, predicate: P) -> Filter<Self, P>
where Self: Sized, P: FnMut(&Self::Lend) -> Result<bool, Self::Error>,

Filters this lender using the given predicate. Read more
Source§

fn filter_map<F>(self, f: Covar<F>) -> FilterMap<Self, F>
where Self: Sized, F: for<'all> FnMutHKAResOpt<'all, Self::Lend, Self::Error>,

Filters and maps this lender using the given function. Read more
Source§

fn enumerate(self) -> Enumerate<Self>
where Self: Sized,

Enumerates this lender. Each lend is paired with its zero-based index. Read more
Source§

fn peekable<'call>(self) -> Peekable<'call, Self>
where Self: Sized,

Makes this lender peekable, so that it is possible to peek at the next lend without consuming it. Read more
Source§

fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>
where Self: Sized, P: FnMut(&Self::Lend) -> Result<bool, Self::Error>,

Skips the first contiguous sequence of lends of this lender that satisfy the given predicate. Read more
Source§

fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>
where Self: Sized, P: FnMut(&Self::Lend) -> Result<bool, Self::Error>,

Takes the first contiguous sequence of lends of this lender that satisfy the given predicate. Read more
Source§

fn map_while<P>(self, predicate: Covar<P>) -> MapWhile<Self, P>
where Self: Sized, P: for<'all> FnMutHKAResOpt<'all, Self::Lend, Self::Error>,

Maps this lender using the given function while it returns Some. Read more
Source§

fn skip(self, n: usize) -> Skip<Self>
where Self: Sized,

Skips the first n lends of this lender. Read more
Source§

fn take(self, n: usize) -> Take<Self>
where Self: Sized,

Takes the first n lends of this lender. Read more
Source§

fn scan<St, F>(self, initial_state: St, f: Covar<F>) -> Scan<Self, St, F>
where Self: Sized, F: for<'all> FnMutHKAResOpt<'all, (&'all mut St, Self::Lend), Self::Error>,

Source§

fn flat_map<'call, F>(self, f: Covar<F>) -> FlatMap<'call, Self, F>
where Self: Sized, F: for<'all> FnMutHKARes<'all, Self::Lend, Self::Error>, <F as FnMutHKARes<'all, Self::Lend, Self::Error>>::B: for<'all> IntoFallibleLender<Error = Self::Error>,

Source§

fn fuse(self) -> Fuse<Self>
where Self: Sized,

Source§

fn inspect<F>(self, f: F) -> Inspect<Self, F>
where Self: Sized, F: FnMut(&Self::Lend) -> Result<(), Self::Error>,

Source§

fn mutate<F>(self, f: F) -> Mutate<Self, F>
where Self: Sized, F: FnMut(&mut Self::Lend) -> Result<(), Self::Error>,

Mutates each lend with the given function. Read more
Source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Source§

fn collect<B>(self) -> Result<B, (B, Self::Error)>
where Self: Sized, B: for<'all> FromLender<NonFallibleAdapter<'all, Self>>,

Transforms the fallible lender into a collection. If any invocation of next returns Err, returns the collection built from values yielded successfully, together with the error. Read more
Source§

fn collect_into<E>( self, collection: &mut E, ) -> Result<&mut E, (&mut E, Self::Error)>
where Self: Sized, E: for<'all> ExtendLender<NonFallibleAdapter<'all, Self>>,

Extends an existing collection with lends from this fallible lender. Read more
Source§

fn partition<'this, E, F>(self, f: F) -> Result<(E, E), ((E, E), Self::Error)>
where Self: Sized + 'this, E: Default + ExtendLender<NonFallibleAdapter<'this, Self>>, F: FnMut(&Self::Lend) -> Result<bool, Self::Error>,

Source§

fn is_partitioned<P>(self, predicate: P) -> Result<bool, Self::Error>
where Self: Sized, P: FnMut(Self::Lend) -> Result<bool, Self::Error>,

Source§

fn try_fold<B, F, R>(&mut self, init: B, f: F) -> Result<R, Self::Error>
where F: FnMut(B, Self::Lend) -> Result<R, Self::Error>, R: Try<Output = B>,

Source§

fn try_for_each<F, R>(&mut self, f: F) -> Result<R, Self::Error>
where F: FnMut(Self::Lend) -> Result<R, Self::Error>, R: Try<Output = ()>,

Source§

fn fold<B, F>(self, init: B, f: F) -> Result<B, Self::Error>
where Self: Sized, F: FnMut(B, Self::Lend) -> Result<B, Self::Error>,

Source§

fn all<F>(&mut self, f: F) -> Result<bool, Self::Error>
where F: FnMut(Self::Lend) -> Result<bool, Self::Error>,

Source§

fn any<F>(&mut self, f: F) -> Result<bool, Self::Error>
where F: FnMut(Self::Lend) -> Result<bool, Self::Error>,

Source§

fn find<P>(&mut self, predicate: P) -> Result<Option<Self::Lend>, Self::Error>
where P: FnMut(&Self::Lend) -> Result<bool, Self::Error>,

Source§

fn find_map<'a, F>( &'a mut self, f: Covar<F>, ) -> Result<Option<<F as FnMutHKAResOpt<'a, Self::Lend, Self::Error>>::B>, Self::Error>
where Self: Sized, F: for<'all> FnMutHKAResOpt<'all, Self::Lend, Self::Error>,

Source§

fn try_find<F, R>( &mut self, f: F, ) -> Result<<<R as Try>::Residual as Residual<Option<Self::Lend>>>::TryType, Self::Error>
where Self: Sized, F: FnMut(&Self::Lend) -> Result<R, Self::Error>, R: Try<Output = bool>, <R as Try>::Residual: for<'all> Residual<Option<Self::Lend>>,

Source§

fn position<P>(&mut self, predicate: P) -> Result<Option<usize>, Self::Error>
where Self: Sized, P: FnMut(Self::Lend) -> Result<bool, Self::Error>,

Source§

fn copied<T>(self) -> Copied<Self> ⓘ
where Self: Sized + for<'all> FallibleLending<'all, Lend = &'all T>, T: Copy,

Source§

fn cloned<T>(self) -> Cloned<Self> ⓘ
where Self: Sized + for<'all> FallibleLending<'all, Lend = &'all T>, T: Clone,

Source§

fn sum<S>(self) -> Result<S, Self::Error>
where Self: Sized, S: SumFallibleLender<Self>,

Source§

fn product<P>(self) -> Result<P, Self::Error>
where Self: Sized, P: ProductFallibleLender<Self>,

Source§

fn cmp_by<L, F>(self, other: L, cmp: F) -> Result<Ordering, Self::Error>
where Self: Sized, L: IntoFallibleLender<Error = Self::Error>, F: for<'all> FnMut(Self::Lend, <<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend) -> Result<Ordering, Self::Error>,

Source§

fn partial_cmp<L>(self, other: L) -> Result<Option<Ordering>, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialOrd<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn partial_cmp_by<L, F>( self, other: L, partial_cmp: F, ) -> Result<Option<Ordering>, Self::Error>
where Self: Sized, L: IntoFallibleLender<Error = Self::Error>, F: for<'all> FnMut(Self::Lend, <<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend) -> Result<Option<Ordering>, Self::Error>,

Source§

fn eq<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialEq<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn eq_by<L, F>(self, other: L, eq: F) -> Result<bool, Self::Error>
where Self: Sized, L: IntoFallibleLender<Error = Self::Error>, F: for<'all> FnMut(Self::Lend, <<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend) -> Result<bool, Self::Error>,

Source§

fn ne<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialEq<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn lt<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialOrd<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn le<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialOrd<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn gt<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialOrd<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn ge<L>(self, other: L) -> Result<bool, Self::Error>
where L: IntoFallibleLender<Error = Self::Error>, Self::Lend: for<'all> PartialOrd<<<L as IntoFallibleLender>::FallibleLender as FallibleLending<'all>>::Lend>, Self: Sized,

Source§

fn is_sorted_by_key<F, K>(self, f: F) -> Result<bool, Self::Error>
where Self: Sized, F: FnMut(Self::Lend) -> Result<K, Self::Error>, K: PartialOrd,

Source§

fn iter<'this>(self) -> Iter<'this, Self> ⓘ
where Self: Sized + 'this, Self::Lend: 'this,

Turns this FallibleLender into a FallibleIterator where it has already fulfilled the requirements of the FallibleIterator trait. Read more
Source§

fn lender_by_ref<'this>(self) -> FromIterRef<Iter<'this, Self>>
where Self: Sized + 'this, Self::Lend: 'this,

Turns this FallibleLender into a new FallibleLender that lends references to the items of the original lender. Read more
Source§

impl<'a, 'ctx, 'lend> FallibleLending<'lend> for RegisterEntries<'a, 'ctx>

Source§

type Lend = RegisterEntry<'lend, 'ctx>

The type being lent.

Auto Trait Implementations§

§

impl<'a, 'ctx> !RefUnwindSafe for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> !Send for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> !Sync for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> !UnwindSafe for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> Freeze for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> Unpin for RegisterEntries<'a, 'ctx>

§

impl<'a, 'ctx> UnsafeUnpin for RegisterEntries<'a, 'ctx>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<L> IntoFallibleLender for L
where L: FallibleLender,

Source§

type Error = <L as FallibleLender>::Error

The error type of the resulting fallible lender.
Source§

type FallibleLender = L

The fallible lender type that this type converts into.
Source§

fn into_fallible_lender(self) -> L

Converts this type into a FallibleLender.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.