util/fifo8: Make all read-only methods const-correct
Allows these methods to be used in const contexts, i.e. where the parent of the fifo itself is const. This is in particular useful for Rust code. Signed-off-by: Bernhard Beschow <shentey@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20260305220911.131508-5-shentey@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Bernhard Beschow committed
Mar 5, 2026 at 23:09 UTC
6cbfd6008da1bc6654ef8277590c3df2c763b1cb
2 files changed
+10
-10
include/qemu/fifo8.h
+5
-5
@@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo);
71
*
72
* Returns: The peeked data byte.
73
*/
74
-uint8_t fifo8_peek(Fifo8 *fifo);
74
+uint8_t fifo8_peek(const Fifo8 *fifo);
75
76
/**
77
* fifo8_pop_buf:
@@ -181,7 +181,7 @@ void fifo8_reset(Fifo8 *fifo);
181
*
182
* Returns: True if the fifo is empty, false otherwise.
183
*/
184
-bool fifo8_is_empty(Fifo8 *fifo);
184
+bool fifo8_is_empty(const Fifo8 *fifo);
185
186
/**
187
* fifo8_is_full:
@@ -191,7 +191,7 @@ bool fifo8_is_empty(Fifo8 *fifo);
191
*
192
* Returns: True if the fifo is full, false otherwise.
193
*/
194
-bool fifo8_is_full(Fifo8 *fifo);
194
+bool fifo8_is_full(const Fifo8 *fifo);
195
196
/**
197
* fifo8_num_free:
@@ -201,7 +201,7 @@ bool fifo8_is_full(Fifo8 *fifo);
201
*
202
* Returns: Number of free bytes.
203
*/
204
-uint32_t fifo8_num_free(Fifo8 *fifo);
204
+uint32_t fifo8_num_free(const Fifo8 *fifo);
205
206
/**
207
* fifo8_num_used:
@@ -211,7 +211,7 @@ uint32_t fifo8_num_free(Fifo8 *fifo);
211
*
212
* Returns: Number of used bytes.
213
*/
214
-uint32_t fifo8_num_used(Fifo8 *fifo);
214
+uint32_t fifo8_num_used(const Fifo8 *fifo);
215
216
extern const VMStateDescription vmstate_fifo8;
217
util/fifo8.c
+5
-5
@@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo)
71
return ret;
72
}
73
74
-uint8_t fifo8_peek(Fifo8 *fifo)
74
+uint8_t fifo8_peek(const Fifo8 *fifo)
75
{
76
assert(fifo->num > 0);
77
return fifo->data[fifo->head];
@@ -157,22 +157,22 @@ void fifo8_drop(Fifo8 *fifo, uint32_t len)
157
assert(len == 0);
158
}
159
160
-bool fifo8_is_empty(Fifo8 *fifo)
160
+bool fifo8_is_empty(const Fifo8 *fifo)
161
{
162
return (fifo->num == 0);
163
}
164
165
-bool fifo8_is_full(Fifo8 *fifo)
165
+bool fifo8_is_full(const Fifo8 *fifo)
166
{
167
return (fifo->num == fifo->capacity);
168
}
169
170
-uint32_t fifo8_num_free(Fifo8 *fifo)
170
+uint32_t fifo8_num_free(const Fifo8 *fifo)
171
{
172
return fifo->capacity - fifo->num;
173
}
174
175
-uint32_t fifo8_num_used(Fifo8 *fifo)
175
+uint32_t fifo8_num_used(const Fifo8 *fifo)
176
{
177
return fifo->num;
178
}