TDequeue

trait TDequeue[+A] extends Serializable

A transactional queue that can only be dequeued.

class Object
trait Matchable
class Any
trait TQueue[A]

Value members

Abstract methods

The maximum capacity of the queue.

The maximum capacity of the queue.

Checks whether the queue is shut down.

Checks whether the queue is shut down.

def peek: ZSTM[Any, Nothing, A]

Views the next element in the queue without removing it, retrying if the queue is empty.

Views the next element in the queue without removing it, retrying if the queue is empty.

def peekOption: ZSTM[Any, Nothing, Option[A]]

Views the next element in the queue without removing it, returning None if the queue is empty.

Views the next element in the queue without removing it, returning None if the queue is empty.

Shuts down the queue.

Shuts down the queue.

def size: USTM[Int]

The current number of values in the queue.

The current number of values in the queue.

def take: ZSTM[Any, Nothing, A]

Takes a value from the queue.

Takes a value from the queue.

def takeAll: ZSTM[Any, Nothing, Chunk[A]]

Takes all the values from the queue.

Takes all the values from the queue.

def takeUpTo(max: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes up to the specified number of values from the queue.

Takes up to the specified number of values from the queue.

Concrete methods

Waits for the hub to be shut down.

Waits for the hub to be shut down.

Checks if the queue is empty.

Checks if the queue is empty.

Checks if the queue is at capacity.

Checks if the queue is at capacity.

final def poll: ZSTM[Any, Nothing, Option[A]]

Takes a single element from the queue, returning None if the queue is empty.

Takes a single element from the queue, returning None if the queue is empty.

final def seek(f: A => Boolean): ZSTM[Any, Nothing, A]

Drops elements from the queue while they do not satisfy the predicate, taking and returning the first element that does satisfy the predicate. Retries if no elements satisfy the predicate.

Drops elements from the queue while they do not satisfy the predicate, taking and returning the first element that does satisfy the predicate. Retries if no elements satisfy the predicate.

final def takeBetween(min: Int, max: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes a number of elements from the queue between the specified minimum and maximum. If there are fewer than the minimum number of elements available, retries until at least the minimum number of elements have been collected.

Takes a number of elements from the queue between the specified minimum and maximum. If there are fewer than the minimum number of elements available, retries until at least the minimum number of elements have been collected.

final def takeN(n: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes the specified number of elements from the queue. If there are fewer than the specified number of elements available, it retries until they become available.

Takes the specified number of elements from the queue. If there are fewer than the specified number of elements available, it retries until they become available.