BinPacker.Assignments (bin_packer v0.1.0) View Source

Link to this section Summary

Link to this section Types

Specs

ball_id() :: BinPacker.ball_id()

Specs

ball_id_to_bin_id() :: %{required(ball_id()) => bin_id()}

Specs

balls() :: %{required(ball_id()) => BinPacker.Ball.t()}

Specs

bin_id() :: BinPacker.bin_id()

Specs

bin_id_to_ball_ids() :: %{required(bin_id()) => MapSet.t(ball_id())}

Specs

bins() :: %{required(bin_id()) => BinPacker.Bin.t()}

Specs

id() :: BinPacker.id()

Specs

t() :: %BinPacker.Assignments{
  ball_id_to_bin_id: ball_id_to_bin_id(),
  balls: balls(),
  bin_id_to_ball_ids: bin_id_to_ball_ids(),
  bins: bins()
}

Link to this section Functions

Specs

ball_ids(BinPacker.t()) :: [ball_id()]
Link to this function

ball_ids_for_bin_id(bin_packer, bin_id)

View Source

Specs

ball_ids_for_bin_id(BinPacker.t(), bin_id()) :: MapSet.t(bin_id())

Specs

balls(BinPacker.t()) :: [BinPacker.Ball.t()]
Link to this function

balls_for_bin_id(bin_packer, bin_id)

View Source

Specs

balls_for_bin_id(BinPacker.t(), bin_id()) :: [BinPacker.Ball.t()]
Link to this function

bin_for_ball(bin_packer, ball)

View Source

Specs

bin_for_ball(BinPacker.t(), BinPacker.Ball.t()) :: [BinPacker.Bin.t()]
Link to this function

bin_for_ball_id(bin_packer, ball_id)

View Source

Specs

bin_for_ball_id(BinPacker.t(), ball_id()) :: [BinPacker.Bin.t()]
Link to this function

bin_id(bin_packer, ball_id)

View Source

Specs

bin_id(BinPacker.t(), ball_id()) :: bin_id()
Link to this function

bin_id_for_ball_id(bin_packer, ball_id)

View Source

Specs

bin_id_for_ball_id(BinPacker.t(), ball_id()) :: [BinPacker.Bin.t()]

Specs

bin_ids(BinPacker.t()) :: [bin_id()]

Specs

bins(BinPacker.t()) :: [BinPacker.Bin.t()]
Link to this function

get_ball(bin_packer, id)

View Source

Specs

get_ball(BinPacker.t(), ball_id()) :: [BinPacker.Ball.t()]

Specs

get_bin(BinPacker.t(), bin_id()) :: [BinPacker.Bin.t()]
Link to this function

has_ball?(bin_packer, ball)

View Source

Specs

has_ball?(BinPacker.t(), BinPacker.Ball.t()) :: boolean()
Link to this function

has_bin?(bin_packer, bin)

View Source

Specs

has_bin?(BinPacker.t(), BinPacker.Bin.t()) :: boolean()
Link to this function

move_ball_id(bin_packer, ball_id, from_bin_id, to_bin_id)

View Source

Specs

move_ball_id(BinPacker.t(), ball_id(), bin_id(), bin_id()) :: BinPacker.t()
Link to this function

put_ball(bin_packer, bin_id, ball)

View Source

Specs

Link to this function

put_bin(bin_packer, bin)

View Source

Specs

Specs

to_map(BinPacker.t()) :: %{required(BinPacker.Bin.t()) => [BinPacker.Ball.t()]}