/* Misc */
+HB_END_DECLS
/* Pre-mature optimization:
* Checks for lo <= u <= hi but with an optimization if lo and hi
* are only different in a contiguous set of lower-most bits.
*/
-static inline bool
-hb_codepoint_in_range (hb_codepoint_t u, hb_codepoint_t lo, hb_codepoint_t hi)
+template <typename T> inline bool
+hb_in_range (T u, T lo, T hi)
{
if ( ((lo^hi) & lo) == 0 &&
((lo^hi) & hi) == (lo^hi) &&
return lo <= u && u <= hi;
}
+HB_BEGIN_DECLS
+
/* Useful for set-operations on small enums */
#define FLAG(x) (1<<(x))
+
HB_END_DECLS
#endif /* HB_PRIVATE_HH */