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() {
final List<String> properties = <String>[
'$axisDirection',
'$growthDirection',
'$userScrollDirection',
'scrollOffset: ${scrollOffset.toStringAsFixed(1)}',
'precedingScrollExtent: ${precedingScrollExtent.toStringAsFixed(1)}',
'remainingPaintExtent: ${remainingPaintExtent.toStringAsFixed(1)}',
if (overlap != 0.0) 'overlap: ${overlap.toStringAsFixed(1)}',
'crossAxisExtent: ${crossAxisExtent.toStringAsFixed(1)}',
'crossAxisDirection: $crossAxisDirection',
'viewportMainAxisExtent: ${viewportMainAxisExtent.toStringAsFixed(1)}',
'remainingCacheExtent: ${remainingCacheExtent.toStringAsFixed(1)}',
'cacheOrigin: ${cacheOrigin.toStringAsFixed(1)}',
];
return 'SliverConstraints(${properties.join(', ')})';
}