Property
- 
                  
                  A read-only property that can be observed for its changes over time. There are three categories of read-only properties: Constant propertyCreated by Property(value:), the producer and signal of a constant property would complete immediately when it is initialized.Existential propertyCreated by Property(capturing:), it wraps any arbitraryPropertyProtocoltypes, and passes through the behavior. Note that it would retain the wrapped property.Existential property would be deprecated when generalized existential eventually lands in Swift. Composed propertyA composed property presents a composed view of its sources, which can be one or more properties, a producer, or a signal. It can be created using property composition operators, Property(_:)orProperty(initial:then:).It does not own its lifetime, and its producer and signal are bound to the lifetime of its sources. It also does not have an influence on its sources, so retaining a composed property would not prevent its sources from deinitializing. Note that composed properties do not retain any of its sources. See moreDeclarationSwift public final class Property<Value> : PropertyProtocol
- 
                  
                  Represents a property that allows observation of its changes. Only classes can conform to this protocol, because having a signal for changes over time implies the origin must have a unique identity. See moreDeclarationSwift public protocol PropertyProtocol : AnyObject, BindingSource
- 
                  
                  A mutable property of type Valuethat allows observation of its changes.Instances of this class are thread-safe. See moreDeclarationSwift public final class MutableProperty<Value> : ComposableMutablePropertyProtocol
- 
                  
                  Represents an observable property that can be mutated directly. See moreDeclarationSwift public protocol MutablePropertyProtocol : BindingTargetProvider, PropertyProtocol
- 
                  
                  A mutable property that validates mutations before committing them. If the property wraps an arbitrary mutable property, changes originated from the inner property are monitored, and would be automatically validated. Note that these would still appear as committed values even if they fail the validation. 
 See morelet root = MutableProperty("Valid") let outer = ValidatingProperty(root) { $0 == "Valid" ? .valid : .invalid(.outerInvalid) } outer.result.value // `.valid("Valid") root.value = "🎃" outer.result.value // `.invalid("🎃", .outerInvalid)`DeclarationSwift public final class ValidatingProperty<Value, ValidationError> : MutablePropertyProtocol where ValidationError : Error
 View on GitHub
            View on GitHub
           Install in Dash
            Install in Dash
           Property  Reference
      Property  Reference