build method
Builds this span into another span, or returns itself if already terminal.
Override this for composable spans that build to other spans.
Default implementation returns this.
Example:
class Timestamp extends LeafSpan {
final DateTime date;
Timestamp(this.date);
@override
LogSpan build() => PlainText('${date.hour}:${date.minute}');
}
Implementation
@override
LogSpan build() {
final hour = date.hour.toString().padLeft(2, '0');
final minute = date.minute.toString().padLeft(2, '0');
final second = date.second.toString().padLeft(2, '0');
final ms = date.millisecond.toString().padLeft(3, '0');
return PlainText('[$hour:$minute:$second.$ms]');
}