when method

MessageHandlerWhenBuilder<M> when(
  1. FutureOr<bool> condition(
    1. MessageContext msgCtx,
    2. M msg
    ),
  2. void buildTrueHandler(
    1. MessageHandlerBuilder<M>
    ), {
  3. String? label,
})

Implementation

MessageHandlerWhenBuilder<M> when(
  FutureOr<bool> Function(MessageContext msgCtx, M msg) condition,
  void Function(MessageHandlerBuilder<M>) buildTrueHandler, {
  String? label,
}) {
  var trueBuilder = MessageHandlerBuilder<M>._(_forState, _messageName);
  buildTrueHandler(trueBuilder);
  var conditions = [_MessageCondition(condition, trueBuilder._handler!, label)];
  _handler = _WhenDescriptor.createForMessage<M>(conditions);
  return MessageHandlerWhenBuilder<M>(_forState, conditions, _messageName);
}