Skip to content

Payload: split into the appropriate segment #55

@jeanparpaillon

Description

@jeanparpaillon

See TODO:

  def segment_at(
        %__MODULE__{data: data, size: size} = payload,
        number
      ) do
    offset = size * number
    data_size = byte_size(data)
    part_size = Enum.min([data_size - offset, size])
    more = data_size > offset + part_size

    # TODO: splits into the appropriate segment
    data = data |> :binary.part(offset, part_size)

    block = Block.build({number, more, size})

    {data, block, %{payload | multipart: more}}
  end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions