Returns a new Timeout that merges this
with other
.
Timeout.none takes precedence over everything. If timeout is
Timeout.none and other
declares a duration, that takes precedence.
Otherwise, this timeout's duration or factor
are multiplied by
other
's factor
.
Source
Timeout merge(Timeout other) { if (this == none || other == none) return none; if (other.duration != null) return new Timeout(other.duration); if (duration != null) return new Timeout(duration * other.scaleFactor); return new Timeout.factor(scaleFactor * other.scaleFactor); }