@propertyDelegate @dynamicMemberLookup public struct EnvironmentObject<BindableObjectType> : DynamicViewProperty where BindableObjectType : BindableObject { public var delegateValue: ObjectBinding<BindableObjectType>.Wrapper { get } }
(edited)@propertyDelegate public struct ObjectBinding<BindableObjectType> : DynamicViewProperty where BindableObjectType : BindableObject { /// A wrapper of the underlying `BindableObject` that can create `Binding`s to its properties /// using dynamic member lookup. @dynamicMemberLookup public struct Wrapper { /// Creates a `Binding` to a value semantic property of a reference type. /// /// If `Value` is not value semantic, the updating behavior for any views /// that make use of the resulting `Binding` is unspecified. public subscript<Subject>(dynamicMember keyPath: ReferenceWritableKeyPath<BindableObjectType, Subject>) -> Binding<Subject> { get } }