BatchedCommunication.Sender.State (batched_communication v0.3.0)

Copy Markdown View Source

Summary

Functions

Type-aware getter for buffers.

Type-aware setter for buffers.

Type-aware getter for compression.

Type-aware setter for compression.

Type-aware getter for max_messages_per_batch.

Type-aware setter for max_messages_per_batch.

Type-aware getter for max_wait_time.

Type-aware setter for max_wait_time.

Creates a new instance of BatchedCommunication.Sender.State by using the given dict.

A variant of new/1 which returns t or raise if validation fails.

Type-aware getter for receiver_name.

Type-aware setter for receiver_name.

Type-aware getter for stats.

Type-aware setter for stats.

Updates an existing instance of BatchedCommunication.Sender.State with the given dict. The values in the dict are validated by each field's valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}.

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

Checks if the given value belongs to t/0 or not.

Types

t()

@type t() :: %BatchedCommunication.Sender.State{
  buffers: Croma.Map.t(),
  compression: BatchedCommunication.Compression.t(),
  max_messages_per_batch: Croma.PosInteger.t(),
  max_wait_time: Croma.PosInteger.t(),
  receiver_name: Croma.Atom.t(),
  stats: Croma.Map.t()
}

Functions

buffers(state)

@spec buffers(t()) :: Croma.Map.t()

Type-aware getter for buffers.

buffers(s, field)

@spec buffers(t(), Croma.Map.t()) :: t()

Type-aware setter for buffers.

compression(state)

@spec compression(t()) :: BatchedCommunication.Compression.t()

Type-aware getter for compression.

compression(s, field)

@spec compression(t(), BatchedCommunication.Compression.t()) :: t()

Type-aware setter for compression.

max_messages_per_batch(state)

@spec max_messages_per_batch(t()) :: Croma.PosInteger.t()

Type-aware getter for max_messages_per_batch.

max_messages_per_batch(s, field)

@spec max_messages_per_batch(t(), Croma.PosInteger.t()) :: t()

Type-aware setter for max_messages_per_batch.

max_wait_time(state)

@spec max_wait_time(t()) :: Croma.PosInteger.t()

Type-aware getter for max_wait_time.

max_wait_time(s, field)

@spec max_wait_time(t(), Croma.PosInteger.t()) :: t()

Type-aware setter for max_wait_time.

new(dict)

@spec new(term()) :: Croma.Result.t(t())

Creates a new instance of BatchedCommunication.Sender.State by using the given dict.

Values associated with the struct field names are fetched from the given dict and then validated/converted with valid?/1/new/1. For missing fields default values (if any) are used.

Returns {:ok, valid_struct} when all fields are filled with valid values. Returns {:error, reason} if any error occurs (invalid value or no value is available).

See also moduledoc of Croma.Struct.

new!(dict)

@spec new!(term()) :: t()

A variant of new/1 which returns t or raise if validation fails.

In other words, new/1 followed by Croma.Result.get!/1.

receiver_name(state)

@spec receiver_name(t()) :: Croma.Atom.t()

Type-aware getter for receiver_name.

receiver_name(s, field)

@spec receiver_name(t(), Croma.Atom.t()) :: t()

Type-aware setter for receiver_name.

stats(state)

@spec stats(t()) :: Croma.Map.t()

Type-aware getter for stats.

stats(s, field)

@spec stats(t(), Croma.Map.t()) :: t()

Type-aware setter for stats.

update(s, dict)

@spec update(t(), Dict.t()) :: Croma.Result.t(t())

Updates an existing instance of BatchedCommunication.Sender.State with the given dict. The values in the dict are validated by each field's valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}.

update!(s, dict)

@spec update!(t(), Dict.t()) :: t()

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

valid?(value)

@spec valid?(term()) :: boolean()

Checks if the given value belongs to t/0 or not.