libsheepy
libsheepyCSmallString.h
Go to the documentation of this file.
1 // MIT License
2 //
3 // Copyright (c) 2023 Remy Noulin
4 //
5 // Permission is hereby granted, free of charge, to any person obtaining a copy
6 // of this software and associated documentation files (the "Software"), to deal
7 // in the Software without restriction, including without limitation the rights
8 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 // copies of the Software, and to permit persons to whom the Software is
10 // furnished to do so, subject to the following conditions:
11 //
12 // The above copyright notice and this permission notice shall be included in all
13 // copies or substantial portions of the Software.
14 //
15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 // SOFTWARE.
22 #pragma once
23 
24 #include "string.h"
25 
26 // Class smallString
27 typedef struct smallString smallStringt;
28 
34 #define helpTextSmallString "TODO smallString help brief, class description /*, definitions,*/ methods, examples"
35 
36 // for object inheriting smallString, cast to smallString to be able to use this class functions and generics
37 #define cSt(self) ( (smallStringt*) self )
38 
39 typedef void (*freeSmallStringFt) (smallStringt *self);
40 typedef void (*terminateSmallStringFt) (smallStringt **self);
41 typedef char* (*toStringSmallStringFt) (smallStringt *self);
42 typedef smallStringt* (*duplicateSmallStringFt) (smallStringt *self);
43 
44 // smallString functions
45 typedef char* (*escapeSmallStringFt) (smallStringt *self);
46 
53 typedef void (*smashSmallStringFt) (smallStringt **self);
54 
58 typedef void (*finishSmallStringFt) (smallStringt **self);
59 
60 typedef const char* (*helpSmallStringFt) (smallStringt *self);
61 
68 typedef char* (*getSmallStringFt) (smallStringt *self);
69 
76 typedef smallStringt* (*setSmallStringFt) (smallStringt *self, const char *string);
77 typedef smallStringt* (*setCharSmallStringFt) (smallStringt *self, char c);
78 typedef smallStringt* (*setNFreeSmallStringFt) (smallStringt *self, char *string);
79 
80 typedef smallStringt* (*setBoolSmallStringFt) (smallStringt* self, bool p2);
81 typedef smallStringt* (*setDoubleSmallStringFt) (smallStringt* self, double p2);
82 typedef smallStringt* (*setInt64SmallStringFt) (smallStringt* self, int64_t p2);
83 typedef smallStringt* (*setInt32SmallStringFt) (smallStringt* self, int32_t p2);
84 typedef smallStringt* (*setUint32SmallStringFt) (smallStringt* self, uint32_t p2);
85 typedef smallStringt* (*setUint64SmallStringFt) (smallStringt* self, uint64_t p2);
86 typedef smallStringt* (*setSmallArraySmallStringFt) (smallStringt* self, smallArrayt* p2);
87 typedef smallStringt* (*setFromSmallDictSmallStringFt)(smallStringt* self, smallDictt* p2);
88 typedef smallStringt* (*setFromSmallJsonSmallStringFt)(smallStringt* self, smallJsont* p2);
89 typedef smallStringt* (*setSmallBoolSmallStringFt) (smallStringt* self, smallBoolt* p2);
90 typedef smallStringt* (*setSmallDoubleSmallStringFt)(smallStringt* self, smallDoublet* p2);
91 typedef smallStringt* (*setSmallIntSmallStringFt) (smallStringt* self, smallIntt* p2);
92 typedef smallStringt* (*setSmallJsonSmallStringFt) (smallStringt* self, smallJsont* p2);
93 typedef smallStringt* (*setSmallStringSmallStringFt)(smallStringt* self, smallStringt* p2);
94 
101 typedef smallStringt* (*appendSmallStringFt) (smallStringt *self, smallStringt *string);
102 typedef smallStringt* (*appendSmallJsonSmallStringFt) (smallStringt *self, smallJsont *string);
103 typedef smallStringt* (*appendSSmallStringFt) (smallStringt *self, const char *string);
104 typedef smallStringt* (*appendCharSmallStringFt) (smallStringt *self, char c);
105 typedef smallStringt* (*appendNSmashSmallStringFt) (smallStringt *self, smallStringt *string);
106 typedef smallStringt* (*appendNSmashSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string);
107 typedef smallStringt* (*appendNSmashSSmallStringFt) (smallStringt *self, char *string);
108 
117 typedef smallStringt* (*prependSmallStringFt) (smallStringt *self, smallStringt *string);
118 typedef smallStringt* (*prependSmallJsonSmallStringFt) (smallStringt *self, smallJsont *json);
119 typedef smallStringt* (*prependSSmallStringFt) (smallStringt *self, const char *string);
120 typedef smallStringt* (*prependCharSmallStringFt) (smallStringt *self, char c);
121 typedef smallStringt* (*prependNSmashSmallStringFt) (smallStringt *self, smallStringt *string);
122 typedef smallStringt* (*prependNSmashSmallJsonSmallStringFt)(smallStringt *self, smallJsont *json);
123 typedef smallStringt* (*prependNSmashSSmallStringFt) (smallStringt *self, char *string);
124 
133 typedef smallStringt* (*catSmallStringFt) (smallStringt *self, ...);
134 typedef smallStringt* (*catSSmallStringFt) (smallStringt *self, ...);
135 
142 typedef smallStringt* (*pushNFreeManySmallStringFt) (smallStringt *self, ...);
143 typedef smallStringt* (*pushNFreeManySSmallStringFt)(smallStringt *self, ...);
144 
160 typedef smallStringt* (*replaceSmallStringFt) (smallStringt *self, const char *olds, const char *news, size_t max);
161 typedef smallStringt* (*replaceCharSSmallStringFt) (smallStringt *self, char olds, const char *news, size_t max);
162 typedef smallStringt* (*replaceSCharSmallStringFt) (smallStringt *self, const char *olds, char news, size_t max);
163 typedef smallStringt* (*replaceCharCharSmallStringFt) (smallStringt *self, char olds, char news, size_t max);
164 typedef smallStringt* (*replaceSmallJsonSmallJsonSmallStringFt) (smallStringt *self, smallJsont *olds, smallJsont *news, size_t max);
165 typedef smallStringt* (*replaceSmallJsonSmallStringSmallStringFt) (smallStringt *self, smallJsont *olds, smallStringt *news, size_t max);
166 typedef smallStringt* (*replaceSmallJsonSSmallStringFt) (smallStringt *self, smallJsont *olds, const char *news, size_t max);
167 typedef smallStringt* (*replaceSmallJsonCharSmallStringFt) (smallStringt *self, smallJsont *olds, char news, size_t max);
168 typedef smallStringt* (*replaceSmallStringSmallJsonSmallStringFt) (smallStringt *self, smallStringt *olds, smallJsont *news, size_t max);
169 typedef smallStringt* (*replaceSmallStringSmallStringSmallStringFt)(smallStringt *self, smallStringt *olds, smallStringt *news, size_t max);
170 typedef smallStringt* (*replaceSmallStringSSmallStringFt) (smallStringt *self, smallStringt *olds, const char *news, size_t max);
171 typedef smallStringt* (*replaceSmallStringCharSmallStringFt) (smallStringt *self, smallStringt *olds, char news, size_t max);
172 typedef smallStringt* (*replaceSSmallJsonSmallStringFt) (smallStringt *self, const char *olds, smallJsont *news, size_t max);
173 typedef smallStringt* (*replaceSSmallStringSmallStringFt) (smallStringt *self, const char *olds, smallStringt *news, size_t max);
174 typedef smallStringt* (*replaceCharSmallJsonSmallStringFt) (smallStringt *self, char olds, smallJsont *news, size_t max);
175 typedef smallStringt* (*replaceCharSmallStringSmallStringFt) (smallStringt *self, char olds, smallStringt *news, size_t max);
176 
195 typedef smallStringt* (*replaceManySmallStringFt)(smallStringt *self, const char *paramType, ...);
196 
212 typedef smallStringt* (*icReplaceSmallStringFt) (smallStringt *self, const char *olds, const char *news, size_t max);
213 typedef smallStringt* (*icReplaceCharSSmallStringFt) (smallStringt *self, char olds, const char *news, size_t max);
214 typedef smallStringt* (*icReplaceSCharSmallStringFt) (smallStringt *self, const char *olds, char news, size_t max);
215 typedef smallStringt* (*icReplaceCharCharSmallStringFt) (smallStringt *self, char olds, char news, size_t max);
216 typedef smallStringt* (*icReplaceSmallJsonSmallJsonSmallStringFt) (smallStringt *self, smallJsont *olds, smallJsont *news, size_t max);
217 typedef smallStringt* (*icReplaceSmallJsonSmallStringSmallStringFt) (smallStringt *self, smallJsont *olds, smallStringt *news, size_t max);
218 typedef smallStringt* (*icReplaceSmallJsonSSmallStringFt) (smallStringt *self, smallJsont *olds, const char *news, size_t max);
219 typedef smallStringt* (*icReplaceSmallJsonCharSmallStringFt) (smallStringt *self, smallJsont *olds, char news, size_t max);
220 typedef smallStringt* (*icReplaceSmallStringSmallJsonSmallStringFt) (smallStringt *self, smallStringt *olds, smallJsont *news, size_t max);
221 typedef smallStringt* (*icReplaceSmallStringSmallStringSmallStringFt)(smallStringt *self, smallStringt *olds, smallStringt *news, size_t max);
222 typedef smallStringt* (*icReplaceSmallStringSSmallStringFt) (smallStringt *self, smallStringt *olds, const char *news, size_t max);
223 typedef smallStringt* (*icReplaceSmallStringCharSmallStringFt) (smallStringt *self, smallStringt *olds, char news, size_t max);
224 typedef smallStringt* (*icReplaceSSmallJsonSmallStringFt) (smallStringt *self, const char *olds, smallJsont *news, size_t max);
225 typedef smallStringt* (*icReplaceSSmallStringSmallStringFt) (smallStringt *self, const char *olds, smallStringt *news, size_t max);
226 typedef smallStringt* (*icReplaceCharSmallJsonSmallStringFt) (smallStringt *self, char olds, smallJsont *news, size_t max);
227 typedef smallStringt* (*icReplaceCharSmallStringSmallStringFt) (smallStringt *self, char olds, smallStringt *news, size_t max);
228 
247 typedef smallStringt* (*icReplaceManySmallStringFt)(smallStringt *self, const char *paramType, ...);
248 
259 typedef bool (*equalSmallStringFt) (smallStringt *self, smallStringt *string);
260 
271 typedef bool (*equalSSmallStringFt) (smallStringt *self, const char *string);
272 typedef bool (*equalCharSmallStringFt) (smallStringt *self, char c);
273 
274 typedef bool (*equalSmallStringBaseFt) (smallStringt* self, baset* p2);
275 typedef bool (*equalSmallStringBoolFt) (smallStringt* self, bool p2);
276 typedef bool (*equalSmallStringDoubleFt) (smallStringt* self, double p2);
277 typedef bool (*equalSmallStringInt64Ft) (smallStringt* self, int64_t p2);
278 typedef bool (*equalSmallStringInt32Ft) (smallStringt* self, int32_t p2);
279 typedef bool (*equalSmallStringUint32Ft) (smallStringt* self, uint32_t p2);
280 typedef bool (*equalSmallStringUint64Ft) (smallStringt* self, uint64_t p2);
286 
287 
298 typedef bool (*icEqualSmallStringFt) (smallStringt *self, smallStringt *string);
299 
310 typedef bool (*icEqualSSmallStringFt) (smallStringt *self, const char *string);
311 typedef bool (*icEqualCharSmallStringFt) (smallStringt *self, char c);
312 
313 typedef bool (*icEqualSmallStringBaseFt) (smallStringt* self, baset* p2);
315 
326 typedef bool (*equalISSmallStringFt) (smallStringt *self, const char *string, int64_t index);
327 typedef bool (*equalICharSmallStringFt) (smallStringt *self, char c, int64_t index);
328 typedef bool (*equalISmallJsonSmallStringFt) (smallStringt *self, smallJsont *string, int64_t index);
329 typedef bool (*equalISmallStringSmallStringFt)(smallStringt *self, smallStringt *string, int64_t index);
330 
341 typedef bool (*startsWithSSmallStringFt) (smallStringt *self, const char *string);
342 typedef bool (*startsWithCharSmallStringFt) (smallStringt *self, char c);
345 
356 typedef bool (*endsWithSSmallStringFt) (smallStringt *self, const char *string);
357 typedef bool (*endsWithCharSmallStringFt) (smallStringt *self, char c);
358 typedef bool (*endsWithSmallJsonSmallStringFt) (smallStringt *self, smallJsont *string);
360 
376 typedef ssize_t (*countSSmallStringFt) (smallStringt *self, const char *string);
377 typedef ssize_t (*countCharSmallStringFt) (smallStringt *self, char c);
378 typedef ssize_t (*countSmallJsonSmallStringFt) (smallStringt *self, smallJsont *string);
379 typedef ssize_t (*countSmallStringSmallStringFt)(smallStringt *self, smallStringt *string);
380 
391 typedef bool (*icStartsWithSSmallStringFt) (smallStringt *self, const char *string);
392 typedef bool (*icStartsWithCharSmallStringFt) (smallStringt *self, char c);
395 
406 typedef bool (*icEndsWithSSmallStringFt) (smallStringt *self, const char *string);
407 typedef bool (*icEndsWithCharSmallStringFt) (smallStringt *self, char c);
410 
426 typedef ssize_t (*icCountSSmallStringFt) (smallStringt *self, const char *string);
427 typedef ssize_t (*icCountCharSmallStringFt) (smallStringt *self, char c);
428 typedef ssize_t (*icCountSmallJsonSmallStringFt) (smallStringt *self, smallJsont *string);
429 typedef ssize_t (*icCountSmallStringSmallStringFt)(smallStringt *self, smallStringt *string);
430 
443 typedef bool (*isNumberSmallStringFt) (smallStringt *self);
444 
454 typedef bool (*isIntSmallStringFt) (smallStringt *self);
455 
464 typedef int64_t (*parseIntSmallStringFt) (smallStringt *self);
465 
473 typedef double (*parseDoubleSmallStringFt) (smallStringt *self);
474 
483 typedef smallStringt* (*intToSmallStringFt) (smallStringt *self, int64_t n);
484 
493 typedef smallStringt* (*doubleToSmallStringFt) (smallStringt *self, double n);
494 
500 typedef size_t (*lenSmallStringFt) (smallStringt *self);
501 
505 typedef smallStringt* (*upperSmallStringFt) (smallStringt *self);
506 
510 typedef smallStringt* (*lowerSmallStringFt) (smallStringt *self);
511 
515 typedef smallStringt* (*trimSmallStringFt) (smallStringt *self);
516 typedef smallStringt* (*lTrimSmallStringFt) (smallStringt *self);
517 typedef smallStringt* (*rTrimSmallStringFt) (smallStringt *self);
518 
532 typedef smallStringt* (*uniqSmallStringFt) (smallStringt *self, char c);
533 
547 typedef smallStringt* (*icUniqSmallStringFt) (smallStringt *self, char c);
548 
552 typedef char (*getAtSmallStringFt) (smallStringt *self, int64_t index);
553 
557 typedef smallStringt* (*setAtSmallStringFt) (smallStringt *self, int64_t index, char c);
558 
573 typedef smallStringt* (*sliceSmallStringFt) (smallStringt *self, int64_t start, int64_t end);
574 
592 typedef smallStringt* (*cropSmallStringFt)(smallStringt *self, int64_t start, int64_t end);
593 typedef char* (*cropSSmallStringFt)(smallStringt *self, int64_t start, int64_t end);
594 typedef smallJsont* (*cropSmallJsonSmallStringFt)(smallStringt *self, int64_t start, int64_t end);
595 
596 
610 typedef char (*cropElemSmallStringFt)(smallStringt *self, int64_t index);
611 
612 
626 typedef smallStringt* (*copySmallStringFt) (smallStringt *self, int64_t start, int64_t end);
627 
643 typedef smallStringt* (*insertSmallStringFt) (smallStringt *self, int64_t index, smallStringt *toInsert);
644 typedef smallStringt* (*insertSmallJsonSmallStringFt) (smallStringt *self, int64_t index, smallJsont *toInsert);
645 typedef smallStringt* (*insertSSmallStringFt) (smallStringt *self, int64_t index, const char *toInsert);
646 typedef smallStringt* (*insertNFreeSmallStringFt) (smallStringt *self, int64_t index, smallStringt *toInsert);
647 typedef smallStringt* (*insertNFreeSmallJsonSmallStringFt)(smallStringt *self, int64_t index, smallJsont *toInsert);
648 typedef smallStringt* (*insertSNFreeSmallStringFt) (smallStringt *self, int64_t index, char *toInsert);
649 
665 typedef smallStringt* (*injectSmallStringFt) (smallStringt *self, int64_t index, char toInject);
666 
683 typedef smallStringt* (*delSmallStringFt) (smallStringt *self, int64_t start, int64_t end);
684 typedef smallStringt* (*delElemSmallStringFt) (smallStringt *self, int64_t index);
685 
696 typedef char* (*hasSmallStringFt) (smallStringt *self, const char *needle);
697 typedef char* (*hasCharSmallStringFt) (smallStringt *self, char c);
698 typedef char* (*hasSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
699 typedef char* (*hasSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle);
700 
711 typedef smallStringt* (*findSmallStringFt) (smallStringt *self, const char *needle);
712 typedef smallStringt* (*findCharSmallStringFt) (smallStringt *self, char c);
713 typedef smallStringt* (*findSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
714 typedef smallStringt* (*findSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle);
715 
726 typedef ssize_t (*indexOfSmallStringFt) (smallStringt *self, const char *needle);
727 typedef ssize_t (*indexOfCharSmallStringFt) (smallStringt *self, char c);
728 typedef ssize_t (*indexOfSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
729 typedef ssize_t (*indexOfSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle);
730 
741 typedef char* (*icHasSmallStringFt) (smallStringt *self, const char *needle);
742 typedef char* (*icHasCharSmallStringFt) (smallStringt *self, char c);
743 typedef char* (*icHasSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
744 typedef char* (*icHasSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle);
745 
756 typedef smallStringt* (*icFindSmallStringFt) (smallStringt *self, const char *needle);
757 typedef smallStringt* (*icFindCharSmallStringFt) (smallStringt *self, char c);
758 typedef smallStringt* (*icFindSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
759 typedef smallStringt* (*icFindSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle);
760 
771 typedef ssize_t (*icIndexOfSmallStringFt) (smallStringt *self, const char *needle);
772 typedef ssize_t (*icIndexOfCharSmallStringFt) (smallStringt *self, char c);
773 typedef ssize_t (*icIndexOfSmallJsonSmallStringFt) (smallStringt *self, smallJsont *needle);
775 
781 typedef smallStringt* (*emptySmallStringFt) (smallStringt *self);
782 
791 typedef bool (*isEmptySmallStringFt) (smallStringt *self);
792 
802 typedef bool (*isBlankSmallStringFt) (smallStringt *self);
803 
814 typedef smallArrayt* (*splitSmallStringFt) (smallStringt *self, const char *delim);
815 typedef smallArrayt* (*splitCharSmallStringFt) (smallStringt *self, char c);
816 typedef smallArrayt* (*splitSmallJsonSmallStringFt) (smallStringt *self, smallJsont *delim);
817 typedef smallArrayt* (*splitSmallStringSmallStringFt)(smallStringt *self, smallStringt *delim);
818 
829 typedef char** (*splitSSmallStringFt) (smallStringt *self, const char *delim);
830 typedef char** (*splitCharSSmallStringFt) (smallStringt *self, char c);
831 typedef char** (*splitSmallJsonSSmallStringFt) (smallStringt *self, smallJsont *delim);
832 typedef char** (*splitSmallStringSSmallStringFt)(smallStringt *self, smallStringt *delim);
833 
846 typedef smallArrayt* (*extractSmallStringFt) (smallStringt *self, const char* delim1, const char* delim2);
847 typedef smallArrayt* (*extractCharSSmallStringFt) (smallStringt *self, char delim1, const char* delim2);
848 typedef smallArrayt* (*extractSCharSmallStringFt) (smallStringt *self, const char* delim1, char delim2);
849 typedef smallArrayt* (*extractCharCharSmallStringFt)(smallStringt *self, char delim1, char delim2);
850 typedef smallArrayt* (*extractSmallJsonSmallJsonSmallStringFt) (smallStringt *self, smallJsont* delim1, smallJsont* delim2);
851 typedef smallArrayt* (*extractSmallJsonSmallStringSmallStringFt) (smallStringt *self, smallJsont* delim1, smallStringt* delim2);
852 typedef smallArrayt* (*extractSmallJsonSSmallStringFt) (smallStringt *self, smallJsont* delim1, const char* delim2);
853 typedef smallArrayt* (*extractSmallJsonCharSmallStringFt) (smallStringt *self, smallJsont* delim1, char delim2);
854 typedef smallArrayt* (*extractSmallStringSmallJsonSmallStringFt) (smallStringt *self, smallStringt* delim1, smallJsont* delim2);
855 typedef smallArrayt* (*extractSmallStringSmallStringSmallStringFt)(smallStringt *self, smallStringt* delim1, smallStringt* delim2);
856 typedef smallArrayt* (*extractSmallStringSSmallStringFt) (smallStringt *self, smallStringt* delim1, const char* delim2);
857 typedef smallArrayt* (*extractSmallStringCharSmallStringFt) (smallStringt *self, smallStringt* delim1, char delim2);
858 typedef smallArrayt* (*extractSSmallJsonSmallStringFt) (smallStringt *self, const char* delim1, smallJsont* delim2);
859 typedef smallArrayt* (*extractSSmallStringSmallStringFt) (smallStringt *self, const char* delim1, smallStringt* delim2);
860 typedef smallArrayt* (*extractCharSmallJsonSmallStringFt) (smallStringt *self, char delim1, smallJsont* delim2);
861 typedef smallArrayt* (*extractCharSmallStringSmallStringFt) (smallStringt *self, char delim1, smallStringt* delim2);
862 
873 typedef smallArrayt* (*icSplitSmallStringFt) (smallStringt *self, const char *delim);
874 typedef smallArrayt* (*icSplitCharSmallStringFt) (smallStringt *self, char c);
875 typedef smallArrayt* (*icSplitSmallJsonSmallStringFt) (smallStringt *self, smallJsont *delim);
876 typedef smallArrayt* (*icSplitSmallStringSmallStringFt)(smallStringt *self, smallStringt *delim);
877 
888 typedef char** (*icSplitSSmallStringFt) (smallStringt *self, const char *delim);
889 typedef char** (*icSplitCharSSmallStringFt) (smallStringt *self, char c);
890 typedef char** (*icSplitSmallJsonSSmallStringFt) (smallStringt *self, smallJsont *delim);
891 typedef char** (*icSplitSmallStringSSmallStringFt)(smallStringt *self, smallStringt *delim);
892 
905 typedef smallArrayt* (*icExtractSmallStringFt) (smallStringt *self, const char* delim1, const char* delim2);
906 typedef smallArrayt* (*icExtractCharSSmallStringFt) (smallStringt *self, char delim1, const char* delim2);
907 typedef smallArrayt* (*icExtractSCharSmallStringFt) (smallStringt *self, const char* delim1, char delim2);
908 typedef smallArrayt* (*icExtractCharCharSmallStringFt)(smallStringt *self, char delim1, char delim2);
909 typedef smallArrayt* (*icExtractSmallJsonSmallJsonSmallStringFt) (smallStringt *self, smallJsont* delim1, smallJsont* delim2);
910 typedef smallArrayt* (*icExtractSmallJsonSmallStringSmallStringFt) (smallStringt *self, smallJsont* delim1, smallStringt* delim2);
911 typedef smallArrayt* (*icExtractSmallJsonSSmallStringFt) (smallStringt *self, smallJsont* delim1, const char* delim2);
912 typedef smallArrayt* (*icExtractSmallJsonCharSmallStringFt) (smallStringt *self, smallJsont* delim1, char delim2);
913 typedef smallArrayt* (*icExtractSmallStringSmallJsonSmallStringFt) (smallStringt *self, smallStringt* delim1, smallJsont* delim2);
914 typedef smallArrayt* (*icExtractSmallStringSmallStringSmallStringFt)(smallStringt *self, smallStringt* delim1, smallStringt* delim2);
915 typedef smallArrayt* (*icExtractSmallStringSSmallStringFt) (smallStringt *self, smallStringt* delim1, const char* delim2);
916 typedef smallArrayt* (*icExtractSmallStringCharSmallStringFt) (smallStringt *self, smallStringt* delim1, char delim2);
917 typedef smallArrayt* (*icExtractSSmallJsonSmallStringFt) (smallStringt *self, const char* delim1, smallJsont* delim2);
918 typedef smallArrayt* (*icExtractSSmallStringSmallStringFt) (smallStringt *self, const char* delim1, smallStringt* delim2);
919 typedef smallArrayt* (*icExtractCharSmallJsonSmallStringFt) (smallStringt *self, char delim1, smallJsont* delim2);
920 typedef smallArrayt* (*icExtractCharSmallStringSmallStringFt) (smallStringt *self, char delim1, smallStringt* delim2);
921 
931 typedef smallStringt* (*colorSmallStringFt) (smallStringt *self, const char *colr);
932 
944 typedef char* (*colordSmallStringFt) (smallStringt *self, const char *color);
945 
957 typedef smallStringt* (*readFileSmallStringFt)(smallStringt *self, const char *filePath);
958 typedef smallStringt* (*readFileSmallJsonSmallStringFt)(smallStringt *self, smallJsont *filePath);
959 typedef smallStringt* (*readFileSmallStringSmallStringFt)(smallStringt *self, smallStringt *filePath);
960 typedef smallStringt* (*readStreamSmallStringFt)(smallStringt *self, FILE *fp);
961 
972 typedef int (*writeFileSmallStringFt)(smallStringt *self, const char *filePath);
973 typedef int (*writeFileSmallJsonSmallStringFt)(smallStringt *self, smallJsont *filePath);
975 typedef int (*writeStreamSmallStringFt)(smallStringt *self, FILE *fp);
976 
987 typedef int (*appendFileSmallStringFt)(smallStringt *self, const char *filePath);
989 
1007 #define SMALLSTRINGFUNCTIONST \
1008  helpSmallStringFt help;\
1009  escapeSmallStringFt escape;\
1010  getSmallStringFt get;\
1011  setSmallStringFt set;\
1012  setBoolSmallStringFt setBool;\
1013  setDoubleSmallStringFt setDouble;\
1014  setInt64SmallStringFt setInt64;\
1015  setInt32SmallStringFt setInt32;\
1016  setUint32SmallStringFt setUint32;\
1017  setUint64SmallStringFt setUint64;\
1018  setSmallArraySmallStringFt setSmallArray;\
1019  setCharSmallStringFt setChar;\
1020  setFromSmallDictSmallStringFt setFromSmallDict;\
1021  setFromSmallJsonSmallStringFt setFromSmallJson;\
1022  setSmallBoolSmallStringFt setSmallBool;\
1023  setSmallDoubleSmallStringFt setSmallDouble;\
1024  setSmallIntSmallStringFt setSmallInt;\
1025  setSmallJsonSmallStringFt setSmallJson;\
1026  setSmallStringSmallStringFt setSmallString;\
1027  setNFreeSmallStringFt setNFree;\
1028  appendSmallStringFt append;\
1029  appendSmallJsonSmallStringFt appendSmallJson;\
1030  appendSSmallStringFt appendS;\
1031  appendNSmashSmallStringFt appendNSmash;\
1032  appendNSmashSmallJsonSmallStringFt appendNSmashSmallJson;\
1033  appendNSmashSSmallStringFt appendNSmashS;\
1034  appendCharSmallStringFt appendChar;\
1035  appendSSmallStringFt push;\
1036  catSmallStringFt pushMany;\
1037  catSSmallStringFt pushManyS;\
1038  pushNFreeManySmallStringFt pushNFreeMany;\
1039  pushNFreeManySSmallStringFt pushNFreeManyS;\
1040  prependSmallStringFt prepend;\
1041  prependSmallJsonSmallStringFt prependSmallJson;\
1042  prependSSmallStringFt prependS;\
1043  prependCharSmallStringFt prependChar;\
1044  prependNSmashSmallStringFt prependNSmash;\
1045  prependNSmashSmallJsonSmallStringFt prependNSmashSmallJson;\
1046  prependNSmashSSmallStringFt prependNSmashS;\
1047  catSmallStringFt cat;\
1048  catSSmallStringFt catSt;\
1049  replaceSmallStringFt replace;\
1050  replaceCharSSmallStringFt replaceCharS;\
1051  replaceSCharSmallStringFt replaceSChar;\
1052  replaceCharCharSmallStringFt replaceCharChar;\
1053  replaceSmallJsonSmallJsonSmallStringFt replaceSmallJsonSmallJson;\
1054  replaceSmallJsonSmallStringSmallStringFt replaceSmallJsonSmallString;\
1055  replaceSmallJsonSSmallStringFt replaceSmallJsonS;\
1056  replaceSmallJsonCharSmallStringFt replaceSmallJsonChar;\
1057  replaceSmallStringSmallJsonSmallStringFt replaceSmallStringSmallJson;\
1058  replaceSmallStringSmallStringSmallStringFt replaceSmallStringSmallString;\
1059  replaceSmallStringSSmallStringFt replaceSmallStringS;\
1060  replaceSmallStringCharSmallStringFt replaceSmallStringChar;\
1061  replaceSSmallJsonSmallStringFt replaceSSmallJson;\
1062  replaceSSmallStringSmallStringFt replaceSSmallString;\
1063  replaceCharSmallJsonSmallStringFt replaceCharSmallJson;\
1064  replaceCharSmallStringSmallStringFt replaceCharSmallString;\
1065  replaceManySmallStringFt replaceMany;\
1066  icReplaceSmallStringFt icReplace;\
1067  icReplaceCharSSmallStringFt icReplaceCharS;\
1068  icReplaceSCharSmallStringFt icReplaceSChar;\
1069  icReplaceCharCharSmallStringFt icReplaceCharChar;\
1070  icReplaceSmallJsonSmallJsonSmallStringFt icReplaceSmallJsonSmallJson;\
1071  icReplaceSmallJsonSmallStringSmallStringFt icReplaceSmallJsonSmallString;\
1072  icReplaceSmallJsonSSmallStringFt icReplaceSmallJsonS;\
1073  icReplaceSmallJsonCharSmallStringFt icReplaceSmallJsonChar;\
1074  icReplaceSmallStringSmallJsonSmallStringFt icReplaceSmallStringSmallJson;\
1075  icReplaceSmallStringSmallStringSmallStringFt icReplaceSmallStringSmallString;\
1076  icReplaceSmallStringSSmallStringFt icReplaceSmallStringS;\
1077  icReplaceSmallStringCharSmallStringFt icReplaceSmallStringChar;\
1078  icReplaceSSmallJsonSmallStringFt icReplaceSSmallJson;\
1079  icReplaceSSmallStringSmallStringFt icReplaceSSmallString;\
1080  icReplaceCharSmallJsonSmallStringFt icReplaceCharSmallJson;\
1081  icReplaceCharSmallStringSmallStringFt icReplaceCharSmallString;\
1082  icReplaceManySmallStringFt icReplaceMany;\
1083  equalSmallStringFt equal;\
1084  equalSSmallStringFt equalS;\
1085  equalCharSmallStringFt equalChar;\
1086  equalSmallStringBaseFt equalBase;\
1087  equalSmallStringBoolFt equalBool;\
1088  equalSmallStringDoubleFt equalDouble;\
1089  equalSmallStringInt64Ft equalInt64;\
1090  equalSmallStringInt32Ft equalInt32;\
1091  equalSmallStringUint32Ft equalUint32;\
1092  equalSmallStringUint64Ft equalUint64;\
1093  equalSmallStringSmallBoolFt equalSmallBool;\
1094  equalSmallStringSmallBytesFt equalSmallBytes;\
1095  equalSmallStringSmallDoubleFt equalSmallDouble;\
1096  equalSmallStringSmallIntFt equalSmallInt;\
1097  equalSmallStringSmallJsonFt equalSmallJson;\
1098  icEqualSmallStringFt icEqual;\
1099  icEqualSSmallStringFt icEqualS;\
1100  icEqualCharSmallStringFt icEqualChar;\
1101  icEqualSmallStringBaseFt icEqualBase;\
1102  icEqualSmallStringSmallJsonFt icEqualSmallJson;\
1103  equalISSmallStringFt equalIS;\
1104  equalICharSmallStringFt equalIChar;\
1105  equalISmallJsonSmallStringFt equalISmallJson;\
1106  equalISmallStringSmallStringFt equalISmallString;\
1107  startsWithSSmallStringFt startsWithS;\
1108  startsWithCharSmallStringFt startsWithChar;\
1109  startsWithSmallJsonSmallStringFt startsWithSmallJson;\
1110  startsWithSmallStringSmallStringFt startsWithSmallString;\
1111  endsWithSSmallStringFt endsWithS;\
1112  endsWithCharSmallStringFt endsWithChar;\
1113  endsWithSmallJsonSmallStringFt endsWithSmallJson;\
1114  endsWithSmallStringSmallStringFt endsWithSmallString;\
1115  countSSmallStringFt countS;\
1116  countCharSmallStringFt countChar;\
1117  countSmallJsonSmallStringFt countSmallJson;\
1118  countSmallStringSmallStringFt countSmallString;\
1119  icStartsWithSSmallStringFt icStartsWithS;\
1120  icStartsWithCharSmallStringFt icStartsWithChar;\
1121  icStartsWithSmallJsonSmallStringFt icStartsWithSmallJson;\
1122  icStartsWithSmallStringSmallStringFt icStartsWithSmallString;\
1123  icEndsWithSSmallStringFt icEndsWithS;\
1124  icEndsWithCharSmallStringFt icEndsWithChar;\
1125  icEndsWithSmallJsonSmallStringFt icEndsWithSmallJson;\
1126  icEndsWithSmallStringSmallStringFt icEndsWithSmallString;\
1127  icCountSSmallStringFt icCountS;\
1128  icCountCharSmallStringFt icCountChar;\
1129  icCountSmallJsonSmallStringFt icCountSmallJson;\
1130  icCountSmallStringSmallStringFt icCountSmallString;\
1131  isNumberSmallStringFt isNumber;\
1132  isIntSmallStringFt isInt;\
1133  parseIntSmallStringFt parseInt;\
1134  parseDoubleSmallStringFt parseDouble;\
1135  intToSmallStringFt intTo;\
1136  doubleToSmallStringFt doubleTo;\
1137  lenSmallStringFt len;\
1138  upperSmallStringFt upper;\
1139  lowerSmallStringFt lower;\
1140  trimSmallStringFt trim;\
1141  lTrimSmallStringFt lTrim;\
1142  rTrimSmallStringFt rTrim;\
1143  uniqSmallStringFt uniq;\
1144  icUniqSmallStringFt icUniq;\
1145  getAtSmallStringFt getAt;\
1146  setAtSmallStringFt setAt;\
1147  sliceSmallStringFt slice;\
1148  cropSmallStringFt crop;\
1149  cropSSmallStringFt cropS;\
1150  cropSmallJsonSmallStringFt cropSmallJson;\
1151  cropElemSmallStringFt cropElem;\
1152  copySmallStringFt copy;\
1153  insertSmallStringFt insert;\
1154  insertSmallJsonSmallStringFt insertSmallJson;\
1155  insertSSmallStringFt insertS;\
1156  insertNFreeSmallJsonSmallStringFt insertNFreeSmallJson;\
1157  insertNFreeSmallStringFt insertNFree;\
1158  insertSNFreeSmallStringFt insertSNFree;\
1159  injectSmallStringFt inject;\
1160  delSmallStringFt del;\
1161  delElemSmallStringFt delElem;\
1162  hasSmallStringFt has;\
1163  hasCharSmallStringFt hasChar;\
1164  hasSmallJsonSmallStringFt hasSmallJson;\
1165  hasSmallStringSmallStringFt hasSmallString;\
1166  findSmallStringFt find;\
1167  findCharSmallStringFt findChar;\
1168  findSmallJsonSmallStringFt findSmallJson;\
1169  findSmallStringSmallStringFt findSmallString;\
1170  indexOfSmallStringFt indexOf;\
1171  indexOfCharSmallStringFt indexOfChar;\
1172  indexOfSmallJsonSmallStringFt indexOfSmallJson;\
1173  indexOfSmallStringSmallStringFt indexOfSmallString;\
1174  icHasSmallStringFt icHas;\
1175  icHasCharSmallStringFt icHasChar;\
1176  icHasSmallJsonSmallStringFt icHasSmallJson;\
1177  icHasSmallStringSmallStringFt icHasSmallString;\
1178  icFindSmallStringFt icFind;\
1179  icFindCharSmallStringFt icFindChar;\
1180  icFindSmallJsonSmallStringFt icFindSmallJson;\
1181  icFindSmallStringSmallStringFt icFindSmallString;\
1182  icIndexOfSmallStringFt icIndexOf;\
1183  icIndexOfCharSmallStringFt icIndexOfChar;\
1184  icIndexOfSmallJsonSmallStringFt icIndexOfSmallJson;\
1185  icIndexOfSmallStringSmallStringFt icIndexOfSmallString;\
1186  emptySmallStringFt empty;\
1187  isEmptySmallStringFt isEmpty;\
1188  isBlankSmallStringFt isBlank;\
1189  splitSmallStringFt split;\
1190  splitCharSmallStringFt splitChar;\
1191  splitSmallJsonSmallStringFt splitSmallJson;\
1192  splitSmallStringSmallStringFt splitSmallString;\
1193  splitSSmallStringFt splitS;\
1194  splitCharSSmallStringFt splitCharS;\
1195  splitSmallJsonSSmallStringFt splitSmallJsonS;\
1196  splitSmallStringSSmallStringFt splitSmallStringS;\
1197  extractSmallStringFt extract;\
1198  extractCharSSmallStringFt extractCharS;\
1199  extractSCharSmallStringFt extractSChar;\
1200  extractCharCharSmallStringFt extractCharChar;\
1201  extractSmallJsonSmallJsonSmallStringFt extractSmallJsonSmallJson;\
1202  extractSmallJsonSmallStringSmallStringFt extractSmallJsonSmallString;\
1203  extractSmallJsonSSmallStringFt extractSmallJsonS;\
1204  extractSmallJsonCharSmallStringFt extractSmallJsonChar;\
1205  extractSmallStringSmallJsonSmallStringFt extractSmallStringSmallJson;\
1206  extractSmallStringSmallStringSmallStringFt extractSmallStringSmallString;\
1207  extractSmallStringSSmallStringFt extractSmallStringS;\
1208  extractSmallStringCharSmallStringFt extractSmallStringChar;\
1209  extractSSmallJsonSmallStringFt extractSSmallJson;\
1210  extractSSmallStringSmallStringFt extractSSmallString;\
1211  extractCharSmallJsonSmallStringFt extractCharSmallJson;\
1212  extractCharSmallStringSmallStringFt extractCharSmallString;\
1213  icSplitSmallStringFt icSplit;\
1214  icSplitCharSmallStringFt icSplitChar;\
1215  icSplitSmallJsonSmallStringFt icSplitSmallJson;\
1216  icSplitSmallStringSmallStringFt icSplitSmallString;\
1217  icSplitSSmallStringFt icSplitS;\
1218  icSplitCharSSmallStringFt icSplitCharS;\
1219  icSplitSmallJsonSSmallStringFt icSplitSmallJsonS;\
1220  icSplitSmallStringSSmallStringFt icSplitSmallStringS;\
1221  icExtractSmallStringFt icExtract;\
1222  icExtractCharSSmallStringFt icExtractCharS;\
1223  icExtractSCharSmallStringFt icExtractSChar;\
1224  icExtractCharCharSmallStringFt icExtractCharChar;\
1225  icExtractSmallJsonSmallJsonSmallStringFt icExtractSmallJsonSmallJson;\
1226  icExtractSmallJsonSmallStringSmallStringFt icExtractSmallJsonSmallString;\
1227  icExtractSmallJsonSSmallStringFt icExtractSmallJsonS;\
1228  icExtractSmallJsonCharSmallStringFt icExtractSmallJsonChar;\
1229  icExtractSmallStringSmallJsonSmallStringFt icExtractSmallStringSmallJson;\
1230  icExtractSmallStringSmallStringSmallStringFt icExtractSmallStringSmallString;\
1231  icExtractSmallStringSSmallStringFt icExtractSmallStringS;\
1232  icExtractSmallStringCharSmallStringFt icExtractSmallStringChar;\
1233  icExtractSSmallJsonSmallStringFt icExtractSSmallJson;\
1234  icExtractSSmallStringSmallStringFt icExtractSSmallString;\
1235  icExtractCharSmallJsonSmallStringFt icExtractCharSmallJson;\
1236  icExtractCharSmallStringSmallStringFt icExtractCharSmallString;\
1237  colorSmallStringFt color;\
1238  colordSmallStringFt colord;\
1239  readFileSmallStringFt readFile;\
1240  readFileSmallJsonSmallStringFt readFileSmallJson;\
1241  readFileSmallStringSmallStringFt readFileSmallString;\
1242  readStreamSmallStringFt readStream;\
1243  writeFileSmallStringFt writeFile;\
1244  writeFileSmallJsonSmallStringFt writeFileSmallJson;\
1245  writeFileSmallStringSmallStringFt writeFileSmallString;\
1246  writeStreamSmallStringFt writeStream;\
1247  appendFileSmallStringFt appendFile;\
1248  appendFileSmallStringSmallStringFt appendFileSmallString
1249 
1250 typedef struct {
1259 
1263 struct smallString {
1264  const char *type;
1266 
1267  // internal
1269  size_t _len;
1270 };
1271 
1272 // base
1273 
1274 #define createSmallString(obj) ;smallStringt obj; initiateSmallString(&obj)
1275 #define createAllocateSmallString(obj) ;smallStringt *obj; initiateAllocateSmallString(&obj)
1276 
1277 void initiateSmallString(smallStringt *self);
1279 void finalizeRecycleSmallString(void *arg UNUSED);
1280 void finalizeSmallString(void);
1281 
1282 // initialize class methods, call registerMethodsSmallString from classes inheriting this class
1284 
1285 smallStringt* allocSmallString(const char *string);
1286 
1287 // terminate smallStringt val when it is out of scope
1289 
1290 // free smallStringt local val when it is out of scope
1292 
1293 // free smallStringt val when it is out of scope
1295 
1296 // finish smallStringt val when it is out of scope
1298 
1302 #define cleanSmallStringP(name) smallStringt *name CLEANUP(cleanUpSmallStringTerminateG)
1303 
1307 #define cleanAllocateSmallString(obj) ;cleanSmallStringP(obj); initiateAllocateSmallString(&obj)
1308 
1312 #define cleanSmallString(name) smallStringt name CLEANUP(cleanUpSmallStringFreeLocalG); initiateSmallString(&name)
1313 
1317 #define cleanFreeSmallString(name) smallStringt *name CLEANUP(cleanUpSmallStringFreeG)
1318 
1322 #define cleanFinishSmallStringP(name) smallStringt *name CLEANUP(cleanUpSmallStringFinishG)
1323 
1328 smallStringt* createSF(const char *paramType, ...);
1329 #define createS(...) createSF("", __VA_ARGS__, NULL)
1330 
1332 
1333 void freeSmallStringG (smallStringt *self);
1334 
1336 smallStringt* setDoubleSmallStringG (smallStringt* self, double p2);
1337 smallStringt* setInt64SmallStringG (smallStringt* self, int64_t p2);
1338 smallStringt* setInt32SmallStringG (smallStringt* self, int32_t p2);
1339 smallStringt* setUint32SmallStringG (smallStringt* self, uint32_t p2);
1340 smallStringt* setUint64SmallStringG (smallStringt* self, uint64_t p2);
1342 smallStringt* setSmallStringG (smallStringt* self, const char* p2);
1351 
1352 char getAtSmallStringG (smallStringt *self, char retType UNUSED, int64_t index);
1353 smallStringt* setAtSmallStringG (smallStringt *self, int64_t index, char c);
1354 
1357 smallStringt* appendSSmallStringG (smallStringt *self, const char *string);
1361 smallStringt* appendNSmashSSmallStringG (smallStringt *self, char *string);
1362 
1365 smallStringt* prependSSmallStringG (smallStringt *self, const char *string);
1370 smallStringt* replaceSmallStringG (smallStringt *self, const char *olds, const char *news, size_t max);
1371 smallStringt* replaceCharSSmallStringG (smallStringt *self, char olds, const char *news, size_t max);
1372 smallStringt* replaceSCharSmallStringG (smallStringt *self, const char *olds, char news, size_t max);
1373 smallStringt* replaceCharCharSmallStringG(smallStringt *self, char olds, char news, size_t max);
1376 smallStringt* replaceSmallJsonSSmallStringG(smallStringt *self, smallJsont *olds, const char *news, size_t max);
1377 smallStringt* replaceSmallJsonCharSmallStringG(smallStringt *self, smallJsont *olds, char news, size_t max);
1380 smallStringt* replaceSmallStringSSmallStringG(smallStringt *self, smallStringt *olds, const char *news, size_t max);
1381 smallStringt* replaceSmallStringCharSmallStringG(smallStringt *self, smallStringt *olds, char news, size_t max);
1382 smallStringt* replaceSSmallJsonSmallStringG(smallStringt *self, const char *olds, smallJsont *news, size_t max);
1383 smallStringt* replaceSSmallStringSmallStringG(smallStringt *self, const char *olds, smallStringt *news, size_t max);
1384 smallStringt* replaceCharSmallJsonSmallStringG(smallStringt *self, char olds, smallJsont *news, size_t max);
1385 smallStringt* replaceCharSmallStringSmallStringG(smallStringt *self, char olds, smallStringt *news, size_t max);
1386 smallStringt* icReplaceSmallStringG (smallStringt *self, const char *olds, const char *news, size_t max);
1387 smallStringt* icReplaceCharSSmallStringG(smallStringt *self, char olds, const char *news, size_t max);
1388 smallStringt* icReplaceSCharSmallStringG(smallStringt *self, const char *olds, char news, size_t max);
1389 smallStringt* icReplaceCharCharSmallStringG(smallStringt *self, char olds, char news, size_t max);
1392 smallStringt* icReplaceSmallJsonSSmallStringG(smallStringt *self, smallJsont *olds, const char *news, size_t max);
1393 smallStringt* icReplaceSmallJsonCharSmallStringG(smallStringt *self, smallJsont *olds, char news, size_t max);
1396 smallStringt* icReplaceSmallStringSSmallStringG(smallStringt *self, smallStringt *olds, const char *news, size_t max);
1397 smallStringt* icReplaceSmallStringCharSmallStringG(smallStringt *self, smallStringt *olds, char news, size_t max);
1398 smallStringt* icReplaceSSmallJsonSmallStringG(smallStringt *self, const char *olds, smallJsont *news, size_t max);
1399 smallStringt* icReplaceSSmallStringSmallStringG(smallStringt *self, const char *olds, smallStringt *news, size_t max);
1400 smallStringt* icReplaceCharSmallJsonSmallStringG(smallStringt *self, char olds, smallJsont *news, size_t max);
1401 smallStringt* icReplaceCharSmallStringSmallStringG(smallStringt *self, char olds, smallStringt *news, size_t max);
1402 bool equalSmallStringBaseG (smallStringt* self, baset* p2);
1403 bool equalSmallStringBoolG (smallStringt* self, bool p2);
1404 bool equalSmallStringDoubleG (smallStringt* self, double p2);
1405 bool equalSmallStringInt64G (smallStringt* self, int64_t p2);
1406 bool equalSmallStringInt32G (smallStringt* self, int32_t p2);
1407 bool equalSmallStringUint32G (smallStringt* self, uint32_t p2);
1408 bool equalSmallStringUint64G (smallStringt* self, uint64_t p2);
1414 bool equalSmallStringFG (smallStringt* self, smallStringt* p2);
1415 bool equalCharSmallStringG (smallStringt *self, char c);
1416 bool equalSSmallStringG (smallStringt *self, const char *string);
1417 bool icEqualSmallStringBaseG (smallStringt* self, baset* p2);
1420 bool icEqualCharSmallStringG (smallStringt *self, char c);
1421 bool icEqualSSmallStringG (smallStringt *self, const char *string);
1422 bool equalISSmallStringG (smallStringt *self, const char *string, int64_t index);
1423 bool equalICharSmallStringG (smallStringt *self, char c, int64_t index);
1424 bool equalISmallJsonSmallStringG(smallStringt *self, smallJsont *string, int64_t index);
1425 bool equalISmallStringSmallStringG(smallStringt *self, smallStringt *string, int64_t index);
1426 bool startsWithSSmallStringG (smallStringt *self, const char *string);
1427 bool startsWithCharSmallStringG (smallStringt *self, char c);
1430 bool endsWithSSmallStringG (smallStringt *self, const char *string);
1431 bool endsWithCharSmallStringG (smallStringt *self, char c);
1434 ssize_t countSSmallStringG (smallStringt *self, const char *string);
1435 ssize_t countCharSmallStringG (smallStringt *self, char c);
1436 ssize_t countSmallJsonSmallStringG (smallStringt *self, smallJsont *string);
1438 bool icStartsWithSSmallStringG (smallStringt *self, const char *string);
1439 bool icStartsWithCharSmallStringG (smallStringt *self, char c);
1442 bool icEndsWithSSmallStringG (smallStringt *self, const char *string);
1443 bool icEndsWithCharSmallStringG (smallStringt *self, char c);
1446 ssize_t icCountSSmallStringG (smallStringt *self, const char *string);
1447 ssize_t icCountCharSmallStringG (smallStringt *self, char c);
1448 ssize_t icCountSmallJsonSmallStringG (smallStringt *self, smallJsont *string);
1450 bool isNumberSmallStringG (smallStringt *self);
1451 bool isIntSmallStringG (smallStringt *self);
1452 int64_t parseIntSmallStringG (smallStringt *self);
1453 smallStringt* intToSmallStringG (smallStringt *self, int64_t n);
1454 double parseDoubleSmallStringG (smallStringt *self);
1456 size_t lenSmallStringG (smallStringt *self);
1464 smallStringt* sliceSmallStringG (smallStringt *self, int64_t start, int64_t end);
1465 smallStringt* cropSmallStringG (smallStringt *self, int64_t start, int64_t end);
1466 char* cropSSmallStringG (smallStringt *self, int64_t start, int64_t end);
1467 smallJsont* cropSmallJsonSmallStringG(smallStringt *self, int64_t start, int64_t end);
1468 char cropElemSmallStringG (smallStringt *self, int64_t index);
1469 smallStringt* copySmallStringG(smallStringt *self, int64_t start, int64_t end);
1470 smallStringt* insertSmallStringG (smallStringt *self, int64_t index, smallStringt *toInsert);
1471 smallStringt* insertSmallJsonSmallStringG (smallStringt *self, int64_t index, smallJsont *toInsert);
1472 smallStringt* insertSSmallStringG (smallStringt *self, int64_t index, const char *toInsert);
1473 smallStringt* insertNFreeSmallStringG (smallStringt *self, int64_t index, smallStringt *toInsert);
1474 smallStringt* insertNFreeSmallJsonSmallStringG(smallStringt *self, int64_t index, smallJsont *toInsert);
1475 smallStringt* insertSNFreeSmallStringG (smallStringt *self, int64_t index, char *toInsert);
1476 smallStringt* injectSmallStringG (smallStringt *self, int64_t index, char toInject);
1477 smallStringt* delSmallStringG (smallStringt *self, int64_t start, int64_t end);
1478 smallStringt* delElemSmallStringG (smallStringt *self, int64_t index);
1479 char* hasSmallStringG (smallStringt *self, const char *needle);
1480 char* hasCharSmallStringG (smallStringt *self, char c);
1481 char* hasSmallJsonSmallStringG (smallStringt *self, smallJsont *needle);
1483 smallStringt* findSmallStringG (smallStringt *self, const char *needle);
1487 ssize_t indexOfSmallStringG (smallStringt *self, const char *needle);
1488 ssize_t indexOfCharSmallStringG (smallStringt *self, char c);
1489 ssize_t indexOfSmallJsonSmallStringG (smallStringt *self, smallJsont *needle);
1491 char* icHasSmallStringG (smallStringt *self, const char *needle);
1492 char* icHasCharSmallStringG (smallStringt *self, char c);
1493 char* icHasSmallJsonSmallStringG (smallStringt *self, smallJsont *needle);
1495 smallStringt* icFindSmallStringG (smallStringt *self, const char *needle);
1499 ssize_t icIndexOfSmallStringG (smallStringt *self, const char *needle);
1500 ssize_t icIndexOfCharSmallStringG (smallStringt *self, char c);
1501 ssize_t icIndexOfSmallJsonSmallStringG (smallStringt *self, smallJsont *needle);
1504 bool isEmptySmallStringG (smallStringt *self);
1505 bool isBlankSmallStringG (smallStringt *self);
1506 smallArrayt* splitSmallStringG (smallStringt *self, const char *delim);
1510 char** splitCharPSSmallStringG (smallStringt *self, const char* delim);
1511 char** splitCharSSmallStringG (smallStringt *self, char c);
1512 char** splitSmallJsonSSmallStringG (smallStringt *self, smallJsont *delim);
1514 smallArrayt* extractSmallStringG(smallStringt *self, const char* delim1, const char* delim2);
1515 smallArrayt* extractCharSSmallStringG (smallStringt *self, char delim1, const char* delim2);
1516 smallArrayt* extractSCharSmallStringG (smallStringt *self, const char* delim1, char delim2);
1517 smallArrayt* extractCharCharSmallStringG (smallStringt *self, char delim1, char delim2);
1520 smallArrayt* extractSmallJsonSSmallStringG (smallStringt *self, smallJsont* delim1, const char* delim2);
1524 smallArrayt* extractSmallStringSSmallStringG (smallStringt *self, smallStringt* delim1, const char* delim2);
1526 smallArrayt* extractSSmallJsonSmallStringG (smallStringt *self, const char* delim1, smallJsont* delim2);
1527 smallArrayt* extractSSmallStringSmallStringG (smallStringt *self, const char* delim1, smallStringt* delim2);
1530 smallArrayt* icSplitSmallStringG (smallStringt *self, const char *delim);
1534 char** icSplitCharPSSmallStringG (smallStringt *self, char *delim);
1535 char** icSplitCharSSmallStringG (smallStringt *self, char c);
1538 smallArrayt* icExtractSmallStringG(smallStringt *self, const char* delim1, const char* delim2);
1539 smallArrayt* icExtractCharSSmallStringG (smallStringt *self, char delim1, const char* delim2);
1540 smallArrayt* icExtractSCharSmallStringG (smallStringt *self, const char* delim1, char delim2);
1541 smallArrayt* icExtractCharCharSmallStringG (smallStringt *self, char delim1, char delim2);
1544 smallArrayt* icExtractSmallJsonSSmallStringG (smallStringt *self, smallJsont* delim1, const char* delim2);
1548 smallArrayt* icExtractSmallStringSSmallStringG (smallStringt *self, smallStringt* delim1, const char* delim2);
1550 smallArrayt* icExtractSSmallJsonSmallStringG (smallStringt *self, const char* delim1, smallJsont* delim2);
1551 smallArrayt* icExtractSSmallStringSmallStringG (smallStringt *self, const char* delim1, smallStringt* delim2);
1554 smallStringt* readFileSmallStringG (smallStringt *self, const char *filePath);
1558 int writeFileSmallStringG (smallStringt *self, const char *filePath);
1561 int writeStreamSmallStringG (smallStringt *self, FILE *fp);
1562 int appendFileSmallStringFG (smallStringt *self, const char *filePath); //TODO remove F - oGMacros generates a macro making the compilation fail
1564 
1565 // see libsheepy.h for colors and effects
1566 // end class smallString
smallStringt * upperSmallStringG(smallStringt *self)
smallStringt * icReplaceSmallStringSSmallStringG(smallStringt *self, smallStringt *olds, const char *news, size_t max)
smallStringt * icReplaceSSmallStringSmallStringG(smallStringt *self, const char *olds, smallStringt *news, size_t max)
bool(* startsWithSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
smallStringt * replaceSmallStringSSmallStringG(smallStringt *self, smallStringt *olds, const char *news, size_t max)
smallStringt * findSmallStringG(smallStringt *self, const char *needle)
char getAtSmallStringG(smallStringt *self, char retType UNUSED, int64_t index)
char ** icSplitSmallStringSSmallStringG(smallStringt *self, smallStringt *delim)
bool(* equalSmallStringSmallDoubleFt)(smallStringt *self, smallDoublet *p2)
smallStringt * findSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
smallStringt * replaceSSmallJsonSmallStringG(smallStringt *self, const char *olds, smallJsont *news, size_t max)
bool(* icEndsWithSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
void freeSmallStringG(smallStringt *self)
smallStringt * setFromSmallDictSmallStringG(smallStringt *self, smallDictt *p2)
bool(* equalSmallStringInt64Ft)(smallStringt *self, int64_t p2)
smallStringt * insertSmallStringG(smallStringt *self, int64_t index, smallStringt *toInsert)
char * icHasSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
smallStringt * prependSmallJsonSmallStringG(smallStringt *self, smallJsont *json)
smallArrayt * extractSmallJsonSSmallStringG(smallStringt *self, smallJsont *delim1, const char *delim2)
smallStringt * appendNSmashSSmallStringG(smallStringt *self, char *string)
char(* cropElemSmallStringFt)(smallStringt *self, int64_t index)
Crop a single character return character at index and delete character at index in the original strin...
void cleanUpSmallStringFreeLocalG(smallStringt *val)
smallStringt * replaceSmallStringSmallStringSmallStringG(smallStringt *self, smallStringt *olds, smallStringt *news, size_t max)
bool(* startsWithSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
bool(* equalSmallStringBoolFt)(smallStringt *self, bool p2)
bool(* isEmptySmallStringFt)(smallStringt *self)
is Empty SmallString
smallStringt * appendSSmallStringG(smallStringt *self, const char *string)
smallArrayt * icExtractSCharSmallStringG(smallStringt *self, const char *delim1, char delim2)
smallStringt * icUniqSmallStringG(smallStringt *self, char c)
bool(* endsWithSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
smallArrayt * extractSmallJsonCharSmallStringG(smallStringt *self, smallJsont *delim1, char delim2)
ssize_t(* countSSmallStringFt)(smallStringt *self, const char *string)
count String count number of (non-overlapping) occurrences of a substring
smallStringt * replaceCharSmallStringSmallStringG(smallStringt *self, char olds, smallStringt *news, size_t max)
ssize_t indexOfSmallStringG(smallStringt *self, const char *needle)
smallStringt * insertSNFreeSmallStringG(smallStringt *self, int64_t index, char *toInsert)
smallArrayt * icExtractSSmallJsonSmallStringG(smallStringt *self, const char *delim1, smallJsont *delim2)
ssize_t(* icIndexOfSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle)
smallStringt * uniqSmallStringG(smallStringt *self, char c)
smallStringt * setSmallJsonSmallStringG(smallStringt *self, smallJsont *p2)
ssize_t icIndexOfSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
bool isBlankSmallStringG(smallStringt *self)
smallArrayt * extractCharCharSmallStringG(smallStringt *self, char delim1, char delim2)
smallStringt * replaceSmallStringCharSmallStringG(smallStringt *self, smallStringt *olds, char news, size_t max)
smallArrayt * icExtractSmallStringSmallJsonSmallStringG(smallStringt *self, smallStringt *delim1, smallJsont *delim2)
ssize_t icCountSmallStringSmallStringG(smallStringt *self, smallStringt *string)
smallStringt * setSmallStringG(smallStringt *self, const char *p2)
smallArrayt * extractCharSSmallStringG(smallStringt *self, char delim1, const char *delim2)
bool(* startsWithCharSmallStringFt)(smallStringt *self, char c)
smallArrayt * icExtractSmallStringSmallStringSmallStringG(smallStringt *self, smallStringt *delim1, smallStringt *delim2)
char(* getAtSmallStringFt)(smallStringt *self, int64_t index)
get char at python index
char * hasSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
bool equalSmallStringFG(smallStringt *self, smallStringt *p2)
smallStringt * insertSmallJsonSmallStringG(smallStringt *self, int64_t index, smallJsont *toInsert)
smallStringt * icReplaceSmallJsonSmallStringSmallStringG(smallStringt *self, smallJsont *olds, smallStringt *news, size_t max)
smallStringt * icFindSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
bool icEqualCharSmallStringG(smallStringt *self, char c)
void cleanUpSmallStringFreeG(smallStringt **val)
smallStringt * insertNFreeSmallStringG(smallStringt *self, int64_t index, smallStringt *toInsert)
smallStringt * setInt32SmallStringG(smallStringt *self, int32_t p2)
bool(* equalSmallStringUint32Ft)(smallStringt *self, uint32_t p2)
bool(* equalICharSmallStringFt)(smallStringt *self, char c, int64_t index)
bool icEqualSmallStringSmallJsonG(smallStringt *self, smallJsont *p2)
smallStringt * replaceSmallJsonSmallJsonSmallStringG(smallStringt *self, smallJsont *olds, smallJsont *news, size_t max)
smallStringt * cropSmallStringG(smallStringt *self, int64_t start, int64_t end)
smallStringt * icFindCharSmallStringG(smallStringt *self, char c)
smallArrayt * extractSmallStringG(smallStringt *self, const char *delim1, const char *delim2)
int(* appendFileSmallStringFt)(smallStringt *self, const char *filePath)
append string to filePath
smallStringt * setInt64SmallStringG(smallStringt *self, int64_t p2)
bool(* equalSmallStringUint64Ft)(smallStringt *self, uint64_t p2)
int(* writeFileSmallJsonSmallStringFt)(smallStringt *self, smallJsont *filePath)
bool(* icEqualSmallStringFt)(smallStringt *self, smallStringt *string)
ignore case equal compare self to smallString
smallStringt * insertSSmallStringG(smallStringt *self, int64_t index, const char *toInsert)
smallStringt * setSmallStringSmallStringG(smallStringt *self, smallStringt *p2)
bool equalSmallStringUint64G(smallStringt *self, uint64_t p2)
smallStringt * setUint32SmallStringG(smallStringt *self, uint32_t p2)
char ** icSplitCharSSmallStringG(smallStringt *self, char c)
char ** splitSmallStringSSmallStringG(smallStringt *self, smallStringt *delim)
ssize_t(* indexOfCharSmallStringFt)(smallStringt *self, char c)
char ** splitCharSSmallStringG(smallStringt *self, char c)
bool equalSmallStringSmallBytesG(smallStringt *self, smallBytest *p2)
bool(* equalSmallStringBaseFt)(smallStringt *self, baset *p2)
smallArrayt * icSplitCharSmallStringG(smallStringt *self, char c)
smallStringt * appendSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
smallStringt * icReplaceSmallStringSmallJsonSmallStringG(smallStringt *self, smallStringt *olds, smallJsont *news, size_t max)
bool startsWithSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
bool equalISmallJsonSmallStringG(smallStringt *self, smallJsont *string, int64_t index)
smallStringt * setAtSmallStringG(smallStringt *self, int64_t index, char c)
smallStringt * setSmallBoolSmallStringG(smallStringt *self, smallBoolt *p2)
smallStringt * icReplaceCharSmallJsonSmallStringG(smallStringt *self, char olds, smallJsont *news, size_t max)
bool equalICharSmallStringG(smallStringt *self, char c, int64_t index)
bool startsWithCharSmallStringG(smallStringt *self, char c)
smallStringt * replaceCharSSmallStringG(smallStringt *self, char olds, const char *news, size_t max)
ssize_t icCountSSmallStringG(smallStringt *self, const char *string)
bool icStartsWithSSmallStringG(smallStringt *self, const char *string)
smallStringt * replaceSSmallStringSmallStringG(smallStringt *self, const char *olds, smallStringt *news, size_t max)
smallStringt * setCharSmallStringG(smallStringt *self, char c)
bool equalSmallStringDoubleG(smallStringt *self, double p2)
ssize_t(* icIndexOfSmallJsonSmallStringFt)(smallStringt *self, smallJsont *needle)
bool equalSmallStringUint32G(smallStringt *self, uint32_t p2)
bool(* isIntSmallStringFt)(smallStringt *self)
is Integer String
bool icStartsWithSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
smallStringFunctionst * f
bool icEndsWithSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
bool(* icStartsWithCharSmallStringFt)(smallStringt *self, char c)
smallArrayt * extractCharSmallJsonSmallStringG(smallStringt *self, char delim1, smallJsont *delim2)
smallStringt * setUint64SmallStringG(smallStringt *self, uint64_t p2)
bool endsWithSSmallStringG(smallStringt *self, const char *string)
bool(* icEqualSmallStringBaseFt)(smallStringt *self, baset *p2)
void(* freeSmallStringFt)(smallStringt *self)
smallStringt * setSmallIntSmallStringG(smallStringt *self, smallIntt *p2)
bool icEndsWithCharSmallStringG(smallStringt *self, char c)
ssize_t(* indexOfSmallStringSmallStringFt)(smallStringt *self, smallStringt *needle)
ssize_t(* icCountSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
int appendFileSmallStringSmallStringG(smallStringt *self, smallStringt *filePath)
smallStringt * findSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
bool equalSmallStringInt32G(smallStringt *self, int32_t p2)
smallArrayt * icSplitSmallJsonSmallStringG(smallStringt *self, smallJsont *delim)
ssize_t countSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
bool icEqualSmallStringFG(smallStringt *self, smallStringt *p2)
ssize_t indexOfCharSmallStringG(smallStringt *self, char c)
bool equalSmallStringBaseG(smallStringt *self, baset *p2)
bool(* icEqualSmallStringSmallJsonFt)(smallStringt *self, smallJsont *p2)
int appendFileSmallStringFG(smallStringt *self, const char *filePath)
smallArrayt * splitCharSmallStringG(smallStringt *self, char c)
bool(* equalSmallStringSmallBoolFt)(smallStringt *self, smallBoolt *p2)
int(* writeStreamSmallStringFt)(smallStringt *self, FILE *fp)
size_t(* lenSmallStringFt)(smallStringt *self)
length
bool(* icEndsWithSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
void(* finishSmallStringFt)(smallStringt **self)
free container
char ** splitSmallJsonSSmallStringG(smallStringt *self, smallJsont *delim)
int(* writeFileSmallStringSmallStringFt)(smallStringt *self, smallStringt *filePath)
smallStringt * delSmallStringG(smallStringt *self, int64_t start, int64_t end)
bool(* endsWithSSmallStringFt)(smallStringt *self, const char *string)
ends With String compare end of self with string
int(* writeFileSmallStringFt)(smallStringt *self, const char *filePath)
write string to file
smallStringt * prependCharSmallStringG(smallStringt *self, char c)
int writeStreamSmallStringG(smallStringt *self, FILE *fp)
smallStringt * prependNSmashSmallJsonSmallStringG(smallStringt *self, smallJsont *json)
bool equalSmallStringSmallJsonG(smallStringt *self, smallJsont *p2)
bool(* endsWithSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
bool(* equalSmallStringSmallIntFt)(smallStringt *self, smallIntt *p2)
bool endsWithSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
int writeFileSmallJsonSmallStringG(smallStringt *self, smallJsont *filePath)
smallStringt * readFileSmallStringG(smallStringt *self, const char *filePath)
smallArrayt * icExtractSmallJsonSmallJsonSmallStringG(smallStringt *self, smallJsont *delim1, smallJsont *delim2)
smallStringt * icFindSmallStringG(smallStringt *self, const char *needle)
toStringSmallStringFt toString
char * icHasSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
smallArrayt * icExtractCharSSmallStringG(smallStringt *self, char delim1, const char *delim2)
ssize_t(* icIndexOfSmallStringFt)(smallStringt *self, const char *needle)
ignore case indexOf SmallString
smallStringt * prependNSmashSmallStringG(smallStringt *self, smallStringt *string)
smallStringt * replaceSmallJsonSmallStringSmallStringG(smallStringt *self, smallJsont *olds, smallStringt *news, size_t max)
smallStringt *(* duplicateSmallStringFt)(smallStringt *self)
END_TEST FILE * fp
char ** icSplitCharPSSmallStringG(smallStringt *self, char *delim)
smallArrayt * extractSmallStringSmallJsonSmallStringG(smallStringt *self, smallStringt *delim1, smallJsont *delim2)
smallStringt * insertNFreeSmallJsonSmallStringG(smallStringt *self, int64_t index, smallJsont *toInsert)
int64_t parseIntSmallStringG(smallStringt *self)
char cropElemSmallStringG(smallStringt *self, int64_t index)
bool icEndsWithSmallStringSmallStringG(smallStringt *self, smallStringt *string)
smallStringt * replaceSmallJsonCharSmallStringG(smallStringt *self, smallJsont *olds, char news, size_t max)
smallStringt * replaceCharSmallJsonSmallStringG(smallStringt *self, char olds, smallJsont *news, size_t max)
char c
smallArrayt * icExtractSSmallStringSmallStringG(smallStringt *self, const char *delim1, smallStringt *delim2)
smallStringt * intToSmallStringG(smallStringt *self, int64_t n)
ssize_t icIndexOfSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
void(* terminateSmallStringFt)(smallStringt **self)
smallStringt * allocSmallString(const char *string)
bool(* icStartsWithSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
smallArrayt * extractSmallJsonSmallStringSmallStringG(smallStringt *self, smallJsont *delim1, smallStringt *delim2)
void registerMethodsSmallString(smallStringFunctionst *f)
smallStringt * replaceSmallStringG(smallStringt *self, const char *olds, const char *news, size_t max)
bool equalCharSmallStringG(smallStringt *self, char c)
smallArrayt * icSplitSmallStringG(smallStringt *self, const char *delim)
smallStringt * lTrimSmallStringG(smallStringt *self)
char * hasCharSmallStringG(smallStringt *self, char c)
smallStringt * icReplaceSmallStringCharSmallStringG(smallStringt *self, smallStringt *olds, char news, size_t max)
bool(* icEqualCharSmallStringFt)(smallStringt *self, char c)
smallStringt * setFromSmallJsonSmallStringG(smallStringt *self, smallJsont *p2)
smallArrayt * icExtractSmallJsonSSmallStringG(smallStringt *self, smallJsont *delim1, const char *delim2)
int(* appendFileSmallStringSmallStringFt)(smallStringt *self, smallStringt *filePath)
smallJsont * cropSmallJsonSmallStringG(smallStringt *self, int64_t start, int64_t end)
bool equalSmallStringSmallBoolG(smallStringt *self, smallBoolt *p2)
smallStringt * trimSmallStringG(smallStringt *self)
bool(* icStartsWithSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
smallStringt * prependSSmallStringG(smallStringt *self, const char *string)
smallStringt * doubleToSmallStringG(smallStringt *self, double n)
smallStringt * icReplaceSmallJsonCharSmallStringG(smallStringt *self, smallJsont *olds, char news, size_t max)
bool endsWithCharSmallStringG(smallStringt *self, char c)
bool(* isNumberSmallStringFt)(smallStringt *self)
is Number (integer or float) String
smallArrayt * extractSmallStringSmallStringSmallStringG(smallStringt *self, smallStringt *delim1, smallStringt *delim2)
smallStringt * icReplaceSCharSmallStringG(smallStringt *self, const char *olds, char news, size_t max)
smallStringt * readStreamSmallStringG(smallStringt *self, FILE *fp)
bool(* icEndsWithSSmallStringFt)(smallStringt *self, const char *string)
ignore case ends With String compare end of self with string
bool(* icStartsWithSSmallStringFt)(smallStringt *self, const char *string)
ignore case starts With String compare start of self with string
char * icHasCharSmallStringG(smallStringt *self, char c)
smallStringt * icReplaceSmallStringG(smallStringt *self, const char *olds, const char *news, size_t max)
smallArrayt * icExtractCharSmallJsonSmallStringG(smallStringt *self, char delim1, smallJsont *delim2)
smallStringt * appendNSmashSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
smallArrayt * splitSmallJsonSmallStringG(smallStringt *self, smallJsont *delim)
bool isEmptySmallStringG(smallStringt *self)
bool icEqualSmallStringBaseG(smallStringt *self, baset *p2)
ssize_t icCountSmallJsonSmallStringG(smallStringt *self, smallJsont *string)
ssize_t(* icCountCharSmallStringFt)(smallStringt *self, char c)
bool(* equalSmallStringDoubleFt)(smallStringt *self, double p2)
char * hasSmallStringG(smallStringt *self, const char *needle)
smallStringt * sliceSmallStringG(smallStringt *self, int64_t start, int64_t end)
smallStringt * findCharSmallStringG(smallStringt *self, char c)
bool equalISSmallStringG(smallStringt *self, const char *string, int64_t index)
bool icStartsWithCharSmallStringG(smallStringt *self, char c)
ssize_t icIndexOfCharSmallStringG(smallStringt *self, char c)
ssize_t(* countSmallStringSmallStringFt)(smallStringt *self, smallStringt *string)
bool equalSmallStringSmallDoubleG(smallStringt *self, smallDoublet *p2)
smallStringt * icReplaceCharCharSmallStringG(smallStringt *self, char olds, char news, size_t max)
bool(* equalISSmallStringFt)(smallStringt *self, const char *string, int64_t index)
equal at Index compare self at index to smallString
smallStringt * prependSmallStringG(smallStringt *self, smallStringt *string)
int64_t(* parseIntSmallStringFt)(smallStringt *self)
convert self to decimal integer
finishSmallStringFt finish
smallArrayt * icExtractSmallJsonCharSmallStringG(smallStringt *self, smallJsont *delim1, char delim2)
smallStringt * readFileSmallStringSmallStringG(smallStringt *self, smallStringt *filePath)
smallStringt * replaceSmallJsonSSmallStringG(smallStringt *self, smallJsont *olds, const char *news, size_t max)
initiateAllocateSmallJson & json
smallStringt * copySmallStringG(smallStringt *self, int64_t start, int64_t end)
smallStringt * createSF(const char *paramType,...)
create String: f("qwd ", str," werr ", str2) like catS, concatenate strings to a new smallString ...
ssize_t(* countCharSmallStringFt)(smallStringt *self, char c)
smallStringt * setBoolSmallStringG(smallStringt *self, bool p2)
double parseDoubleSmallStringG(smallStringt *self)
smallStringt * setSmallDoubleSmallStringG(smallStringt *self, smallDoublet *p2)
size_t lenSmallStringG(smallStringt *self)
smallArrayt * extractCharSmallStringSmallStringG(smallStringt *self, char delim1, smallStringt *delim2)
bool(* equalSSmallStringFt)(smallStringt *self, const char *string)
equal compare self to smallString
bool(* equalSmallStringFt)(smallStringt *self, smallStringt *string)
equal compare self to smallString
smallStringt * appendSmallStringG(smallStringt *self, smallStringt *string)
smallArrayt * extractSSmallJsonSmallStringG(smallStringt *self, const char *delim1, smallJsont *delim2)
bool endsWithSmallStringSmallStringG(smallStringt *self, smallStringt *string)
ssize_t(* icCountSSmallStringFt)(smallStringt *self, const char *string)
ignore case count String count number of (non-overlapping) occurrences of a substring ...
smallStringt * emptySmallStringG(smallStringt *self)
duplicateSmallStringFt duplicate
smallStringt * icReplaceSmallJsonSSmallStringG(smallStringt *self, smallJsont *olds, const char *news, size_t max)
smallArrayt * icExtractCharCharSmallStringG(smallStringt *self, char delim1, char delim2)
bool isIntSmallStringG(smallStringt *self)
smallStringt * setSmallArraySmallStringG(smallStringt *self, smallArrayt *p2)
small string
char *(* toStringSmallStringFt)(smallStringt *self)
bool equalSmallStringInt64G(smallStringt *self, int64_t p2)
bool(* equalISmallJsonSmallStringFt)(smallStringt *self, smallJsont *string, int64_t index)
ssize_t(* indexOfSmallJsonSmallStringFt)(smallStringt *self, smallJsont *needle)
smallStringt * replaceSmallStringSmallJsonSmallStringG(smallStringt *self, smallStringt *olds, smallJsont *news, size_t max)
bool(* equalSmallStringSmallBytesFt)(smallStringt *self, smallBytest *p2)
ssize_t(* indexOfSmallStringFt)(smallStringt *self, const char *needle)
indexOf SmallString
bool icStartsWithSmallStringSmallStringG(smallStringt *self, smallStringt *string)
smallStringt * icReplaceSmallStringSmallStringSmallStringG(smallStringt *self, smallStringt *olds, smallStringt *news, size_t max)
bool(* icEndsWithCharSmallStringFt)(smallStringt *self, char c)
smallArrayt * icExtractSmallStringSSmallStringG(smallStringt *self, smallStringt *delim1, const char *delim2)
bool equalSmallStringBoolG(smallStringt *self, bool p2)
bool(* equalSmallStringInt32Ft)(smallStringt *self, int32_t p2)
ssize_t countCharSmallStringG(smallStringt *self, char c)
bool startsWithSSmallStringG(smallStringt *self, const char *string)
char * cropSSmallStringG(smallStringt *self, int64_t start, int64_t end)
ssize_t indexOfSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
bool isNumberSmallStringG(smallStringt *self)
smallStringt * delElemSmallStringG(smallStringt *self, int64_t index)
int writeFileSmallStringSmallStringG(smallStringt *self, smallStringt *filePath)
#define UNUSED
Definition: libsheepy.h:8195
smallArrayt * splitSmallStringSmallStringG(smallStringt *self, smallStringt *delim)
ssize_t countSmallStringSmallStringG(smallStringt *self, smallStringt *string)
bool icEndsWithSSmallStringG(smallStringt *self, const char *string)
bool equalISmallStringSmallStringG(smallStringt *self, smallStringt *string, int64_t index)
smallArrayt * icExtractSmallStringG(smallStringt *self, const char *delim1, const char *delim2)
bool icEqualSSmallStringG(smallStringt *self, const char *string)
smallStringt * setDoubleSmallStringG(smallStringt *self, double p2)
smallStringt * readFileSmallJsonSmallStringG(smallStringt *self, smallJsont *filePath)
smallStringt * injectSmallStringG(smallStringt *self, int64_t index, char toInject)
bool(* equalISmallStringSmallStringFt)(smallStringt *self, smallStringt *string, int64_t index)
bool startsWithSmallStringSmallStringG(smallStringt *self, smallStringt *string)
smallArrayt * extractSCharSmallStringG(smallStringt *self, const char *delim1, char delim2)
smallStringt * appendCharSmallStringG(smallStringt *self, char c)
smallStringt * duplicateSmallStringG(smallStringt *self)
smallStringt * replaceCharCharSmallStringG(smallStringt *self, char olds, char news, size_t max)
double(* parseDoubleSmallStringFt)(smallStringt *self)
convert self to double
ssize_t icIndexOfSmallStringG(smallStringt *self, const char *needle)
base class
smallStringt * rTrimSmallStringG(smallStringt *self)
char ** splitCharPSSmallStringG(smallStringt *self, const char *delim)
smallArrayt * icExtractCharSmallStringSmallStringG(smallStringt *self, char delim1, smallStringt *delim2)
smallArrayt * extractSSmallStringSmallStringG(smallStringt *self, const char *delim1, smallStringt *delim2)
smallStringt * icReplaceCharSmallStringSmallStringG(smallStringt *self, char olds, smallStringt *news, size_t max)
void initiateSmallString(smallStringt *self)
void finalizeRecycleSmallString(void *arg UNUSED)
ssize_t icCountCharSmallStringG(smallStringt *self, char c)
void(* smashSmallStringFt)(smallStringt **self)
free self but not the smallString buffer
bool(* isBlankSmallStringFt)(smallStringt *self)
is Blank SmallString
smallStringt * lowerSmallStringG(smallStringt *self)
bool(* equalCharSmallStringFt)(smallStringt *self, char c)
smallArrayt * icExtractSmallJsonSmallStringSmallStringG(smallStringt *self, smallJsont *delim1, smallStringt *delim2)
ssize_t countSSmallStringG(smallStringt *self, const char *string)
smallStringt * prependNSmashSSmallStringG(smallStringt *self, char *string)
bool(* startsWithSSmallStringFt)(smallStringt *self, const char *string)
starts With String compare start of self with string
smallArrayt * extractSmallStringSSmallStringG(smallStringt *self, smallStringt *delim1, const char *delim2)
void initiateAllocateSmallString(smallStringt **self)
ssize_t(* icCountSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
void finalizeSmallString(void)
smallArrayt * icSplitSmallStringSmallStringG(smallStringt *self, smallStringt *delim)
smallArrayt * extractSmallJsonSmallJsonSmallStringG(smallStringt *self, smallJsont *delim1, smallJsont *delim2)
int writeFileSmallStringG(smallStringt *self, const char *filePath)
bool(* endsWithCharSmallStringFt)(smallStringt *self, char c)
smallStringt * appendNSmashSmallStringG(smallStringt *self, smallStringt *smallString)
bool equalSmallStringSmallIntG(smallStringt *self, smallIntt *p2)
smallStringt * icReplaceCharSSmallStringG(smallStringt *self, char olds, const char *news, size_t max)
terminateSmallStringFt terminate
smallStringt * icReplaceSmallJsonSmallJsonSmallStringG(smallStringt *self, smallJsont *olds, smallJsont *news, size_t max)
char * icHasSmallStringG(smallStringt *self, const char *needle)
char ** icSplitSmallJsonSSmallStringG(smallStringt *self, smallJsont *delim)
bool(* equalSmallStringSmallJsonFt)(smallStringt *self, smallJsont *p2)
smallArrayt * splitSmallStringG(smallStringt *self, const char *delim)
void cleanUpSmallStringTerminateG(smallStringt **val)
char * hasSmallStringSmallStringG(smallStringt *self, smallStringt *needle)
void cleanUpSmallStringFinishG(smallStringt **val)
smallArrayt * extractSmallStringCharSmallStringG(smallStringt *self, smallStringt *delim1, char delim2)
ssize_t(* countSmallJsonSmallStringFt)(smallStringt *self, smallJsont *string)
bool(* icEqualSSmallStringFt)(smallStringt *self, const char *string)
ignore case equal compare self to smallString
ssize_t indexOfSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
smallArrayt * icExtractSmallStringCharSmallStringG(smallStringt *self, smallStringt *delim1, char delim2)
ssize_t(* icIndexOfCharSmallStringFt)(smallStringt *self, char c)
smallStringt * replaceSCharSmallStringG(smallStringt *self, const char *olds, char news, size_t max)
smallStringt * icFindSmallJsonSmallStringG(smallStringt *self, smallJsont *needle)
smallStringt * icReplaceSSmallJsonSmallStringG(smallStringt *self, const char *olds, smallJsont *news, size_t max)
bool equalSSmallStringG(smallStringt *self, const char *string)