Include file:
#include "mcrl2/utilities/tagged_pointer.h
mcrl2::utilities::
tagged_pointer
¶A pointer storage object that uses a least significant bit as a mark. Can be used by objects that are 8 bytes aligned in memory.
mcrl2::utilities::tagged_pointer::
m_pointer
¶defined
() constget
()¶get
() constoperator!=
(const tagged_pointer &other) const¶operator!=
(std::nullptr_t) const¶operator*
()¶operator*
() constoperator->
()¶operator->
() constoperator<
(const tagged_pointer &other) const noexcept¶operator<=
(const tagged_pointer &other) const noexcept¶operator=
(std::nullptr_t)¶operator==
(const tagged_pointer &other) const¶operator==
(std::nullptr_t) const¶operator>
(const tagged_pointer &other) const noexcept¶operator>=
(const tagged_pointer &other) const noexcept¶tag
() constApply a tag to the pointer that can be checked with tagged().
tagged
() constReturns: True iff this pointer has been tagged,
tagged_pointer
()¶tagged_pointer
(T *p)¶untag
() constRemove the tag.