toString method
override
    A string representation of this object.
Some classes have a default textual representation,
often paired with a static parse function (like int.parse).
These classes will provide the textual representation as
their string representation.
Other classes have no meaningful textual representation
that a program will care about.
Such classes will typically override toString to provide
useful information when inspecting the object,
mainly for debugging or logging.
Implementation
@override
String toString() {
  if (isUniform) {
    return '${objectRuntimeType(this, 'Border')}.all($top)';
  }
  final List<String> arguments = <String>[
    if (top != BorderSide.none) 'top: $top',
    if (right != BorderSide.none) 'right: $right',
    if (bottom != BorderSide.none) 'bottom: $bottom',
    if (left != BorderSide.none) 'left: $left',
  ];
  return '${objectRuntimeType(this, 'Border')}(${arguments.join(", ")})';
}