4 #ifndef RUDIMENTS_CHARSTRING_H
5 #define RUDIMENTS_CHARSTRING_H
7 #include <rudiments/private/charstringincludes.h>
20 static size_t length(
const char *
string);
24 static size_t size(
const char *
string);
36 static bool isYes(
const char *
string);
44 static bool isNo(
const char *
string);
47 static void zero(
char *str,
size_t len);
52 static char *
append(
char *dest,
const char *source);
57 static char *
append(
char *dest,
const char *source,
63 static char *
append(
char *dest, int64_t number);
68 static char *
append(
char *dest, uint64_t number);
73 static char *
append(
char *dest,
double number);
79 static char *
append(
char *dest,
double number,
86 static char *
append(
char *dest,
double number,
93 static char *
copy(
char *dest,
const char *source);
98 static char *
copy(
char *dest,
99 const char *source,
size_t len);
105 static char *
copy(
char *dest,
size_t location,
112 static char *
copy(
char *dest,
size_t location,
113 const char *source,
size_t len);
127 const char *source,
size_t sourcelen);
131 static int32_t
compare(
const char *str1,
const char *str2);
136 static int32_t
compare(
const char *str1,
const char *str2,
155 static bool inSet(
const char *str,
const char *
const *set);
162 const char *
const *set);
176 static bool contains(
const char *haystack,
char needle);
201 const char *haystack,
212 const char *haystack,
225 const char *haystack,
238 const char *haystack,
249 const char *haystack,
260 const char *haystack,
265 static char *
findFirst(
char *haystack,
const char *needle);
295 static char *
findLast(
char *haystack,
const char *needle);
304 static char *
findLast(
char *haystack,
char needle);
328 const char *haystack,
356 const char *haystack,
372 const char *delimiter);
388 const char *delimiter);
453 static bool strip(
char *str1,
const char *str2);
463 char oldchar,
char newchar);
468 const char *oldchars,
char newchar);
485 const char *
const *oldstrset,
487 const char *
const *newstrset);
538 static bool isNumber(
const char *val, int32_t len);
554 uint16_t zeropadding);
560 uint16_t zeropadding);
576 uint16_t zeropadding);
582 uint16_t zeropadding);
598 uint16_t zeropadding);
604 uint16_t zeropadding);
668 const char **endptr);
671 static int64_t
toInteger(
const char *
string, int32_t base);
677 const char **endptr, int32_t base);
686 const char **endptr);
703 static long double toFloat(
const char *
string);
720 static long double toFloat(
const char *
string,
721 const char **endptr);
755 const char *characters);
767 uint64_t inputlength,
769 uint64_t *outputlength,
770 const char *characters);
776 uint64_t inputlength,
778 uint64_t *outputlength);
796 uint64_t *outputlength);
806 uint64_t inputlength);
812 uint64_t inputlength,
814 uint64_t *outputsize);
820 const unsigned char *
input);
825 const unsigned char *
input,
832 const unsigned char *
input,
835 uint64_t *outputlength);
847 uint64_t inputlength);
853 uint64_t inputlength,
855 uint64_t *outputsize);
874 uint64_t *outputlength);
884 uint64_t inputlength);
890 uint64_t inputlength,
892 uint64_t *outputsize);
916 static void center(
char *str, int32_t len);
924 static char *
pad(
const char *
string,
927 uint64_t totallength);
937 static void split(
const char *
string,
938 ssize_t stringlength,
939 const char *delimiter,
940 ssize_t delimiterlength,
943 uint64_t *listlength);
952 static void split(
const char *
string,
953 const char *delimiter,
954 ssize_t delimiterlength,
957 uint64_t *listlength);
966 static void split(
const char *
string,
967 ssize_t stringlength,
968 const char *delimiter,
971 uint64_t *listlength);
980 static void split(
const char *
string,
981 const char *delimiter,
984 uint64_t *listlength);
990 size_t start,
size_t end);
1020 static ssize_t
printf(
char *buffer,
size_t len,
1021 const char *format, ...);
1043 static ssize_t
printf(
char *buffer,
size_t len,
1059 const char *format, ...);
1076 #include <rudiments/private/charstring.h>
Definition: character.h:11
Definition: charstring.h:16
static const char * findFirstOrEnd(const char *haystack, char needle)
static char * parseNumber(float number, uint16_t scale)
static char * subString(const char *str, size_t start, size_t end)
static char * duplicate(const char *str, size_t len)
static bool isNumber(const char *val)
static void quotedPrintableDecode(const char *input, uint64_t inputlength, unsigned char **output, uint64_t *outputsize)
static void leftTrim(char *str, char character)
static void replace(char *str, const char *oldchars, char newchar)
static char * parseNumber(int16_t number)
static unsigned char * hexDecode(const char *input)
static void split(const char *string, ssize_t stringlength, const char *delimiter, bool collapse, char ***list, uint64_t *listlength)
static void split(const char *string, ssize_t stringlength, const char *delimiter, ssize_t delimiterlength, bool collapse, char ***list, uint64_t *listlength)
static bool endsWith(const char *haystack, const char *needle)
static char * append(char *dest, uint64_t number)
static char * safeCopy(char *dest, size_t destlen, const char *source)
static const char * findFirst(const char *haystack, const char *needle)
static bool containsIgnoringCase(const char *haystack, const char *needle)
static char * parseNumber(int64_t number, uint16_t zeropadding)
static char * parseNumber(int32_t number, uint16_t zeropadding)
static char * copy(char *dest, const char *source, size_t len)
static void upper(char *str)
static void center(char *str, int32_t len)
static const char * findFirstOrEndIgnoringCase(const char *haystack, char needle)
static const char * findFirstIgnoringCase(const char *haystack, char needle)
static bool isYes(const char *string)
static void split(const char *string, const char *delimiter, ssize_t delimiterlength, bool collapse, char ***list, uint64_t *listlength)
static char * replace(const char *str, const char *const *oldstrset, ssize_t *oldstrlen, const char *const *newstrset)
static size_t length(const char *string)
static char * parseNumber(uint32_t number, uint16_t zeropadding)
static uint64_t toUnsignedInteger(const char *string, const char **endptr)
static const char * findLastIgnoringCase(const char *haystack, char needle)
static char * parseNumber(uint32_t number)
static void rightTrim(char *str)
static const char * findLastOfSetOrEnd(const char *haystack, const char *set)
static char * parseNumber(long double number, uint16_t scale)
static void rightJustify(char *str, int32_t len)
static char * insertString(const char *dest, const char *src, uint64_t index)
static uint16_t integerLength(int64_t number)
static char * convertAmount(int64_t amount)
static char * base64Encode(const unsigned char *input)
static char * replace(const char *str, const char *oldstr, const char *newstr)
static uint64_t toUnsignedInteger(const char *string)
static void bothTrim(char *str, char character)
static char * findFirstIgnoringCase(char *haystack, const char *needle)
static char * parseNumber(float number)
static ssize_t printf(char **buffer, const char *format,...)
static const char * findLastOfSet(const char *haystack, const char *set)
static char * safeCopy(char *dest, size_t destlen, const char *source, size_t sourcelen)
static bool startsWith(const char *haystack, const char *needle)
static char * parseNumber(uint16_t number, uint16_t zeropadding)
static void hexDecode(const char *input, uint64_t inputlength, unsigned char **output, uint64_t *outputsize)
static void hexEncode(const unsigned char *input, uint64_t inputsize, char **output, uint64_t *outputlength)
static char * parseNumber(int32_t number)
static int64_t convertAmount(const char *amount)
static char * findLastIgnoringCase(char *haystack, const char *needle)
static char * hexEncode(const unsigned char *input, uint64_t inputsize)
static uint64_t toUnsignedInteger(const char *string, const char **endptr, int32_t base)
static const char * findLastIgnoringCase(const char *haystack, const char *needle)
static int64_t toInteger(const char *string, const char **endptr, int32_t base)
static char * parseNumber(uint16_t number)
static void leftTrim(char *str)
static unsigned char * quotedPrintableDecode(const char *input, uint64_t inputlength)
static char * findLastOfSet(char *haystack, const char *set)
static const char * findFirstOfSetOrEnd(const char *haystack, const char *set)
static ssize_t printf(char *buffer, size_t len, const char *format, va_list *argp)
static char * append(char *dest, double number, uint16_t precision, uint16_t scale)
static void rightTrim(char *str, char character)
static char * findFirst(char *haystack, const char *needle)
static bool isNullOrEmpty(const char *string)
static char * subString(const char *str, size_t start)
static char * append(char *dest, const char *source)
static void lower(char *str)
static bool contains(const char *haystack, char needle)
static int32_t compareIgnoringCase(const char *str1, const char *str2, size_t len)
static char * append(char *dest, int64_t number)
static bool isInteger(const char *val)
static void quotedPrintableEncode(const unsigned char *input, uint64_t inputsize, char **output, uint64_t *outputlength)
static const char * findLast(const char *haystack, const char *needle)
static bool strip(char *str, char character)
static char * quotedPrintableEncode(const unsigned char *input, uint64_t inputsize)
static void escape(const char *input, uint64_t inputlength, char **output, uint64_t *outputlength, const char *characters)
static char * parseNumber(double number, uint16_t precision, uint16_t scale)
static char * findFirstIgnoringCase(char *haystack, char needle)
static char * parseNumber(int64_t number)
static const char * findFirstIgnoringCase(const char *haystack, const char *needle)
static long double toFloatC(const char *string)
static bool stripSet(char *str1, const char *set)
static bool contains(const char *haystack, const char *needle)
static void bothTrim(char *str)
static unsigned char * base64Decode(const char *input, uint64_t inputlength)
static const char * findFirstOrEndIgnoringCase(const char *haystack, const char *needle)
static int32_t compare(const char *str1, const char *str2, size_t length)
static long double toFloat(const char *string)
static char * httpUnescape(const char *input)
static char * escape(const char *input, const char *characters)
static char * findLastOfSetOrEnd(char *haystack, const char *set)
static void leftJustify(char *str, int32_t len)
static long double toFloat(const char *string, const char **endptr)
static char * parseNumber(long double number, uint16_t precision, uint16_t scale)
static int64_t toInteger(const char *string)
static uint16_t integerLength(uint16_t number)
static int64_t toInteger(const char *string, int32_t base)
static unsigned char * base64Decode(const char *input)
static void zero(char *str, size_t len)
static char * pad(const char *string, char padchar, int16_t direction, uint64_t totallength)
static void base64Encode(const unsigned char *input, uint64_t inputsize, char **output, uint64_t *outputlength)
static char * append(char *dest, double number, uint16_t scale)
static char * findLastIgnoringCase(char *haystack, char needle)
static bool isNo(const char *string)
static char * between(const char *str, const char *start, const char *end)
static char * replace(const char *str, regularexpression *from, const char *to, bool global)
static void capitalize(char *str)
static ssize_t printf(char *buffer, size_t len, const char *format,...)
static uint16_t integerLength(uint64_t number)
static char * findLast(char *haystack, char needle)
static bool isNumber(const char *val, int32_t len)
static ssize_t printf(char **buffer, const char *format, va_list *argp)
static const char * findFirstOrEnd(const char *haystack, const char *needle)
static size_t lengthNotContainingSet(const char *haystack, const char *set)
static bool inSetIgnoringCase(const char *str, const char *const *set)
static char * findFirstOfSetOrEnd(char *haystack, const char *set)
static int64_t toInteger(const char *string, const char **endptr)
static unsigned char * hexDecode(const char *input, uint64_t inputlength)
static size_t size(const char *string)
static char * unescape(const char *input)
static void unescape(const char *input, uint64_t inputlength, char **output, uint64_t *outputlength)
static char * quotedPrintableEncode(const unsigned char *input)
static char * findFirstOrEnd(char *haystack, const char *needle)
static void replace(char *str, char oldchar, char newchar)
static int32_t compare(const char *str1, const char *str2)
static void split(const char *string, const char *delimiter, bool collapse, char ***list, uint64_t *listlength)
static char * parseNumber(long double number)
static const char * findLast(const char *haystack, char needle)
static char * parseNumber(int16_t number, uint16_t zeropadding)
static bool inSet(const char *str, const char *const *set)
static void deobfuscate(char *str)
static char * after(const char *str, const char *delimiter)
static char * findFirst(char *haystack, char needle)
static char * findFirstOrEndIgnoringCase(char *haystack, const char *needle)
static char * findFirstOfSet(char *haystack, const char *set)
static const char * findFirst(const char *haystack, char needle)
static char * parseNumber(double number, uint16_t scale)
static bool strip(char *str1, const char *str2)
static char * duplicate(const char *str)
static uint16_t integerLength(int16_t number)
static void base64Decode(const char *input, uint64_t inputlength, unsigned char **output, uint64_t *outputsize)
static char * append(char *dest, double number)
static int32_t compareIgnoringCase(const char *str1, const char *str2)
static char * append(char *dest, const char *source, size_t len)
static bool containsIgnoringCase(const char *haystack, char needle)
static const char * findFirstOfSet(const char *haystack, const char *set)
static char * parseNumber(double number)
static uint16_t integerLength(int32_t number)
static uint64_t toUnsignedInteger(const char *string, int32_t base)
static void obfuscate(char *str)
static char * copy(char *dest, const char *source)
static char * parseNumber(float number, uint16_t precision, uint16_t scale)
static char * findLast(char *haystack, const char *needle)
static char * convertAmount(int64_t amount, uint16_t padding)
static char * copy(char *dest, size_t location, const char *source, size_t len)
static char * httpEscape(const char *input)
static uint16_t integerLength(uint32_t number)
static char * before(const char *str, const char *delimiter)
static char * parseNumber(uint64_t number)
static unsigned char * quotedPrintableDecode(const char *input)
static bool isInteger(const char *val, int32_t len)
static char * hexEncode(const unsigned char *input)
static char * copy(char *dest, size_t location, const char *source)
static char * base64Encode(const unsigned char *input, uint64_t inputsize)
static size_t lengthContainingSet(const char *haystack, const char *set)
static char * parseNumber(uint64_t number, uint16_t zeropadding)
Definition: regularexpression.h:14