* garrow_buffer_copy: * @buffer: A #GArrowBuffer. * @start: An offset of data to be copied in byte. * @size: The number of bytes to be copied from the start. * @error: (nullable): Return location for a #GError or %NULL. * * Returns: (nullable) (transfer full): * A newly copied #GArrowBuffer on success, %NULL on error. * * Since: 0.3.0 */
| 382 | * Since: 0.3.0 |
| 383 | */ |
| 384 | GArrowBuffer * |
| 385 | garrow_buffer_copy(GArrowBuffer *buffer, gint64 start, gint64 size, GError **error) |
| 386 | { |
| 387 | auto arrow_buffer = garrow_buffer_get_raw(buffer); |
| 388 | auto maybe_copied_buffer = arrow_buffer->CopySlice(start, size); |
| 389 | if (garrow::check(error, maybe_copied_buffer, "[buffer][copy]")) { |
| 390 | return garrow_buffer_new_raw(&(*maybe_copied_buffer)); |
| 391 | } else { |
| 392 | return NULL; |
| 393 | } |
| 394 | } |
| 395 | |
| 396 | /** |
| 397 | * garrow_buffer_slice: |
nothing calls this directly
no test coverage detected