71 typedef typename PointerToBase<T>::To To;
73 ALWAYS_INLINE constexpr
PointerTo() noexcept =
default;
74 ALWAYS_INLINE
explicit constexpr
PointerTo(std::nullptr_t) noexcept {}
75 ALWAYS_INLINE
PointerTo(To *ptr) noexcept;
82 ALWAYS_INLINE
explicit PointerTo(Y *ptr) noexcept;
95 constexpr To &operator *()
const noexcept;
96 constexpr To *operator -> ()
const noexcept;
98 constexpr
operator T *()
const noexcept;
115 constexpr To *
p()
const noexcept;
146 typedef typename PointerToBase<T>::To To;
149 ALWAYS_INLINE
explicit constexpr
ConstPointerTo(std::nullptr_t) noexcept {}
181 constexpr
const To &operator *()
const noexcept;
182 constexpr
const To *operator -> ()
const noexcept;
183 constexpr
operator const T *()
const noexcept;
185 INLINE
const T *&
cheat();
188 constexpr
const To *
p()
const noexcept;
241 #define PT(type) PointerTo< type > 242 #define CPT(type) ConstPointerTo< type > 249 return T::get_class_type();
254 return T::get_class_type();
void clear()
A convenient way to set the PointerTo object to NULL.
constexpr To * p() const noexcept
Returns an ordinary pointer instead of a PointerTo.
const T *& cheat()
Returns a reference to the underlying pointer.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
constexpr bool is_null() const
Returns true if the PointerTo is a NULL pointer, false otherwise.
This is the base class for PointerTo and ConstPointerTo.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
constexpr const To * p() const noexcept
Returns an ordinary pointer instead of a ConstPointerTo.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A ConstPointerTo is similar to a PointerTo, except it keeps a const pointer to the thing.
This file defines the classes PointerTo and ConstPointerTo (and their abbreviations,...
T *& cheat()
Returns a reference to the underlying pointer.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.