| 197 | explicit operator bool() const noexcept { return !IsNone(ptr_); } |
| 198 | |
| 199 | google::protobuf::Arena* absl_nullable arena() const noexcept { |
| 200 | return (ptr_ & Owner::kBits) == Owner::kArenaBit |
| 201 | ? reinterpret_cast<google::protobuf::Arena*>(ptr_ & Owner::kPointerMask) |
| 202 | : nullptr; |
| 203 | } |
| 204 | |
| 205 | void reset() noexcept { |
| 206 | Destroy(ptr_); |