Pudu programming language
Menu

Std.Channel.receive

1 declaration

fn

receive: &Std.Channel.Channel[T] -> Result[Option[T], Std.Channel.ChannelError]

This is a callable function.

What it does

Take the next value, waiting while the channel is empty.

Nothing means the channel is closed and empty, which is what ends a

receiver's loop. A closed channel still hands out what it already holds:

closing says nothing more will arrive, not that what arrived is discarded.

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.
  • Option holds Some(value) or None when no value is available.
  • Result makes success and recoverable failure part of the function's type.

Back to Std.ChannelSearch related declarations