![]() |
Kea
1.5.0
|
A char[S] buffer to store and retrieve objects. More...
#include <agent_parser.h>
Public Types | |
| typedef variant< S > | self_type |
| Type of *this. More... | |
Public Member Functions | |
| variant () | |
| Empty construction. More... | |
| template<typename T > | |
| variant (YY_RVREF(T) t) | |
| Construct and fill. More... | |
| ~variant () | |
| Destruction, allowed only if empty. More... | |
| template<typename T > | |
| T & | as () |
| Accessor to a built T. More... | |
| template<typename T > | |
| const T & | as () const |
| Const accessor to a built T (for printer). More... | |
| template<typename T > | |
| T & | build () |
| Instantiate an empty T in here. More... | |
| template<typename T > | |
| T & | build (const T &t) |
| Instantiate a T in here from t. More... | |
| template<typename T > | |
| void | copy (const self_type &other) |
| Copy the content of other to this. More... | |
| template<typename T > | |
| void | destroy () |
| Destroy the stored T. More... | |
| template<typename T > | |
| T & | emplace () |
| Instantiate an empty T in here. More... | |
| template<typename T > | |
| T & | emplace (const T &t) |
| Instantiate a T in here from t. More... | |
| template<typename T > | |
| void | move (self_type &other) |
| Move the content of other to this. More... | |
| template<typename T > | |
| void | swap (self_type &other) |
| Swap the content with other, of same type. More... | |
A char[S] buffer to store and retrieve objects.
Sort of a variant, but does not keep track of the nature of the stored data, since that knowledge is available via the current state.
Definition at line 295 of file agent_parser.h.
| typedef variant<S> isc::agent::variant< S >::self_type |
Type of *this.
Definition at line 298 of file agent_parser.h.
|
inline |
Empty construction.
Definition at line 301 of file agent_parser.h.
Construct and fill.
Definition at line 308 of file agent_parser.h.
|
inline |
Destruction, allowed only if empty.
Definition at line 316 of file agent_parser.h.
Accessor to a built T.
Definition at line 377 of file agent_parser.h.
Referenced by isc::agent::variant< sizeof(union_type)>::copy(), isc::agent::variant< sizeof(union_type)>::move(), and isc::agent::variant< sizeof(union_type)>::swap().
Const accessor to a built T (for printer).
Definition at line 388 of file agent_parser.h.
Instantiate an empty T in here.
Obsolete, use emplace.
Definition at line 360 of file agent_parser.h.
Instantiate a T in here from t.
Obsolete, use emplace.
Definition at line 369 of file agent_parser.h.
|
inline |
Copy the content of other to this.
Definition at line 443 of file agent_parser.h.
Destroy the stored T.
Definition at line 451 of file agent_parser.h.
Referenced by isc::agent::variant< sizeof(union_type)>::move().
Instantiate an empty T in here.
Definition at line 324 of file agent_parser.h.
Instantiate a T in here from t.
Definition at line 347 of file agent_parser.h.
|
inline |
|
inline |
Swap the content with other, of same type.
Both variants must be built beforehand, because swapping the actual data requires reading it (with as()), and this is not possible on unconstructed variants: it would require some dynamic testing, which should not be the variant's responsibility. Swapping between built and (possibly) non-built is done with variant::move ().
Definition at line 406 of file agent_parser.h.
| long double isc::agent::variant< S >::yyalign_me |
Strongest alignment constraints.
Definition at line 483 of file agent_parser.h.
| char isc::agent::variant< S >::yyraw[S] |
A buffer large enough to store any of the semantic values.
Definition at line 485 of file agent_parser.h.