SubredditBloc class Null safety
The Bloc used to register and unsubscribe to subreddits.
- Inheritance
- Object
- BlocBase<
SubredditState> - Bloc<
SubredditEvent, SubredditState> - SubredditBloc
Constructors
- SubredditBloc({required String subreddit, required IRedditClient repository})
- Create a new SubredditBloc.
Properties
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- isClosed → bool
-
Whether the bloc is closed. [...]
read-only, inherited
- repository → IRedditClient
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
- state → SubredditState
-
The current state.
read-only, inherited
-
stream
→ Stream<
SubredditState> -
The current state stream.
read-only, inherited
- subreddit → String
-
final
Methods
-
add(
SubredditEvent event) → void -
Notifies the Bloc of a new
eventwhich triggers all corresponding EventHandler instances. If close has already been called, any subsequent calls to add will be ignored and will not result in any subsequent state changes.inherited -
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
errorwhich triggers onError with an optional StackTrace.@mustCallSuper, inherited -
close(
) → Future< void> -
Closes the
eventandstateStreams. This method should be called when a Bloc is no longer needed. Once close is called,eventsthat are added will not be processed. In addition, if close is called whileeventsare still being processed, the Bloc will finish processing the pendingevents.@mustCallSuper, inherited -
emit(
SubredditState state) → void -
emit should never be used outside of tests. [...]
@visibleForTesting, inherited
-
listen(
void onData(SubredditState)?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription< SubredditState> -
Adds a subscription to the
Stream<State>. Returns a StreamSubscription which handles events from theStream<State>using the providedonData,onErrorandonDonehandlers.@Deprecated('Use stream.listen instead. Will be removed in v8.0.0'), inherited -
mapEventToState(
SubredditEvent event) → Stream< SubredditState> -
@Deprecated - Use on
instead. Will be removed in v8.0.0 [...]@Deprecated('Use on<Event> instead. Will be removed in v8.0.0'), inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
on<
E extends Event> (EventHandler< E, SubredditState> handler, {EventTransformer<E> ? transformer}) → void -
Register event handler for an event of type
E. There should only ever be one event handler per event typeE. [...]inherited -
onChange(
Change< SubredditState> change) → void -
Called whenever a
changeoccurs with the givenchange. Achangeoccurs when a newstateis emitted. onChange is called before thestateof thecubitis updated. onChange is a great spot to add logging/analytics for a specificcubit. [...]@mustCallSuper, inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
erroroccurs and notifies BlocObserver.onError. [...]@mustCallSuper, @protected, inherited -
onEvent(
SubredditEvent event) → void -
Called whenever an
eventis added to the Bloc. A great spot to add logging/analytics at the individual Bloc level. [...]@mustCallSuper, @protected, inherited -
onTransition(
Transition< SubredditEvent, SubredditState> transition) → void -
Called whenever a
transitionoccurs with the giventransition. Atransitionoccurs when a neweventis added and a new state isemittedfrom a corresponding EventHandler. executed. onTransition is called before a Bloc's state has been updated. A great spot to add logging/analytics at the individual Bloc level. [...]@mustCallSuper, @protected, inherited -
toString(
) → String -
A string representation of this object. [...]
inherited
-
transformEvents(
Stream< SubredditEvent> events, TransitionFunction<SubredditEvent, SubredditState> transitionFn) → Stream<Transition< SubredditEvent, SubredditState> > -
@Deprecated - Use
on<Event>with anEventTransformerinstead. Will be removed in v8.0.0 [...]@Deprecated('Use `on<Event>` with an `EventTransformer` instead. ' 'Will be removed in v8.0.0'), inherited -
transformTransitions(
Stream< Transition< transitions) → Stream<SubredditEvent, SubredditState> >Transition< SubredditEvent, SubredditState> > -
@Deprecated - Override
Stream<State> get streaminstead. Will be removed in v8.0.0 [...]@Deprecated('Override `Stream<State> get stream` instead. Will be removed in v8.0.0'), inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator. [...]
inherited