TextTreeConfiguration constructor Null safety

TextTreeConfiguration(
  1. {required String prefixLineOne,
  2. required String prefixOtherLines,
  3. required String prefixLastChildLineOne,
  4. required String prefixOtherLinesRootNode,
  5. required String linkCharacter,
  6. required String propertyPrefixIfChildren,
  7. required String propertyPrefixNoChildren,
  8. String lineBreak,
  9. bool lineBreakProperties,
  10. String afterName,
  11. String afterDescriptionIfBody,
  12. String afterDescription,
  13. String beforeProperties,
  14. String afterProperties,
  15. String mandatoryAfterProperties,
  16. String propertySeparator,
  17. String bodyIndent,
  18. String footer,
  19. bool showChildren,
  20. bool addBlankLineIfNoChildren,
  21. bool isNameOnOwnLine,
  22. bool isBlankLineBetweenPropertiesAndChildren,
  23. String beforeName,
  24. String suffixLineOne,
  25. String mandatoryFooter}
)

Create a configuration object describing how to render a tree as text.

All of the arguments must not be null.

Implementation

TextTreeConfiguration({
  required this.prefixLineOne,
  required this.prefixOtherLines,
  required this.prefixLastChildLineOne,
  required this.prefixOtherLinesRootNode,
  required this.linkCharacter,
  required this.propertyPrefixIfChildren,
  required this.propertyPrefixNoChildren,
  this.lineBreak = '\n',
  this.lineBreakProperties = true,
  this.afterName = ':',
  this.afterDescriptionIfBody = '',
  this.afterDescription = '',
  this.beforeProperties = '',
  this.afterProperties = '',
  this.mandatoryAfterProperties = '',
  this.propertySeparator = '',
  this.bodyIndent = '',
  this.footer = '',
  this.showChildren = true,
  this.addBlankLineIfNoChildren = true,
  this.isNameOnOwnLine = false,
  this.isBlankLineBetweenPropertiesAndChildren = true,
  this.beforeName = '',
  this.suffixLineOne = '',
  this.mandatoryFooter = '',
}) : assert(prefixLineOne != null),
     assert(prefixOtherLines != null),
     assert(prefixLastChildLineOne != null),
     assert(prefixOtherLinesRootNode != null),
     assert(linkCharacter != null),
     assert(propertyPrefixIfChildren != null),
     assert(propertyPrefixNoChildren != null),
     assert(lineBreak != null),
     assert(lineBreakProperties != null),
     assert(afterName != null),
     assert(afterDescriptionIfBody != null),
     assert(afterDescription != null),
     assert(beforeProperties != null),
     assert(afterProperties != null),
     assert(propertySeparator != null),
     assert(bodyIndent != null),
     assert(footer != null),
     assert(showChildren != null),
     assert(addBlankLineIfNoChildren != null),
     assert(isNameOnOwnLine != null),
     assert(isBlankLineBetweenPropertiesAndChildren != null),
     childLinkSpace = ' ' * linkCharacter.length;