<div dir="ltr">I’d be on board with an extension of Comparable so you could write “16.clamped(to: 0...10)”. Something along the lines of:<div><div><br></div><div><div><div><font face="monospace, monospace">extension Comparable {</font></div><div><font face="monospace, monospace">    func clamped(to range: ClosedRange&lt;Self&gt;) -&gt; Self {</font></div><div><font face="monospace, monospace">        return max(range.lowerBound, min(self, range.upperBound))</font></div><div><font face="monospace, monospace">    }</font></div><div><font face="monospace, monospace">}</font></div></div><div><br></div><div>Nevin</div></div></div></div>