31#ifndef ETL_SUCCESSOR_INCLUDED
32#define ETL_SUCCESSOR_INCLUDED
50 :
exception(reason_, file_name_, line_number_)
76 typedef T successor_type;
82 : p_successor(ETL_NULLPTR)
102#if ETL_CPP11_SUPPORTED
106 template <
typename... TSuccessors>
110 s.set_successor(rest...);
117 template <
typename TSuccessor>
130#if ETL_CPP11_SUPPORTED
134 template <
typename TSuccessor,
typename... TSuccessors>
155 p_successor = ETL_NULLPTR;
186 return (p_successor != ETL_NULLPTR);
191 successor_type* p_successor;
Exception for the successor.
Definition: successor.h:46
Invalid exception for successor.
Definition: successor.h:59
Adds successor traits to a class.
Definition: successor.h:73
void clear_successor()
Clear the successor.
Definition: successor.h:153
void set_successor(successor_type &s)
Set the successor.
Definition: successor.h:97
bool has_successor() const
Does this have a successor?
Definition: successor.h:184
void clear_successor_chain()
Clear the successor chain.
Definition: successor.h:161
void append_successor(TSuccessor &s)
Append a successor.
Definition: successor.h:118
successor_type & get_successor() const
Definition: successor.h:174
successor(successor_type &s)
Construct from a successor type.
Definition: successor.h:89
successor()
Default constructor.
Definition: successor.h:81
#define ETL_ASSERT(b, e)
Definition: error_handler.h:316
ETL_CONSTEXPR exception(string_type reason_, string_type, numeric_type line_)
Constructor.
Definition: exception.h:69
Definition: exception.h:47
bitset_ext
Definition: absolute.h:38