pub trait ForkByErrorPredicate {
    const UNIT_ERROR: DataErrorKind = DataErrorKind::MissingDataKey;

    // Required method
    fn test(
        &self,
        key: DataKey,
        req: Option<DataRequest<'_>>,
        err: DataError,
    ) -> bool;
}
Expand description

The predicate trait used by ForkByErrorProvider.

Provided Associated Constants§

source

const UNIT_ERROR: DataErrorKind = DataErrorKind::MissingDataKey

The error to return if there are zero providers.

Required Methods§

source

fn test( &self, key: DataKey, req: Option<DataRequest<'_>>, err: DataError, ) -> bool

This function is called when a data request fails and there are additional providers that could possibly fulfill the request.

Arguments:

  • &self = Reference to the struct implementing the trait (for data capture)
  • key = The DataKey associated with the request
  • req = The DataRequest. This may be None if there is no request, such as inside IterableDynamicDataProvider.
  • err = The error that occurred.

Return value:

  • true to discard the error and attempt the request with the next provider.
  • false to return the error and not perform any additional requests.

Object Safety§

This trait is not object safe.

Implementors§