40template <
class SymbolType >
46 visitor.
visit ( *
this );
53 visitor.
visit ( std::move ( *
this ) );
96 if (
ext::type_index (
typeid ( *
this ) ) ==
ext::type_index (
typeid ( other ) ) )
return * this <=>
static_cast < decltype ( ( * this ) )
> ( other );
114 if (
ext::type_index (
typeid ( *
this ) ) ==
ext::type_index (
typeid ( other ) ) )
return *
this ==
static_cast < decltype ( ( * this ) )
> ( other );
143#include "../formal/FormalRegExpEpsilon.h"
147template <
class SymbolType >
149 return new UnboundedRegExpEpsilon ( *
this );
152template <
class SymbolType >
154 return new UnboundedRegExpEpsilon ( std::move ( *
this ) );
157template <
class SymbolType >
162template <
class SymbolType >
164 return std::strong_ordering::equal;
167template <
class SymbolType >
172template <
class SymbolType >
174 out <<
"(UnboundedRegExpEpsilon)";
177template <
class SymbolType >
182template <
class SymbolType >
187template <
class SymbolType >
Nullary node is specialisation of Anyary node to no children.
Definition: tree_base.hpp:358
Managed pointer simulating value like behavior.
Definition: memory.hpp:233
Definition: typeindex.h:37
Definition: UnboundedRegExpElement.h:81
Definition: UnboundedRegExpElement.h:67
virtual void visit(const UnboundedRegExpAlternation< SymbolType > &)=0
Definition: UnboundedRegExpElement.h:62
Represents the epsilon expression in the regular expression. The node can't have any children.
Definition: UnboundedRegExpEpsilon.h:41
ext::smart_ptr< FormalRegExpElement< SymbolType > > asFormal() const override
Definition: UnboundedRegExpEpsilon.h:158
bool checkAlphabet(const ext::set< SymbolType > &alphabet) const override
Definition: UnboundedRegExpEpsilon.h:183
UnboundedRegExpEpsilon< SymbolType > * clone() const &override
( ) const &
void operator>>(ext::ostream &out) const override
< UnboundedRegExpElement < SymbolType > >::operator >> ( ext::ostream & )
Definition: UnboundedRegExpEpsilon.h:173
bool operator==(const UnboundedRegExpElement< SymbolType > &other) const override
< SymbolType >::operator == ( const UnboundedRegExpElement < SymbolType > & other ) const;
Definition: UnboundedRegExpEpsilon.h:113
ext::smart_ptr< UnboundedRegExpElement< DefaultSymbolType > > normalize() &&override
< SymbolType >::normalize ( ) &&
Definition: UnboundedRegExpEpsilon.h:136
bool testSymbol(const SymbolType &symbol) const override
Definition: UnboundedRegExpEpsilon.h:178
std::strong_ordering operator<=>(const UnboundedRegExpElement< SymbolType > &other) const override
< SymbolType >::operator <=> ( const UnboundedRegExpElement < SymbolType > & other ) const;
Definition: UnboundedRegExpEpsilon.h:95
UnboundedRegExpEpsilon()=default
Creates a new instance of the epsilon node.
void computeMinimalAlphabet(ext::set< SymbolType > &alphabet) const override
Definition: UnboundedRegExpEpsilon.h:188
Definition: BarSymbol.cpp:12
typename T::SymbolType SymbolType
Definition: ReachableStates.h:176
Definition: sigHandler.cpp:20
Definition: ToAutomaton.h:15
Definition: FordFulkerson.hpp:16