17namespace string_util {
88 for (; len < capacity && s[len]; ++len);
100 template <
typename T>
103 std::istringstream iss{str};
104 iss >> std::ws >> value >> std::ws;
#define CTREXPORT
Definition: export.h:14
CTREXPORT uint32_t safe_copyDoubles(double *dest, double const *src, int32_t numDoubles, int32_t capacityDoubles)
CTREXPORT char * safe_strcat(char *dest, char const *src, size_t capacity)
Safely concatenates a string to the destination.
CTREXPORT char * safe_strtok(char **str_ptr, char const *delimiters)
Safer strtok that finds and returns a pointer to the next token in *str_ptr, separated using one of t...
CTREXPORT size_t safe_memcpy(void *dest, void const *src, size_t numBytesToCopy, size_t capacity)
Safely copies data from the source to the destination.
CTREXPORT void makeLower(std::string &input)
Converts the given string to lowercase in-place.
CTREXPORT constexpr size_t safe_strlen(char const *s, size_t capacity)
Safely determines the length of a string with the given capacity.
Definition: string_util.hpp:83
bool toNumber(std::string const &str, T &value)
Converts string to number while informing caller if operation was successful.
Definition: string_util.hpp:101
CTREXPORT std::string toUpper(std::string_view input)
Creates a new, uppercase version of the given string.
CTREXPORT char * safe_strcpy(char *dest, char const *src, size_t capacity)
Safely copies a string to the destination.
CTREXPORT std::vector< std::string > string_split(std::string const &input, char delimiter)
Splits a string by the given delimiter.
CTREXPORT int strcmp_nocase(char const *a, char const *b)
Case-insensitive strcmp.
CTREXPORT std::string toLower(std::string_view input)
Creates a new, lowercase version of the given string.
CTREXPORT void makeUpper(std::string &input)
Converts the given string to uppercase in-place.
Definition: string_util.hpp:15