libscratchcpp
A library for C++ based Scratch project players
Loading...
Searching...
No Matches
list_functions.h
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2
3#pragma once
4
5#include <cstddef>
6
7namespace libscratchcpp
8{
9
10class List;
11struct ValueData;
12struct StringPtr;
13
14extern "C"
15{
16 void list_clear(List *list);
17 void list_remove(List *list, size_t index);
18
20 ValueData *list_insert_empty(List *list, size_t index);
21
22 ValueData *list_get_item(List *list, size_t index);
25 size_t *list_size_ptr(List *list);
26 const size_t *list_alloc_size_ptr(List *list);
27 size_t list_size(List *list);
28
29 void list_to_string(List *list, StringPtr *dst);
30}
31
32} // namespace libscratchcpp
The List class represents a Scratch list.
Definition list.h:27
The main namespace of the library.
Definition asset.h:10
ValueData *const * list_data_ptr(List *list)
ValueData * list_get_item(List *list, size_t index)
ValueData * list_insert_empty(List *list, size_t index)
size_t list_size(List *list)
void list_to_string(List *list, StringPtr *dst)
const size_t * list_alloc_size_ptr(List *list)
size_t * list_size_ptr(List *list)
void list_remove(List *list, size_t index)
ValueData * list_append_empty(List *list)
ValueData * list_data(List *list)
void list_clear(List *list)
The StringPtr struct holds a string data pointer and string size.
Definition stringptr.h:14
The ValueData struct holds the data of Value. It's used in compiled Scratch code for better performan...
Definition valuedata.h:26