33#ifndef FASTFETCH_INCLUDED_FFSTRBUF
44#define FASTFETCH_INCLUDED_FFSTRBUF
55
6+ #include "FFcheckmacros.h"
7+
68#include <stdint.h>
79#include <stdarg.h>
810#include <stdbool.h>
@@ -25,7 +27,7 @@ void ffStrbufInitCopy(FFstrbuf* strbuf, const FFstrbuf* src);
2527
2628void ffStrbufEnsureFree (FFstrbuf * strbuf , uint32_t free );
2729
28- uint32_t ffStrbufGetFree (const FFstrbuf * strbuf );
30+ FF_C_NODISCARD uint32_t ffStrbufGetFree (const FFstrbuf * strbuf );
2931
3032void ffStrbufClear (FFstrbuf * strbuf );
3133
@@ -37,7 +39,7 @@ void ffStrbufAppendS(FFstrbuf* strbuf, const char* value);
3739void ffStrbufAppendNS (FFstrbuf * strbuf , uint32_t length , const char * value );
3840void ffStrbufAppendNSExludingC (FFstrbuf * strbuf , uint32_t length , const char * value , char exclude );
3941void ffStrbufAppendTransformS (FFstrbuf * strbuf , const char * value , int (* transformFunc )(int ));
40- void ffStrbufAppendF (FFstrbuf * strbuf , const char * format , ...);
42+ FF_C_PRINTF ( 2 , 3 ) void ffStrbufAppendF (FFstrbuf * strbuf , const char * format , ...);
4143void ffStrbufAppendVF (FFstrbuf * strbuf , const char * format , va_list arguments );
4244
4345void ffStrbufPrependS (FFstrbuf * strbuf , const char * value );
@@ -46,11 +48,11 @@ void ffStrbufPrependNS(FFstrbuf* strbuf, uint32_t length, const char* value);
4648void ffStrbufSet (FFstrbuf * strbuf , const FFstrbuf * value );
4749void ffStrbufSetS (FFstrbuf * strbuf , const char * value );
4850
49- int ffStrbufComp (const FFstrbuf * strbuf , const FFstrbuf * comp );
50- int ffStrbufCompS (const FFstrbuf * strbuf , const char * comp );
51+ FF_C_NODISCARD int ffStrbufComp (const FFstrbuf * strbuf , const FFstrbuf * comp );
52+ FF_C_NODISCARD int ffStrbufCompS (const FFstrbuf * strbuf , const char * comp );
5153
52- int ffStrbufIgnCaseComp (const FFstrbuf * strbuf , const FFstrbuf * comp );
53- int ffStrbufIgnCaseCompS (const FFstrbuf * strbuf , const char * comp );
54+ FF_C_NODISCARD int ffStrbufIgnCaseComp (const FFstrbuf * strbuf , const FFstrbuf * comp );
55+ FF_C_NODISCARD int ffStrbufIgnCaseCompS (const FFstrbuf * strbuf , const char * comp );
5456
5557void ffStrbufTrimLeft (FFstrbuf * strbuf , char c );
5658void ffStrbufTrimRight (FFstrbuf * strbuf , char c );
@@ -62,16 +64,16 @@ void ffStrbufRemoveStringsA(FFstrbuf* strbuf, uint32_t numStrings, const char* s
6264void ffStrbufRemoveStringsV (FFstrbuf * strbuf , uint32_t numStrings , va_list arguments );
6365void ffStrbufRemoveStrings (FFstrbuf * strbuf , uint32_t numStrings , ...);
6466
65- uint32_t ffStrbufNextIndexC (const FFstrbuf * strbuf , uint32_t start , char c );
66- uint32_t ffStrbufNextIndexS (const FFstrbuf * strbuf , uint32_t start , const char * str );
67+ FF_C_NODISCARD uint32_t ffStrbufNextIndexC (const FFstrbuf * strbuf , uint32_t start , char c );
68+ FF_C_NODISCARD uint32_t ffStrbufNextIndexS (const FFstrbuf * strbuf , uint32_t start , const char * str );
6769
68- uint32_t ffStrbufFirstIndexC (const FFstrbuf * strbuf , char c );
69- uint32_t ffStrbufFirstIndex (const FFstrbuf * strbuf , const FFstrbuf * searched );
70- uint32_t ffStrbufFirstIndexS (const FFstrbuf * strbuf , const char * str );
70+ FF_C_NODISCARD uint32_t ffStrbufFirstIndexC (const FFstrbuf * strbuf , char c );
71+ FF_C_NODISCARD uint32_t ffStrbufFirstIndex (const FFstrbuf * strbuf , const FFstrbuf * searched );
72+ FF_C_NODISCARD uint32_t ffStrbufFirstIndexS (const FFstrbuf * strbuf , const char * str );
7173
72- uint32_t ffStrbufPreviousIndexC (const FFstrbuf * strbuf , uint32_t start , char c );
74+ FF_C_NODISCARD uint32_t ffStrbufPreviousIndexC (const FFstrbuf * strbuf , uint32_t start , char c );
7375
74- uint32_t ffStrbufLastIndexC (const FFstrbuf * strbuf , char c );
76+ FF_C_NODISCARD uint32_t ffStrbufLastIndexC (const FFstrbuf * strbuf , char c );
7577
7678void ffStrbufSubstrBefore (FFstrbuf * strbuf , uint32_t index );
7779void ffStrbufSubstrBeforeFirstC (FFstrbuf * strbuf , char c );
@@ -89,7 +91,7 @@ bool ffStrbufStartsWithIgnCaseS(const FFstrbuf* strbuf, const char* start);
8991bool ffStrbufEndsWithC (const FFstrbuf * strbuf , char c );
9092bool ffStrbufEndsWithS (const FFstrbuf * strbuf , const char * end );
9193
92- uint32_t ffStrbufCountC (const FFstrbuf * strbuf , char c );
94+ FF_C_NODISCARD uint32_t ffStrbufCountC (const FFstrbuf * strbuf , char c );
9395
9496bool ffStrbufRemoveIgnCaseEndS (FFstrbuf * strbuf , const char * end );
9597
@@ -98,8 +100,8 @@ void ffStrbufEnsureEndsWithC(FFstrbuf* strbuf, char c);
98100void ffStrbufWriteTo (const FFstrbuf * strbuf , FILE * file );
99101void ffStrbufPutTo (const FFstrbuf * strbuf , FILE * file );
100102
101- double ffStrbufToDouble (const FFstrbuf * strbuf );
102- uint16_t ffStrbufToUInt16 (const FFstrbuf * strbuf , uint16_t defaultValue );
103+ FF_C_NODISCARD double ffStrbufToDouble (const FFstrbuf * strbuf );
104+ FF_C_NODISCARD uint16_t ffStrbufToUInt16 (const FFstrbuf * strbuf , uint16_t defaultValue );
103105
104106void ffStrbufDestroy (FFstrbuf * strbuf );
105107
0 commit comments