29 #ifndef _GLIBCXX_CSTRING
32 #ifndef _GLIBCXX_CSTDLIB
42 inline void freenull(
T *& var) {
48 inline void freeset(
T *& var,
T *heapcopy) {
53 inline char *nulldup(
const char *maybeStr) {
54 return maybeStr ? strdup(maybeStr) :
NULp;
56 inline void freedup(
char *& strvar,
const char *maybeStr) {
57 freeset(strvar, nulldup(maybeStr));
59 inline void reassign(
char *& dstvar,
char *& srcvar) {
60 freeset(dstvar, srcvar);
64 inline const char *null2empty(
const char *
str) {
67 return str ? str :
"";
77 return strcmp(n1, n2)<0;
82 #error dupstr.h included twice
CONSTEXPR_INLINE unsigned char safeCharIndex(char c)
bool operator()(const char *n1, const char *n2) const