/* utility macro */
template<typename Type>
-static inline const Type& StructAtOffsetOrNull(const void *P, unsigned int offset)
-{ return offset? (* reinterpret_cast<const Type*> ((const char *) P + offset)): Null(Type); }
+static inline const Type& StructAtOffsetOrNull (const void *P, unsigned int offset)
+{ return offset ? StructAtOffset<Type> (P, offset) : Null (Type); }
-inline unsigned int calcOffSize(unsigned int dataSize)
+inline unsigned int calcOffSize (unsigned int dataSize)
{
unsigned int size = 1;
unsigned int offset = dataSize + 1;
- while ((offset & ~0xFF) != 0)
+ while (offset & ~0xFF)
{
size++;
offset >>= 8;
struct code_pair_t
{
- hb_codepoint_t code;
- hb_codepoint_t glyph;
+ hb_codepoint_t code;
+ hb_codepoint_t glyph;
};
typedef hb_vector_t<unsigned char> str_buff_t;