View Source RaftedValue.Server.State (rafted_value v0.11.2)

Link to this section Summary

Functions

Type-aware getter for command_results.

Type-aware setter for command_results.

Type-aware getter for config.

Type-aware setter for config.

Type-aware getter for current_term.

Type-aware setter for current_term.

Type-aware getter for data.

Type-aware setter for data.

Type-aware getter for election.

Type-aware setter for election.

Type-aware getter for leadership.

Type-aware setter for leadership.

Type-aware getter for logs.

Type-aware setter for logs.

Type-aware getter for members.

Type-aware setter for members.

Creates a new instance of RaftedValue.Server.State by using the given dict.

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

Type-aware getter for persistence.

Type-aware setter for persistence.

Updates an existing instance of RaftedValue.Server.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.

Link to this section Types

@type t() :: %RaftedValue.Server.State{
  command_results: RaftedValue.CommandResults.t(),
  config: RaftedValue.Config.t(),
  current_term: RaftedValue.TermNumber.t(),
  data: Croma.Any.t(),
  election: RaftedValue.Election.t(),
  leadership: Croma.TypeGen.Nilable.RaftedValue.Leadership.t(),
  logs: RaftedValue.Logs.t(),
  members: RaftedValue.Members.t(),
  persistence: Croma.TypeGen.Nilable.RaftedValue.Persistence.t()
}

Link to this section Functions

@spec command_results(t()) :: RaftedValue.CommandResults.t()

Type-aware getter for command_results.

Link to this function

command_results(s, field)

View Source
@spec command_results(t(), RaftedValue.CommandResults.t()) :: t()

Type-aware setter for command_results.

@spec config(t()) :: RaftedValue.Config.t()

Type-aware getter for config.

@spec config(t(), RaftedValue.Config.t()) :: t()

Type-aware setter for config.

@spec current_term(t()) :: RaftedValue.TermNumber.t()

Type-aware getter for current_term.

@spec current_term(t(), RaftedValue.TermNumber.t()) :: t()

Type-aware setter for current_term.

@spec data(t()) :: Croma.Any.t()

Type-aware getter for data.

@spec data(t(), Croma.Any.t()) :: t()

Type-aware setter for data.

@spec election(t()) :: RaftedValue.Election.t()

Type-aware getter for election.

@spec election(t(), RaftedValue.Election.t()) :: t()

Type-aware setter for election.

@spec leadership(t()) :: Croma.TypeGen.Nilable.RaftedValue.Leadership.t()

Type-aware getter for leadership.

@spec leadership(t(), Croma.TypeGen.Nilable.RaftedValue.Leadership.t()) :: t()

Type-aware setter for leadership.

@spec logs(t()) :: RaftedValue.Logs.t()

Type-aware getter for logs.

@spec logs(t(), RaftedValue.Logs.t()) :: t()

Type-aware setter for logs.

@spec members(t()) :: RaftedValue.Members.t()

Type-aware getter for members.

@spec members(t(), RaftedValue.Members.t()) :: t()

Type-aware setter for members.

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

Creates a new instance of RaftedValue.Server.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.

@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.

@spec persistence(t()) :: Croma.TypeGen.Nilable.RaftedValue.Persistence.t()

Type-aware getter for persistence.

@spec persistence(t(), Croma.TypeGen.Nilable.RaftedValue.Persistence.t()) :: t()

Type-aware setter for persistence.

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

Updates an existing instance of RaftedValue.Server.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}.

@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.

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

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