Hyperlinkv0.8.0-beta.28

Chunk

Chunk.sortconsteffect/Chunk.ts:1880
<B>(O: Order.Order<B>): <A extends B>(self: Chunk<A>) => Chunk<A>
<A extends B, B>(self: Chunk<A>, O: Order.Order<B>): Chunk<A>

Sorts the elements of a Chunk in increasing order, creating a new Chunk.

Example (Sorting chunks)

import { Chunk, Order } from "effect"

const numbers = Chunk.make(3, 1, 4, 1, 5, 9, 2, 6)
const sorted = Chunk.sort(numbers, Order.Number)
console.log(Chunk.toArray(sorted)) // [1, 1, 2, 3, 4, 5, 6, 9]

// Reverse order
const reverseSorted = Chunk.sort(numbers, Order.flip(Order.Number))
console.log(Chunk.toArray(reverseSorted)) // [9, 6, 5, 4, 3, 2, 1, 1]

// String sorting
const words = Chunk.make("banana", "apple", "cherry")
const sortedWords = Chunk.sort(words, Order.String)
console.log(Chunk.toArray(sortedWords)) // ["apple", "banana", "cherry"]
sorting
Source effect/Chunk.ts:18807 lines
export const sort: {
  <B>(O: Order.Order<B>): <A extends B>(self: Chunk<A>) => Chunk<A>
  <A extends B, B>(self: Chunk<A>, O: Order.Order<B>): Chunk<A>
} = dual(
  2,
  <A extends B, B>(self: Chunk<A>, O: Order.Order<B>): Chunk<A> => fromArrayUnsafe(RA.sort(toReadonlyArray(self), O))
)
Referenced by 1 symbols