Add operator char * to the naked array types as well

This commit is contained in:
Behdad Esfahbod 2018-11-03 16:04:19 -04:00
parent d6fdae310f
commit db889c182e
2 changed files with 5 additions and 1 deletions

View File

@ -553,8 +553,10 @@ struct hb_array_t
inline unsigned int get_size (void) const { return len * sizeof (Type); }
template <typename T> inline operator T * (void) { return arrayZ; }
template <typename T> inline operator T * (void) { return arrayZ; }
template <typename T> inline operator const T * (void) const { return arrayZ; }
inline operator char * (void) { return (char *) arrayZ; }
inline operator const char * (void) const { return (const char *) arrayZ; }
inline Type * operator & (void) { return arrayZ; }
inline const Type * operator & (void) const { return arrayZ; }

View File

@ -342,6 +342,8 @@ struct UnsizedArrayOf
template <typename T> inline operator T * (void) { return arrayZ; }
template <typename T> inline operator const T * (void) const { return arrayZ; }
inline operator char * (void) { return (char *) arrayZ; }
inline operator const char * (void) const { return (const char *) arrayZ; }
inline unsigned int get_size (unsigned int len) const
{ return len * Type::static_size; }