buildSubscriptions<TViewModel extends AutoDisposeNotifier<TState> , TState extends EventEmitterState> static method
void
buildSubscriptions<TViewModel extends AutoDisposeNotifier<TState> , TState extends EventEmitterState>(
- WidgetRef ref,
- AutoDisposeNotifierProvider<
TViewModel, TState> state, - dynamic buildEntries()
Implementation
static void buildSubscriptions<TViewModel extends AutoDisposeNotifier<TState>,
TState extends EventEmitterState>(
WidgetRef ref,
AutoDisposeNotifierProvider<TViewModel, TState> state,
Function(ViewModelEventEntryListBuilder) buildEntries) {
ref.listen(state, (previous, next) {
final event = next.event;
if (event == null) return;
var builder = ViewModelEventEntryListBuilder();
buildEntries(builder);
final eventEntries = builder.build();
for (var handlerEntry in eventEntries) {
if (handlerEntry.shouldHandle(event)) {
handlerEntry.handler(event);
}
}
});
}