What does accessing the property wrapper's projected value `$score` give you here?
@propertyWrapper
struct Clamped {
private var value: Int
let range: ClosedRange<Int>
init(wrappedValue: Int, _ range: ClosedRange<Int>) {
self.range = range
self.value = min(max(wrappedValue, range.lowerBound), range.upperBound)
}
var wrappedValue: Int {
get { value }
set { value = min(max(newValue, range.lowerBound), range.upperBound) }
}
var projectedValue: ClosedRange<Int> { range }
}
struct Game { @Clamped(0...100) var score = 150 }
let g = Game()
print(g.score, g.$score)