Lines Matching refs:T

34 template<class T> class Handle;
40 template<class T>
46 ALWAYS_INLINE Handle(const Handle<T>& handle) = default;
48 ALWAYS_INLINE Handle<T>& operator=(const Handle<T>& handle) = default;
50 ALWAYS_INLINE explicit Handle(StackReference<T>* reference) : reference_(reference) { in Handle()
53 ALWAYS_INLINE T& operator*() const REQUIRES_SHARED(Locks::mutator_lock_) { in REQUIRES_SHARED()
57 ALWAYS_INLINE T* operator->() const REQUIRES_SHARED(Locks::mutator_lock_) {
61 ALWAYS_INLINE T* Get() const REQUIRES_SHARED(Locks::mutator_lock_) { in Get()
62 return down_cast<T*>(reference_->AsMirrorPtr()); in Get()
115 template<class T>
116 class MutableHandle : public Handle<T> {
121 ALWAYS_INLINE MutableHandle(const MutableHandle<T>& handle)
124 ALWAYS_INLINE MutableHandle<T>& operator=(const MutableHandle<T>& handle)
127 ALWAYS_INLINE explicit MutableHandle(StackReference<T>* reference) in MutableHandle()
129 : Handle<T>(reference) { in MutableHandle()
132 ALWAYS_INLINE T* Assign(T* reference) REQUIRES_SHARED(Locks::mutator_lock_) { in Assign()
133 StackReference<mirror::Object>* ref = Handle<T>::GetReference(); in Assign()
134 T* old = down_cast<T*>(ref->AsMirrorPtr()); in Assign()
139 ALWAYS_INLINE T* Assign(ObjPtr<T> reference) REQUIRES_SHARED(Locks::mutator_lock_) { in Assign()
140 StackReference<mirror::Object>* ref = Handle<T>::GetReference(); in Assign()
141 T* old = down_cast<T*>(ref->AsMirrorPtr()); in Assign()
149 : Handle<T>(handle) { in MutableHandle()
154 : Handle<T>(reference) { in MutableHandle()
166 template<class T>
167 class ScopedNullHandle : public Handle<T> {
169 ScopedNullHandle() : Handle<T>(&null_ref_) {} in ScopedNullHandle()