when method

void when(
  1. bool condition(),
  2. VoidCallback callback, {
  3. List<Symbol>? fields,
})

Implementation

void when(
  bool Function() condition,
  VoidCallback callback, {
  List<Symbol>? fields,
}) {
  final r = _Reaction(
    fields: fields,
    once: true,
    callback: (_) {
      if (condition()) callback();
    },
  );
  _reactions.add(r);
  r.callback(this); // check immediately
}