mCRL2
|
Base class that should not be used. More...
#include <aterm_container.h>
Public Member Functions | |
reference_aterm ()=default | |
reference_aterm (const T_type &other) noexcept | |
template<class... Args> | |
reference_aterm (Args &&... args) noexcept | |
template<class... Args> | |
reference_aterm (const Args &... args) noexcept | |
reference_aterm (T_type &&other) noexcept | |
const reference_aterm & | operator= (const T_type &other) noexcept |
const reference_aterm & | operator= (T_type &&other) noexcept |
operator T_type & () | |
Converts implicitly to a protected term of type T. | |
operator const T_type & () const | |
void | mark (std::stack< std::reference_wrapper< detail::_aterm > > &todo) const |
Protected Types | |
typedef std::decay< T >::type | T_type |
Protected Attributes | |
T_type | m_t |
Base class that should not be used.
Definition at line 94 of file aterm_container.h.
|
protected |
Definition at line 97 of file aterm_container.h.
|
default |
|
inlinenoexcept |
Definition at line 102 of file aterm_container.h.
|
inlinenoexcept |
Definition at line 107 of file aterm_container.h.
|
inlinenoexcept |
Definition at line 112 of file aterm_container.h.
|
inlinenoexcept |
Definition at line 116 of file aterm_container.h.
|
inline |
For types that are not a std::pair, or a type convertible to an aterm_core it is necessary that a dedicated mark function is provided that calls mark_term on all aterm_core types in the class T, when this class is stored in an atermpp container. See below for an example, where the code is given for pairs, aterms and built in types. The container is traversed during garbage collection, such that all terms in these containers are protected individually, without putting them all explicitly in protection sets.
Definition at line 152 of file aterm_container.h.
|
inline |
Definition at line 140 of file aterm_container.h.
|
inline |
Converts implicitly to a protected term of type T.
Definition at line 135 of file aterm_container.h.
|
inlinenoexcept |
Definition at line 120 of file aterm_container.h.
|
inlinenoexcept |
Definition at line 127 of file aterm_container.h.
|
protected |
Definition at line 98 of file aterm_container.h.