◆ atomic_ptr() [1/5]
template<
class T , bool SAFE = true>
49146 : ptr(nullptr) {
49147 }
◆ atomic_ptr() [2/5]
template<
class T , bool SAFE = true>
49148 : ptr(ptr_p) {
49149 }
◆ atomic_ptr() [3/5]
template<
class T , bool SAFE = true>
49150 : ptr(&ref) {
49151 }
◆ atomic_ptr() [4/5]
template<
class T , bool SAFE = true>
49152 : ptr(ptr_p.get()) {
49153 }
◆ atomic_ptr() [5/5]
template<
class T , bool SAFE = true>
49154 : ptr(ptr_p.get()) {
49155 }
◆ CheckValid()
template<
class T , bool SAFE = true>
49157 {
49158 if (MemorySafety<SAFE>::ENABLED) {
49159 return;
49160 }
49161 if (!ptr) {
49162 throw InternalException("Attempting to dereference an optional pointer that is not set");
49163 }
49164 }
◆ GetPointer() [1/2]
template<
class T , bool SAFE = true>
49166 {
49167 auto res = ptr.load();
49168 CheckValid(res);
49169 return res;
49170 }
◆ GetPointer() [2/2]
template<
class T , bool SAFE = true>
49172 {
49173 auto res = ptr.load();
49174 CheckValid(res);
49175 return res;
49176 }
◆ operator bool()
template<
class T , bool SAFE = true>
49178 {
49179 return ptr;
49180 }
◆ operator*() [1/2]
template<
class T , bool SAFE = true>
49181 {
49182 return *GetPointer();
49183 }
◆ operator*() [2/2]
template<
class T , bool SAFE = true>
49184 {
49185 return *GetPointer();
49186 }
◆ operator->() [1/2]
template<
class T , bool SAFE = true>
49187 {
49188 return GetPointer();
49189 }
◆ operator->() [2/2]
template<
class T , bool SAFE = true>
49190 {
49191 return GetPointer();
49192 }
◆ get() [1/2]
template<
class T , bool SAFE = true>
49193 {
49194 return GetPointer();
49195 }
◆ get() [2/2]
template<
class T , bool SAFE = true>
49196 {
49197 return GetPointer();
49198 }
◆ get_mutable()
template<
class T , bool SAFE = true>
49200 {
49201 return GetPointer();
49202 }
◆ set()
template<
class T , bool SAFE = true>
49204 {
49205 ptr = &ref;
49206 }
◆ reset()
template<
class T , bool SAFE = true>
49208 {
49209 ptr = nullptr;
49210 }
◆ operator==()
template<
class T , bool SAFE = true>
49212 {
49213 return ptr.load() == rhs.ptr.load();
49214 }
◆ operator!=()
template<
class T , bool SAFE = true>
49216 {
49217 return ptr.load() != rhs.ptr.load();
49218 }
The documentation for this class was generated from the following file: