Pudu programming language
Menu

Std.Channel.fold

1 declaration

fn

fold: &Std.Channel.Channel[T] -> A -> fn(A, T) -> A -> Result[A, Std.Channel.ChannelError]

This is a callable function.

What it does

Take values until the channel closes, combining them into one value.

The value is threaded rather than gathered by the step function, because a

function literal carries a copy of what it captured: a step assigning to a

variable outside itself would leave that variable as it found it.

Read the signature

  • The text after the name is the type checked by Pudu.
  • Read arrows from left to right: inputs come first, and the final type is returned.
  • & borrows a value for this call instead of moving or copying it.
  • Names inside [ ] are type arguments, such as the item type held by a collection.
  • Result makes success and recoverable failure part of the function's type.

Back to Std.ChannelSearch related declarations