52 return std::strong_ordering::equal;
79 template <
typename Base >
83template <
typename Base >
85 if constexpr ( std::is_integral_v < Base > ) {
87 }
else if constexpr ( std::is_same_v < Base, std::string > ) {
88 return std::string (
"initial" );
89 }
else if constexpr ( std::is_same_v < Base, InitialStateLabel > ) {
91 }
else if constexpr ( std::is_same_v < Base, object::Object > ) {
94 static_assert ( std::is_same_v < Base, Base >,
"Unsupported type of instance" );
Represents label of the final state of an automaton.
Definition: InitialStateLabel.h:36
friend ext::ostream & operator<<(ext::ostream &out, const InitialStateLabel &instance)
Definition: InitialStateLabel.cpp:16
InitialStateLabel()
Creates a new instance of the label.
std::strong_ordering operator<=>(const InitialStateLabel &) const
Definition: InitialStateLabel.h:51
static Base instance()
Factory for the label construction of the label based on given type.
Definition: InitialStateLabel.h:84
bool operator==(const InitialStateLabel &) const
Definition: InitialStateLabel.h:62
Definition: FailStateLabel.cpp:12