Structure

Subscribers.Demand

A requested number of items, sent to a publisher from a subscriber through the subscription.

Declaration

@frozen struct Demand, Codable, CustomStringConvertible

Topics

Creating a Demand

static func max(Int) -> Subscribers.Demand

Creates a demand for the given maximum number of elements.

Using Special Demands

static let unlimited: Subscribers.Demand

A request for as many values as the publisher can produce.

static let none: Subscribers.Demand

A request for no elements from the publisher.

Inspecing Demand Properties

var max: Int?

The number of requested values.

Encoding and Decoding

func encode(to: Encoder)

Encodes the demand to the provide encoder.

init(from: Decoder)

Creates a demand instance from a decoder.

Performing Mathematical Operations

static func * (Subscribers.Demand, Int) -> Subscribers.Demand

Returns the result of multiplying a demand by an integer.

static func *= (inout Subscribers.Demand, Int)

Multiplies a demand by an integer, and assigns the result to the demand.

static func + (Subscribers.Demand, Int) -> Subscribers.Demand

Returns the result of adding an integer to a demand.

static func += (inout Subscribers.Demand, Subscribers.Demand)

Adds two demands, and assigns the result to the first demand.

static func += (inout Subscribers.Demand, Int)

Adds an integer to a demand, and assigns the result to the demand.

static func - (Subscribers.Demand, Subscribers.Demand) -> Subscribers.Demand

Returns the result of subtracting one demand from another.

static func - (Subscribers.Demand, Int) -> Subscribers.Demand

Returns the result of subtracting an integer from a demand.

static func -= (inout Subscribers.Demand, Subscribers.Demand)

Subtracts one demand from another, and assigns the result to the first demand.

static func -= (inout Subscribers.Demand, Int)

Subtracts an integer from a demand, and assigns the result to the demand.

static func ... (Subscribers.Demand) -> PartialRangeFrom<Subscribers.Demand>

Returns a partial range extending upward from a lower bound.

static func ... (Subscribers.Demand) -> PartialRangeThrough<Subscribers.Demand>

Returns a partial range up to, and including, its upper bound.

Comparing Demands

static func == (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether two demands are for the same number of elements.

static func == (Subscribers.Demand, Int) -> Bool

Returns a Boolean value indicating whether a demand requests the given number of elements.

static func == (Int, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether a given number of elements matches the request of a given demand.

static func != (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether two demands are unequal.

static func != (Subscribers.Demand, Int) -> Bool

Returns a Boolean value indicating whether a demand is not equal to an integer.

static func != (Int, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether an integer is not equal to a demand.

static func ..< (Subscribers.Demand) -> PartialRangeUpTo<Subscribers.Demand>

Returns a partial range up to, but not including, its upper bound.

static func ..< (Subscribers.Demand, Subscribers.Demand) -> Range<Subscribers.Demand>

Returns a half-open range that contains its lower bound but not its upper bound.

static func < (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean that indicates whether the first demand requests fewer elements than the second.

static func < (Subscribers.Demand, Int) -> Bool

Returns a Boolean that indicates whether the demand requests fewer than the given number of elements.

static func < (Int, Subscribers.Demand) -> Bool

Returns a Boolean that indicates a given number of elements is less than the maximum specified by the demand.

static func <= (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value that indicates whether the first demand requests fewer or the same number of elements as the second.

static func <= (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether the value of the first argument is less than or equal to that of the second argument.

static func <= (Subscribers.Demand, Int) -> Bool

Returns a Boolean that indicates whether the demand requests fewer or the same number of elements as the given integer.

static func <= (Int, Subscribers.Demand) -> Bool

Returns a Boolean value that indicates a given number of elements is less than or equal the maximum specified by the demand.

static func > (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean that indicates whether the first demand requests more elements than the second.

static func > (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether the value of the first argument is greater than that of the second argument.

static func > (Subscribers.Demand, Int) -> Bool

Returns a Boolean that indicates whether the demand requests more than the given number of elements.

static func > (Int, Subscribers.Demand) -> Bool

Returns a Boolean that indicates a given number of elements is greater than the maximum specified by the demand.

static func >= (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean that indicates whether the first demand requests more or the same number of elements as the second.

static func >= (Subscribers.Demand, Subscribers.Demand) -> Bool

Returns a Boolean value indicating whether the value of the first argument is greater than or equal to that of the second argument.

static func >= (Subscribers.Demand, Int) -> Bool

Returns a Boolean that indicates whether the demand requests more or the same number of elements as a given integer.

static func >= (Int, Subscribers.Demand) -> Bool

Returns a Boolean that indicates a given number of elements is greater than or equal to the maximum specified by the demand.