NDObserver<T> constructor

NDObserver<T>({
  1. Key? key,
  2. NDSubject? subject,
  3. NDKeys? keys,
  4. T? dataContext,
  5. Widget builder0()?,
  6. Widget builder1(
    1. BuildContext buildContext
    )?,
  7. Widget builder2(
    1. BuildContext buildContext,
    2. NDKeys? keys
    )?,
  8. Widget builder3(
    1. BuildContext buildContext,
    2. NDKeys? keys,
    3. T? dataContext
    )?,
  9. Widget builder4(
    1. BuildContext buildContext,
    2. NDSubject? subject,
    3. NDKeys? keys,
    4. T? dataContext,
    )?,
})

Implementation

NDObserver({
  Key? key,
  this.subject,
  this.keys,
  this.dataContext,
  Widget Function()? builder0,
  Widget Function(BuildContext buildContext)? builder1,
  Widget Function(
    BuildContext buildContext,
    NDKeys? keys,
  )?
      builder2,
  Widget Function(
    BuildContext buildContext,
    NDKeys? keys,
    T? dataContext,
  )?
      builder3,
  Widget Function(
    BuildContext buildContext,
    NDSubject? subject,
    NDKeys? keys,
    T? dataContext,
  )?
      builder4,
}) : super(key: key) {
  if (builder0 != null) {
    _builder = (buildContext, subject, keys, dataContext) => builder0();
    return;
  }
  if (builder1 != null) {
    _builder =
        (buildContext, subject, keys, dataContext) => builder1(buildContext);
    return;
  }
  if (builder2 != null) {
    _builder = (buildContext, subject, keys, dataContext) =>
        builder2(buildContext, keys);
    return;
  }
  if (builder3 != null) {
    _builder = (buildContext, subject, keys, dataContext) =>
        builder3(buildContext, keys, dataContext);
    return;
  }
  if (builder4 != null) {
    _builder = builder4;
    return;
  }
  _builder = (buildContext, subject, keys, dataContext) => const SizedBox();
}