Bedrock.DataPlane.Materializer.Olivine.IdAllocator (bedrock v0.5.2)
View SourceManages ID allocation and reallocation for pages.
Summary
Types
@type t() :: %Bedrock.DataPlane.Materializer.Olivine.IdAllocator{ free_ids: [Bedrock.DataPlane.Materializer.Olivine.Index.Page.id()], max_id: Bedrock.DataPlane.Materializer.Olivine.Index.Page.id() }
Functions
@spec allocate_id(t()) :: {Bedrock.DataPlane.Materializer.Olivine.Index.Page.id(), t()}
@spec allocate_ids(t(), non_neg_integer()) :: {[Bedrock.DataPlane.Materializer.Olivine.Index.Page.id()], t()}
@spec new(Bedrock.DataPlane.Materializer.Olivine.Index.Page.id(), [ Bedrock.DataPlane.Materializer.Olivine.Index.Page.id() ]) :: t()
@spec recycle_id(t(), Bedrock.DataPlane.Materializer.Olivine.Index.Page.id()) :: t()
@spec recycle_ids(t(), [Bedrock.DataPlane.Materializer.Olivine.Index.Page.id()]) :: t()