Represents the concatenation operator in the regular expression. The node must have exactly two children.
More...
|
| FormalRegExpConcatenation (FormalRegExpElement< SymbolType > &&left, FormalRegExpElement< SymbolType > &&right) |
| Creates a new instance of the concatenation node with explicit concatenated elements. More...
|
|
| FormalRegExpConcatenation (const FormalRegExpElement< SymbolType > &left, const FormalRegExpElement< SymbolType > &right) |
| Creates a new instance of the concatenation node with explicit concatenated elements. More...
|
|
FormalRegExpConcatenation< SymbolType > * | clone () const &override |
| ( ) const & More...
|
|
FormalRegExpConcatenation< SymbolType > * | clone () &&override |
| ( ) const & More...
|
|
ext::smart_ptr< UnboundedRegExpElement< SymbolType > > | asUnbounded () const override |
| ( ) const & More...
|
|
bool | testSymbol (const SymbolType &symbol) const override |
|
void | computeMinimalAlphabet (ext::set< SymbolType > &alphabet) const override |
|
bool | checkAlphabet (const ext::set< SymbolType > &alphabet) const override |
|
const FormalRegExpElement< SymbolType > & | getLeftElement () const |
|
const FormalRegExpElement< SymbolType > & | getRightElement () const |
|
FormalRegExpElement< SymbolType > & | getLeftElement () |
|
FormalRegExpElement< SymbolType > & | getRightElement () |
|
void | setLeftElement (FormalRegExpElement< SymbolType > &&element) |
|
void | setLeftElement (const FormalRegExpElement< SymbolType > &element) |
|
void | setRightElement (FormalRegExpElement< SymbolType > &&element) |
|
void | setRightElement (const FormalRegExpElement< SymbolType > &element) |
|
std::strong_ordering | operator<=> (const FormalRegExpElement< SymbolType > &other) const override |
| < SymbolType >::operator <=> ( const FormalRegExpElement < SymbolType > & other ) const; More...
|
|
std::strong_ordering | operator<=> (const FormalRegExpConcatenation< SymbolType > &) const |
|
bool | operator== (const FormalRegExpElement< SymbolType > &other) const override |
| < SymbolType >::operator == ( const FormalRegExpElement < SymbolType > & other ) const; More...
|
|
bool | operator== (const FormalRegExpConcatenation< SymbolType > &) const |
|
void | operator>> (ext::ostream &out) const override |
| < FormalRegExpElement < SymbolType > >::operator >> ( ext::ostream & ) More...
|
|
ext::smart_ptr< FormalRegExpElement< DefaultSymbolType > > | normalize () &&override |
| < SymbolType >::normalize ( ) && More...
|
|
| BinaryNode (const FormalRegExpElement< SymbolType > &l, const FormalRegExpElement< SymbolType > &r) |
| Constructor of the class accepting the two child nodes. More...
|
|
| BinaryNode (FormalRegExpElement< SymbolType > &&l, FormalRegExpElement< SymbolType > &&r) |
| Constructor of the class accepting the two child nodes. More...
|
|
FormalRegExpElement< SymbolType > & | getLeft () |
| Getter of the first child of the node. More...
|
|
const FormalRegExpElement< SymbolType > & | getLeft () const |
| Getter of the first child of the node. More...
|
|
void | setLeft (const FormalRegExpElement< SymbolType > &l) |
| Setter of the first child of the node. More...
|
|
void | setLeft (FormalRegExpElement< SymbolType > &&l) |
| Setter of the first child of the node. More...
|
|
FormalRegExpElement< SymbolType > & | getRight () |
| Getter of the second child of the node. More...
|
|
const FormalRegExpElement< SymbolType > & | getRight () const |
| Getter of the second child of the node. More...
|
|
void | setRight (const FormalRegExpElement< SymbolType > &r) |
| Setter of the second child of the node. More...
|
|
void | setRight (FormalRegExpElement< SymbolType > &&r) |
| Setter of the second child of the node. More...
|
|
| AnyaryNode (ext::ptr_array< Data, arity > c) |
| Constructor based on array of child nodes. More...
|
|
| ~AnyaryNode () noexcept override=default |
| Destructor of the class. More...
|
|
| AnyaryNode (const AnyaryNode &other) |
| Copy constructor. More...
|
|
| AnyaryNode (AnyaryNode &&other) noexcept |
| Move constructor. More...
|
|
AnyaryNode & | operator= (const AnyaryNode &other) |
| Copy operator of assignment. More...
|
|
AnyaryNode & | operator= (AnyaryNode &&other) noexcept |
| move operator of assignment. More...
|
|
const ext::ptr_array< Data, arity > & | getChildren () & |
| Getter of the child nodes. More...
|
|
const ext::ptr_array< Data, arity > & | getChildren () const & |
| Getter of the child nodes. More...
|
|
ext::ptr_array< Data, arity > && | getChildren () && |
| Getter of the child nodes. More...
|
|
template<size_t N> |
const Data & | getChild () const |
| Getter of the child node based on compile time index. More...
|
|
template<size_t N> |
Data & | getChild () |
| Getter of the child node based on compile time index. More...
|
|
void | setChildren (ext::ptr_array< Data, arity > c) |
| Setter of the child nodes. More...
|
|
template<size_t N> |
void | setChild (const Data &d) |
| Setter of the child node based on compile time index. More...
|
|
template<size_t N> |
void | setChild (Data &&d) |
| Setter of the child node based on compile time index. More...
|
|
ext::ptr_array< Data, arity >::iterator | begin () |
| Getter of an iterator to the begining of children array. More...
|
|
ext::ptr_array< Data, arity >::const_iterator | begin () const |
| Getter of an iterator to the begining of children array. More...
|
|
ext::ptr_array< Data, arity >::iterator | end () |
| Getter of an iterator to the end of children array. More...
|
|
ext::ptr_array< Data, arity >::const_iterator | end () const |
| Getter of an iterator to the end of children array. More...
|
|
template<class SymbolType>
class regexp::FormalRegExpConcatenation< SymbolType >
Represents the concatenation operator in the regular expression. The node must have exactly two children.
The structure is derived from BinaryNode that provides the children accessors.
The node can be visited by the FormalRegExpElement < SymbolType >::Visitor
- Template Parameters
-
SymbolType | used for the terminal alphabet |