tera
1
Looks like bug to me:
struct Foo {
static var bar: Int = 0
}
let binding1: Binding<Int> = .init { Foo.bar } set: { Foo.bar = $0 } // ok
let binding2: Binding<Int> = $Foo.bar // Error: Cannot find '$Foo' in scope
oops, it doesn't work even here:
var x = 0
let y: Binding<Int> = .init { x } set: { x = $0 } // ok
let z: Binding<Int> = $x // Error: Cannot find '$x' in scope
not a bug, feature?
Lantua
2
You may want to ask over #swift-users instead; that may help garner the more appropriate group of audience. In any case, the syntax $varName currently applies to property wrappers only (SE-0258 and SE-0293)
1 Like
What do you expect $Foo to refer to? The $ prefix is added to a property wrapper in order to access its projected value. Read the documentation.