rafted_value v0.1.9 RaftedValue.Members

Summary

Functions

Type-aware getter for all

Type-aware setter for all

Type-aware getter for leader

Type-aware setter for leader

Creates a new instance of Elixir.RaftedValue.Members by using the given dict and the default value of each field. Returns {:ok, valid_struct} or {:error, reason}. The values in the dict are validated by each field’s validate/1 function

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

Type-aware getter for pending_leader_change

Type-aware setter for pending_leader_change

Type-aware getter for uncommitted_membership_change

Type-aware setter for uncommitted_membership_change

Updates an existing instance of Elixir.RaftedValue.Members with the given dict. The values in the dict are validated by each field’s validate/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 that the given dict is valid or not by using each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}

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

Types

t()
t() :: %RaftedValue.Members{all: RaftedValue.PidSet.t, leader: Croma.TypeGen.Nilable.Croma.Pid.t, pending_leader_change: Croma.TypeGen.Nilable.Croma.Pid.t, uncommitted_membership_change: Croma.TypeGen.Nilable.RaftedValue.LogEntry.t}

Functions

all(members)
all(t) :: RaftedValue.PidSet.t

Type-aware getter for all.

all(s, field)
all(t, RaftedValue.PidSet.t) :: t

Type-aware setter for all.

force_remove_member(m, pid)
force_remove_member(RaftedValue.Members.t, pid) :: t
leader(members)

Type-aware getter for leader.

leader(s, field)

Type-aware setter for leader.

membership_change_committed(m, index)
membership_change_committed(RaftedValue.Members.t, LogIndex.t) :: t

Creates a new instance of Elixir.RaftedValue.Members by using the given dict and the default value of each field. Returns {:ok, valid_struct} or {:error, reason}. The values in the dict are validated by each field’s validate/1 function.

new!(dict)
new!(Dict.t) :: 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.

new_for_lonely_leader()
new_for_lonely_leader() :: t
other_members_list(a0)
other_members_list(RaftedValue.Members.t) :: [pid]
pending_leader_change(members)
pending_leader_change(t) :: Croma.TypeGen.Nilable.Croma.Pid.t

Type-aware getter for pending_leader_change.

pending_leader_change(s, field)
pending_leader_change(t, Croma.TypeGen.Nilable.Croma.Pid.t) :: t

Type-aware setter for pending_leader_change.

put_leader(m, leader_or_nil)
put_leader(t, nil | pid) :: t
start_adding_follower(m, entry)
start_adding_follower(RaftedValue.Members.t, {any, any, :add_follower, any}) :: Croma.Result.t(<a href="#t:t/0">t</a>)
start_removing_follower(m, entry)
start_removing_follower(RaftedValue.Members.t, {any, any, :remove_follower, any}) :: Croma.Result.t(<a href="#t:t/0">t</a>)
start_replacing_leader(m, new_leader)
start_replacing_leader(RaftedValue.Members.t, nil | pid) :: Croma.Result.t(<a href="#t:t/0">t</a>)
uncommitted_membership_change(members)
uncommitted_membership_change(t) :: Croma.TypeGen.Nilable.RaftedValue.LogEntry.t

Type-aware getter for uncommitted_membership_change.

uncommitted_membership_change(s, field)
uncommitted_membership_change(t, Croma.TypeGen.Nilable.RaftedValue.LogEntry.t) :: t

Type-aware setter for uncommitted_membership_change.

Updates an existing instance of Elixir.RaftedValue.Members with the given dict. The values in the dict are validated by each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}.

update!(s, dict)
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.

Checks that the given dict is valid or not by using each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}.

validate!(dict)
validate!(Dict.t) :: t

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