rafted_value v0.11.1 RaftedValue.Members View Source
Link to this section 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 RaftedValue.Members by using the given dict
.
A variant of new/1
which returns t
or raise if validation fails.
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 RaftedValue.Members 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
t()
View Source
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()
}
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() }
Link to this section Functions
all(members)
View Source
all(t()) :: RaftedValue.PidSet.t()
all(t()) :: RaftedValue.PidSet.t()
Type-aware getter for all.
all(s, field) View Source
Type-aware setter for all.
force_remove_member(m, pid)
View Source
force_remove_member(RaftedValue.Members.t(), pid()) :: t()
force_remove_member(RaftedValue.Members.t(), pid()) :: t()
leader(members)
View Source
leader(t()) :: Croma.TypeGen.Nilable.Croma.Pid.t()
leader(t()) :: Croma.TypeGen.Nilable.Croma.Pid.t()
Type-aware getter for leader.
leader(s, field)
View Source
leader(t(), Croma.TypeGen.Nilable.Croma.Pid.t()) :: t()
leader(t(), Croma.TypeGen.Nilable.Croma.Pid.t()) :: t()
Type-aware setter for leader.
membership_change_committed(m, index)
View Source
membership_change_committed(RaftedValue.Members.t(), RaftedValue.LogIndex.t()) ::
t()
membership_change_committed(RaftedValue.Members.t(), RaftedValue.LogIndex.t()) :: t()
new(dict)
View Source
new(term()) :: Croma.Result.t(t())
new(term()) :: Croma.Result.t(t())
Creates a new instance of RaftedValue.Members by using the given dict
.
For missing fields, default/0
of each field type will be used.
Returns {:ok, valid_struct}
or {:error, reason}
.
The values in the dict
are validated by each field's valid?/1
function.
new!(dict) View Source
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()
View Source
new_for_lonely_leader() :: t()
new_for_lonely_leader() :: t()
other_members_list(arg0)
View Source
other_members_list(RaftedValue.Members.t()) :: [pid()]
other_members_list(RaftedValue.Members.t()) :: [pid()]
pending_leader_change(members)
View Source
pending_leader_change(t()) :: Croma.TypeGen.Nilable.Croma.Pid.t()
pending_leader_change(t()) :: Croma.TypeGen.Nilable.Croma.Pid.t()
Type-aware getter for pending_leader_change.
pending_leader_change(s, field)
View Source
pending_leader_change(t(), Croma.TypeGen.Nilable.Croma.Pid.t()) :: t()
pending_leader_change(t(), Croma.TypeGen.Nilable.Croma.Pid.t()) :: t()
Type-aware setter for pending_leader_change.
put_leader(m, leader_or_nil) View Source
start_adding_follower(m, entry)
View Source
start_adding_follower(
RaftedValue.Members.t(),
{any(), any(), :add_follower, any()}
) :: Croma.Result.t(t())
start_adding_follower( RaftedValue.Members.t(), {any(), any(), :add_follower, any()} ) :: Croma.Result.t(t())
start_removing_follower(m, entry)
View Source
start_removing_follower(
RaftedValue.Members.t(),
{any(), any(), :remove_follower, any()}
) :: Croma.Result.t(t())
start_removing_follower( RaftedValue.Members.t(), {any(), any(), :remove_follower, any()} ) :: Croma.Result.t(t())
start_replacing_leader(m, new_leader)
View Source
start_replacing_leader(RaftedValue.Members.t(), nil | pid()) ::
Croma.Result.t(t())
start_replacing_leader(RaftedValue.Members.t(), nil | pid()) :: Croma.Result.t(t())
uncommitted_membership_change(members)
View Source
uncommitted_membership_change(t()) ::
Croma.TypeGen.Nilable.RaftedValue.LogEntry.t()
uncommitted_membership_change(t()) :: Croma.TypeGen.Nilable.RaftedValue.LogEntry.t()
Type-aware getter for uncommitted_membership_change.
uncommitted_membership_change(s, field) View Source
Type-aware setter for uncommitted_membership_change.
update(s, dict)
View Source
update(t(), Dict.t()) :: Croma.Result.t(t())
update(t(), Dict.t()) :: Croma.Result.t(t())
Updates an existing instance of RaftedValue.Members 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) View Source
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) View Source
Checks if the given value belongs to t/0
or not.