ImStrv: allow constructing from two null pointers.

This commit is contained in:
ocornut 2024-05-03 16:24:52 +02:00 committed by ocornut
parent 23d4d10c4d
commit 744ea341c4

View File

@ -322,7 +322,7 @@ struct ImStrv
const char* End; const char* End;
ImStrv() { Begin = End = NULL; } ImStrv() { Begin = End = NULL; }
ImStrv(const char* b) { Begin = b; End = b ? b + strlen(b) : NULL; } ImStrv(const char* b) { Begin = b; End = b ? b + strlen(b) : NULL; }
ImStrv(const char* b, const char* e){ Begin = b; End = e ? e : b + strlen(b); } ImStrv(const char* b, const char* e){ Begin = b; End = e ? e : b ? b + strlen(b) : NULL; }
inline size_t length() const { return (size_t)(End - Begin); } inline size_t length() const { return (size_t)(End - Begin); }
inline bool empty() const { return Begin == End; } // == "" or == NULL inline bool empty() const { return Begin == End; } // == "" or == NULL
inline operator bool() const { return Begin != NULL; } // return true when valid ("" is valid, NULL construction is not) inline operator bool() const { return Begin != NULL; } // return true when valid ("" is valid, NULL construction is not)