Lines Matching refs:T

29 template<class T> class Handle;
35 template<class T>
41 ALWAYS_INLINE ConstHandle(const ConstHandle<T>& handle) : reference_(handle.reference_) { in ConstHandle()
44 ALWAYS_INLINE ConstHandle<T>& operator=(const ConstHandle<T>& handle) {
49 ALWAYS_INLINE explicit ConstHandle(StackReference<T>* reference) : reference_(reference) { in ConstHandle()
52 ALWAYS_INLINE T& operator*() const SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) { in SHARED_LOCKS_REQUIRED()
56 ALWAYS_INLINE T* operator->() const SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) {
60 ALWAYS_INLINE T* Get() const SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) { in Get()
61 return down_cast<T*>(reference_->AsMirrorPtr()); in Get()
101 template<class T>
102 class Handle : public ConstHandle<T> {
107 ALWAYS_INLINE Handle(const Handle<T>& handle) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) in Handle()
108 : ConstHandle<T>(handle.reference_) { in Handle()
111 ALWAYS_INLINE Handle<T>& operator=(const Handle<T>& handle)
113 ConstHandle<T>::operator=(handle); in SHARED_LOCKS_REQUIRED()
117 ALWAYS_INLINE explicit Handle(StackReference<T>* reference) in Handle()
119 : ConstHandle<T>(reference) { in Handle()
122 ALWAYS_INLINE T* Assign(T* reference) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) { in Assign()
123 StackReference<mirror::Object>* ref = Handle<T>::GetReference(); in Assign()
124 T* old = down_cast<T*>(ref->AsMirrorPtr()); in Assign()
131 : ConstHandle<T>(handle) { in Handle()
136 : ConstHandle<T>(reference) { in Handle()
147 template<class T>
148 class NullHandle : public Handle<T> {
150 NullHandle() : Handle<T>(&null_ref_) { in NullHandle()