Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

ControlNotificationStream.max(by:)

Swift
  • Python Unavailable
  • Ruby Unavailable
  • Lua Unavailable
  • TypeScript Unavailable
  • Rust Unavailable
  • Go Unavailable
  • Java Unavailable
  • .NET Unavailable
  • C++ Unavailable
  • Swift

View as Markdown

Declared in
ControlNotificationStream
Package
libtmux-swift
max(by:) ( by : (Self.Element, Self.Element) async throws -> Bool ) → Self.Element?
methodasync
methodasync
max(by:)

Inherited from AsyncSequence.max(by:)

Returns the maximum element in the asynchronous sequence, using the given predicate as the comparison between elements.

Use this method when the asynchronous sequence's values don't conform to Comparable, or when you want to apply a custom ordering to the sequence.

The predicate must be a *strict weak ordering* over the elements. That is, for any elements a, b, and c, the following conditions must hold:

  • areInIncreasingOrder(a, a) is always false. (Irreflexivity)
  • If areInIncreasingOrder(a, b) and areInIncreasingOrder(b, c) are both true, then areInIncreasingOrder(a, c) is also true. (Transitive comparability)
  • Two elements are *incomparable* if neither is ordered before the other according to the predicate. If a and b are incomparable, and b and c are incomparable, then a and c are also incomparable. (Transitive incomparability)

The following example uses an enumeration of playing cards ranks, Rank, which ranges from ace (low) to king (high). An asynchronous sequence called RankCounter produces all elements of the array. The predicate provided to the max(by:) method sorts ranks based on their rawValue:

enum Rank: Int { case ace = 1, two, three, four, five, six, seven, eight, nine, ten, jack, queen, king }

let max = await RankCounter() .max { $0.rawValue < $1.rawValue } print(max ?? "none") // Prints "king"

  • Parameter areInIncreasingOrder: A predicate that returns true if its first argument should be ordered before its second argument; otherwise, false.
  • Returns: The sequence’s minimum element, according to areInIncreasingOrder. If the sequence has no elements, returns nil.
Raises

0 declared, 0 inherited

Esc

Type to search.