wl_array - Man Page


#include <wayland-util.h>

Public Member Functions

void wl_array_init (struct wl_array *array)
void wl_array_release (struct wl_array *array)
void * wl_array_add (struct wl_array *array, size_t size)
int wl_array_copy (struct wl_array *array, struct wl_array *source)

Data Fields

size_t size
size_t alloc
void * data

Detailed Description

Dynamic array

A wl_array is a dynamic array that can only grow until released. It is intended for relatively small allocations whose size is variable or not known in advance. While construction of a wl_array does not require all elements to be of the same size, wl_array_for_each() does require all elements to have the same type and size.

Member Function Documentation

void * wl_array_add (struct wl_array * array, size_t size)

Increases the size of the array by size bytes.


array Array whose size is to be increased
size Number of bytes to increase the size of the array by


A pointer to the beginning of the newly appended space, or NULL when resizing fails.

int wl_array_copy (struct wl_array * array, struct wl_array * source)

Copies the contents of source to array.


array Destination array to copy to
source Source array to copy from


0 on success, or -1 on failure

void wl_array_init (struct wl_array * array)

Initializes the array.


array Array to initialize

void wl_array_release (struct wl_array * array)

Releases the array data.


Leaves the array in an invalid state.


array Array whose data is to be released

Field Documentation

size_t wl_array::alloc

Allocated space

void* wl_array::data

Array data

size_t wl_array::size

Array size


Generated automatically by Doxygen for Wayland from the source code.


Sat Jul 22 2023 00:00:00 Version 1.22.0 Wayland