Home | History | Annotate | Download | only in src

Lines Matching defs:ref_count

50   hb_atomic_int_t ref_count;
52 inline void init (int v) { ref_count.set_unsafe (v); }
53 inline int get_unsafe (void) const { return ref_count.get_unsafe (); }
54 inline int inc (void) { return ref_count.inc (); }
55 inline int dec (void) { return ref_count.dec (); }
56 inline void finish (void) { ref_count.set_unsafe (HB_REFERENCE_COUNT_POISON_VALUE); }
58 inline bool is_inert (void) const { return ref_count.get_unsafe () == HB_REFERENCE_COUNT_INERT_VALUE; }
59 inline bool is_valid (void) const { return ref_count.get_unsafe () > 0; }
99 hb_reference_count_t ref_count;
117 obj ? obj->header.ref_count.get_unsafe () : 0);
135 obj->header.ref_count.init (1);
141 return unlikely (obj->header.ref_count.is_inert ());
146 return likely (obj->header.ref_count.is_valid ());
155 obj->header.ref_count.inc ();
165 if (obj->header.ref_count.dec () != 1)
168 obj->header.ref_count.finish (); /* Do this before user_data */