Searched defs:hb_atomic_ptr_t (Results 1 – 1 of 1) sorted by relevance
283 struct hb_atomic_ptr_t struct285 typedef typename hb_remove_pointer (P) T;287 void init (T* v_ = nullptr) { set_relaxed (v_); } in init()288 void set_relaxed (T* v_) { hb_atomic_ptr_impl_set_relaxed (&v, v_); } in set_relaxed()289 T *get_relaxed () const { return (T *) hb_atomic_ptr_impl_get_relaxed (&v); } in get_relaxed()290 T *get () const { return (T *) hb_atomic_ptr_impl_get ((void **) &v); } in get()291 …, T *new_) const { return hb_atomic_ptr_impl_cmpexch ((void **) &v, (void *) old, (void *) new_); } in cmpexch()293 T * operator -> () const { return get (); } in operator ->()294 template <typename C> operator C * () const { return get (); } in operator C*()296 T *v;