From 8e77f810ec3c5dce234e16df06f753f838712796 Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Tue, 2 Jul 2024 06:27:05 +0200 Subject: [PATCH] Better enum docs, added errors related to *_many functions --- ringbuf.h | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/ringbuf.h b/ringbuf.h index 0117887..efffe50 100644 --- a/ringbuf.h +++ b/ringbuf.h @@ -25,8 +25,24 @@ struct RingBuf { void *buffer_end; /** The end of the buffer */ } __attribute__((packed)); -enum WriteResult { Full, WriteOk }; /** Result of a write */ -enum ReadResult { Empty, ReadOk }; /** Result of a read */ +/* + * Considerations: One hot encoding for the enum values + * (8 bit each with -fshort-enums) + */ + +/** Result of a write */ +enum WriteResult { + WriteOk, /** The write was successful */ + Full, /** The buffer is full */ + InsufficientSpace /** There is not enough space to write */ +}; + +/** Result of a read */ +enum ReadResult { + Empty, /** The buffer is empty */ + ReadOk, /** The read was successful */ + InsufficientData /** There is not enough data to read */ +}; /** * @brief Initialize the ring buffer