Comparable.swift 452 B

12345678910111213141516171819202122
  1. //
  2. // Comparable.swift
  3. // RileyLink
  4. //
  5. // Created by Pete Schwamb on 2/17/19.
  6. // Copyright © 2019 Pete Schwamb. All rights reserved.
  7. //
  8. import Foundation
  9. extension Comparable {
  10. func clamped(to range: ClosedRange<Self>) -> Self {
  11. if self < range.lowerBound {
  12. return range.lowerBound
  13. } else if self > range.upperBound {
  14. return range.upperBound
  15. } else {
  16. return self
  17. }
  18. }
  19. }