The SwiftUI tutorial uses the @State keyword to indicate mutable UI state:
@State var showFavoritesOnly = false
It offers this summ
If you click into @State you can see that it has several getters. One with Value another with Binding.
SwiftUI seems to rely heavily on reactive programming (and their new Combine framework, and since we cannot see the full implementation of these wrappers, I would expect that the values that are stored through @State property wrappers are being managed by a CurrentValueSubject from Combine. Like the name implies, this essentially stores the current value, which can then be used as a bindable property by using the $ syntax.