IterableProperty<T> constructor Null safety

IterableProperty<T>(
  1. String name,
  2. Iterable<T>? value,
  3. {Object? defaultValue = kNoDefaultValue,
  4. String? ifNull,
  5. String? ifEmpty = '[]',
  6. DiagnosticsTreeStyle style = DiagnosticsTreeStyle.singleLine,
  7. bool showName = true,
  8. bool showSeparator = true,
  9. DiagnosticLevel level = DiagnosticLevel.info}
)

Create a diagnostics property for iterables (e.g. lists).

The ifEmpty argument is used to indicate how an iterable value with 0 elements is displayed. If ifEmpty equals null that indicates that an empty iterable value is not interesting to display similar to how defaultValue is used to indicate that a specific concrete value is not interesting to display.

The style, showName, showSeparator, and level arguments must not be null.

Implementation

IterableProperty(
  String super.name,
  super.value, {
  super.defaultValue,
  super.ifNull,
  super.ifEmpty = '[]',
  super.style,
  super.showName,
  super.showSeparator,
  super.level,
}) : assert(style != null),
     assert(showName != null),
     assert(showSeparator != null),
     assert(level != null);