Lines Matching refs:object
68 #define HB_SHAPER_DATA_TYPE(shaper, object) struct hb_##shaper##_shaper_##object##_data_t argument
69 #define HB_SHAPER_DATA_INSTANCE(shaper, object, instance) (* (HB_SHAPER_DATA_TYPE(shaper, object) *… argument
70 #define HB_SHAPER_DATA(shaper, object) HB_SHAPER_DATA_INSTANCE (shaper, object, object) argument
71 #define HB_SHAPER_DATA_CREATE_FUNC(shaper, object) _hb_##shaper##_shaper_##object##_data_create argument
72 #define HB_SHAPER_DATA_DESTROY_FUNC(shaper, object) _hb_##shaper##_shaper_##object##_data_destroy argument
74 #define HB_SHAPER_DATA_PROTOTYPE(shaper, object) \ argument
75 HB_SHAPER_DATA_TYPE (shaper, object); /* Type forward declaration. */ \
76 extern "C" HB_INTERNAL HB_SHAPER_DATA_TYPE (shaper, object) * \
77 …HB_SHAPER_DATA_CREATE_FUNC (shaper, object) (hb_##object##_t *object HB_SHAPER_DATA_CREATE_FUNC_EX…
79 HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (HB_SHAPER_DATA_TYPE (shaper, object) *data)
81 #define HB_SHAPER_DATA_DESTROY(shaper, object) \ argument
82 if (HB_SHAPER_DATA_TYPE (shaper, object) *data = HB_SHAPER_DATA (shaper, object)) \
84 HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (data);
86 #define HB_SHAPER_DATA_ENSURE_DECLARE(shaper, object) \ argument
88 hb_##shaper##_shaper_##object##_data_ensure (hb_##object##_t *object) \
91 …PER_DATA_TYPE (shaper, object) *data = (HB_SHAPER_DATA_TYPE (shaper, object) *) hb_atomic_ptr_get …
93 data = HB_SHAPER_DATA_CREATE_FUNC (shaper, object) (object); \
95 data = (HB_SHAPER_DATA_TYPE (shaper, object) *) HB_SHAPER_DATA_INVALID; \
96 if (!hb_atomic_ptr_cmpexch (&HB_SHAPER_DATA (shaper, object), NULL, data)) { \
100 HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (data); \