// // Clamping.swift // VDS // // Created by Bandaru, Krishna Kishore on 05/03/24. // import Foundation @propertyWrapper public struct Clamping { private var value: Value private let range: ClosedRange public init(range: ClosedRange) { self.value = range.lowerBound self.range = range } public var wrappedValue: Value { get { value } set { value = min(max(range.lowerBound, newValue), range.upperBound) } } }