Lines Matching refs:ref_count
56 hb_atomic_int_t ref_count; member
58 inline void init (int v) { ref_count.set_unsafe (v); } in init()
59 inline int get_unsafe (void) const { return ref_count.get_unsafe (); } in get_unsafe()
60 inline int inc (void) { return ref_count.inc (); } in inc()
61 inline int dec (void) { return ref_count.dec (); } in dec()
62 inline void finish (void) { ref_count.set_unsafe (HB_REFERENCE_COUNT_POISON_VALUE); } in finish()
64 …inline bool is_inert (void) const { return ref_count.get_unsafe () == HB_REFERENCE_COUNT_INERT_VAL… in is_inert()
65 inline bool is_valid (void) const { return ref_count.get_unsafe () > 0; } in is_valid()
105 hb_reference_count_t ref_count; member
123 obj ? obj->header.ref_count.get_unsafe () : 0); in hb_object_trace()
141 obj->header.ref_count.init (1); in hb_object_init()
147 return unlikely (obj->header.ref_count.is_inert ()); in hb_object_is_inert()
152 return likely (obj->header.ref_count.is_valid ()); in hb_object_is_valid()
161 obj->header.ref_count.inc (); in hb_object_reference()
171 if (obj->header.ref_count.dec () != 1) in hb_object_destroy()
174 obj->header.ref_count.finish (); /* Do this before user_data */ in hb_object_destroy()