Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
#include <components.hpp>
Public Member Functions | |
Component (ComponentType element) | |
bool | set (ComponentType element) |
ComponentType & | get () |
const ComponentType & | get () const |
template<class AccessedComponentName > requires std::is_same_v < AccessedComponentName, ComponentName > | |
const Component< Derived, ComponentType, component::Value, ComponentName > & | accessComponent () const |
template<class AccessedComponentName > requires std::is_same_v < AccessedComponentName, ComponentName > Component < Derived, ComponentType, component::Value, ComponentName > | |
& | accessComponent () |
Static Public Member Functions | |
static void | registerComponent () |
static void | unregisterComponent () |
Protected Member Functions | |
void | checkState () |
Represents an element.
Derived | class representing datatype using this set. |
ComponentType | the type of element. |
ComponentName | arbitrary type used to distinguish different components. |
|
inline |
Constructs a notable element.
CommonException | if element is not available in context of datatype where the class is used |
|
inline |
Allows access to this sub-component using its name.
AccessedComponentName | type used to distinguish different elements |
|
inline |
Allows access to this sub-component using its name.
AccessedComponentName | type used to distinguish different elements |
|
inlineprotected |
Checks the state of the element.
|
inline |
Returns the current notable element of ComponentName.
|
inline |
Returns the current notable element of ComponentName.
|
inlinestatic |
Register this component's accessors to abstraction
|
inline |
Changes the notable element.
new | value of the element |
CommonException | if the new element is not available in context of datatype where the class is used |
|
inlinestatic |
Register this component's accessors to abstraction