   ///
   /// The bounds of the result, even if it is empty, are always
   /// limited to the bounds of `limits`.
+  @warn_unused_result
   @inline(__always)
   public func clamped(to limits: Self) -> Self {
     return Self(

  /// `lowerBound < x < upperBound`. `RangeProtocol` makes no requirement as
  /// to whether individual range types must contain either their lower or
  /// upper bound.
  func contains(_ value: Bound) -> Bool
  
  /// Returns `true` iff `self` and `other` contain a value in common.

}

@warn_unused_result
public func ~= <R : RangeProtocol> (
  pattern: R, value: R.Bound
) -> Bool {
  return pattern.contains(value)
