A Combine publisher that publishes an optional value to each subscriber exactly once, if the optional has a value.


struct Publisher


In contrast with Just, an Optional.Publisher may send zero values and instead finish normally, if output is nil.


Type Aliases

typealias Optional.Publisher.Failure

The kind of error this publisher might publish.

typealias Optional.Publisher.Output

The kind of value published by this publisher.



Creates a publisher to emit the optional value of a successful result, or fail with an error.

Instance Properties

let output: Wrapped?

The optional value to deliver to each subscriber.

Instance Methods

func receive<S>(subscriber: S)

Implements the publisher protocol by accepting the subscriber if the output optional has a value, or terminating immediately with an empty subscription otherwise.


Conforms To

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software