createWhenListener<N extends StateNotifier<S>, S> function

void createWhenListener<N extends StateNotifier<S>, S>(
  1. WhenFilteredProvider<N, S> filter
)

create the listener for provider.when filter

Implementation

void createWhenListener<N extends StateNotifier<S>, S>(
  WhenFilteredProvider<N, S> filter,
) {
  final notifier = filter.notifier;
  filter.listener = (newState) {
    // rebuild the Consumer using the boolean returned by the callback
    final allowRebuild = filter.callback(notifier.oldState, newState);
    if (allowRebuild) {
      filter.reaction?.call(notifier);
    }
  };
}