Bloc<Event, State> class
abstract
Takes a Stream
of Events
as input
and transforms them into a Stream
of States
as output.
- Inheritance
- Implemented types
-
- BlocEventSink<
Event>
- BlocEventSink<
- Implementers
Constructors
- Bloc(State initialState)
-
Takes a
Stream
ofEvents
as input and transforms them into aStream
ofStates
as output.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the bloc is closed.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- state → State
-
The current state.
no setterinherited
-
stream
→ Stream<
State> -
The current stream of states.
no setterinherited
Methods
-
add(
Event event) → void -
Notifies the Bloc of a new
event
which triggers all corresponding EventHandler instances.override -
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
error
which triggers onError with an optional StackTrace.inherited -
close(
) → Future< void> -
Closes the
event
andstate
Streams
. This method should be called when a Bloc is no longer needed. Once close is called,events
that are added will not be processed. In addition, if close is called whileevents
are still being processed, the Bloc will finish processing the pendingevents
.override -
emit(
State state) → void -
emit is only for internal use and should never be called directly
outside of tests. The Emitter instance provided to each EventHandler
should be used instead.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
on<
E extends Event> (EventHandler< E, State> 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
. -
onChange(
Change< State> change) → void -
Called whenever a
change
occurs with the givenchange
. Achange
occurs when a newstate
is emitted. onChange is called before thestate
of thecubit
is updated. onChange is a great spot to add logging/analytics for a specificcubit
.inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
error
occurs and notifies BlocObserver.onError.inherited -
onEvent(
Event event) → void -
Called whenever an
event
is added to the Bloc. A great spot to add logging/analytics at the individual Bloc level. -
onTransition(
Transition< Event, State> transition) → void -
Called whenever a
transition
occurs with the giventransition
. Atransition
occurs when a newevent
is added and a new state isemitted
from a corresponding EventHandler. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- observer ↔ BlocObserver
-
The current BlocObserver instance.
getter/setter pair
- transformer ↔ EventTransformer
-
The default EventTransformer used for all event handlers.
By default all events are processed concurrently.
getter/setter pair