Structures
The following structures are available globally.
-
A collection of utility methods for common disposable operations.
See moreDeclaration
Swift
public struct Disposables
-
A type-erased
ObserverType
.Forwards operations to an arbitrary underlying observer with the same
See moreElement
type, hiding the specifics of the underlying observer type.Declaration
Swift
public struct AnyObserver<Element> : ObserverType
-
Observer that enforces interface binding rules:
- can’t bind errors (in debug builds binding of errors causes
fatalError
in release builds errors are being logged) - ensures binding is performed on a specific scheduler
Binder
doesn’t retain target and in case target is released, element isn’t bound.By default it binds elements on main scheduler.
See moreDeclaration
Swift
public struct Binder<Value> : ObserverType
- can’t bind errors (in debug builds binding of errors causes
-
Represents an observable sequence of elements that have a common key.
See moreDeclaration
Swift
public struct GroupedObservable<Key, Element> : ObservableType
-
Converts historical virtual time into real time.
Since historical virtual time is also measured in
See moreDate
, this converter is identity function.Declaration
Swift
public struct HistoricalSchedulerTimeConverter : VirtualTimeConverterType
-
Infallible
is anObservable
-like push-style interface which is guaranteed to not emit error events.Unlike
See moreSharedSequence
, it does not share its resources or replay its events, but acts as a standardObservable
.Declaration
Swift
public struct Infallible<Element> : InfallibleType
-
Resource utilization information
See more -
Observable sequences containing 0 or 1 element.
See moreDeclaration
Swift
public struct PrimitiveSequence<Trait, Element>
extension PrimitiveSequence: PrimitiveSequenceType
extension PrimitiveSequence: ObservableConvertibleType
-
Use
Reactive
proxy as customization point for constrained protocol extensions.General pattern would be:
// 1. Extend Reactive protocol with constrain on Base // Read as: Reactive Extension where Base is a SomeType extension Reactive where Base: SomeType { // 2. Put any specific reactive extension for SomeType here }
With this approach we can have more specialized methods and properties using
Base
and not just specialized on common base type.
See moreBinder
s are also automatically synthesized using@dynamicMemberLookup
for writable reference properties of the reactive base.Declaration
Swift
@dynamicMemberLookup public struct Reactive<Base>