Represents the concatenation operator in the regular expression. The node can have 0 to n children in list of UnboundedRegExpElement as operands of the concatenation.
More...
|
| UnboundedRegExpConcatenation ()=default |
| Creates a new instance of the concatenation node. By default it is semantically equivalent to epsilon. More...
|
|
UnboundedRegExpConcatenation< SymbolType > * | clone () const &override |
| ( ) const & More...
|
|
UnboundedRegExpConcatenation< SymbolType > * | clone () &&override |
| ( ) const & More...
|
|
ext::smart_ptr< FormalRegExpElement< SymbolType > > | asFormal () const override |
|
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 ext::ptr_vector< UnboundedRegExpElement< SymbolType > > & | getElements () const |
|
const ext::ptr_vector< UnboundedRegExpElement< SymbolType > > & | getElements () |
|
void | appendElement (UnboundedRegExpElement< SymbolType > &&element) |
|
void | appendElement (const UnboundedRegExpElement< SymbolType > &element) |
|
std::strong_ordering | operator<=> (const UnboundedRegExpElement< SymbolType > &other) const override |
| < SymbolType >::operator <=> ( const UnboundedRegExpElement < SymbolType > & other ) const; More...
|
|
std::strong_ordering | operator<=> (const UnboundedRegExpConcatenation< SymbolType > &) const |
|
bool | operator== (const UnboundedRegExpElement< SymbolType > &other) const override |
| < SymbolType >::operator == ( const UnboundedRegExpElement < SymbolType > & other ) const; More...
|
|
bool | operator== (const UnboundedRegExpConcatenation< SymbolType > &) const |
|
void | operator>> (ext::ostream &out) const override |
| < UnboundedRegExpElement < SymbolType > >::operator >> ( ext::ostream & ) More...
|
|
ext::smart_ptr< UnboundedRegExpElement< DefaultSymbolType > > | normalize () &&override |
| < SymbolType >::normalize ( ) && More...
|
|
| VararyNode ()=default |
| Default constructor. Sets the vector of children to empty vector. More...
|
|
| VararyNode (ext::ptr_vector< UnboundedRegExpElement< SymbolType > > c) |
| Constructor from vector of child nodes. More...
|
|
| VararyNode (const VararyNode &other) |
| Copy constructor of the class. More...
|
|
| VararyNode (VararyNode &&other) noexcept |
| Move constructor of the class. More...
|
|
| ~VararyNode () noexcept override=default |
| Destructor of the class. More...
|
|
VararyNode & | operator= (const VararyNode &other) |
| Copy operator of assignment. More...
|
|
VararyNode & | operator= (VararyNode &&other) noexcept |
| Move operator of assignment. More...
|
|
const ext::ptr_vector< UnboundedRegExpElement< SymbolType > > & | getChildren () & |
| Getter of the vector of children. More...
|
|
const ext::ptr_vector< UnboundedRegExpElement< SymbolType > > & | getChildren () const & |
| Getter of the vector of children. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > > && | getChildren () && |
| Getter of the child nodes. More...
|
|
void | setChildren (ext::ptr_vector< UnboundedRegExpElement< SymbolType > > c) |
| Setter of the vector of children. More...
|
|
UnboundedRegExpElement< SymbolType > & | getChild (size_t index) |
| Getter of the child at given index. More...
|
|
const UnboundedRegExpElement< SymbolType > & | getChild (size_t index) const |
| Getter of the child at given index. More...
|
|
void | setChild (const UnboundedRegExpElement< SymbolType > &d, PositionIterator it) |
| Setter of the single child of the node. More...
|
|
void | setChild (UnboundedRegExpElement< SymbolType > &&d, PositionIterator it) |
| Setter of the single child of the node. More...
|
|
void | setChild (const UnboundedRegExpElement< SymbolType > &d, size_t index) |
| Setter of the single child of the node. More...
|
|
void | setChild (UnboundedRegExpElement< SymbolType > &&d, size_t index) |
| Setter of the single child of the node. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator it, const UnboundedRegExpElement< SymbolType > &d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator it, const UnboundedRegExpElement< SymbolType > &d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator it, const UnboundedRegExpElement< SymbolType > &d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator it, const UnboundedRegExpElement< SymbolType > &d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator it, UnboundedRegExpElement< SymbolType > &&d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator it, UnboundedRegExpElement< SymbolType > &&d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator it, UnboundedRegExpElement< SymbolType > &&d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator it, UnboundedRegExpElement< SymbolType > &&d) |
| Inserts a new child at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator it, InputIterator first, InputIterator last) |
| Inserts a new children from a given range at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator it, InputIterator first, InputIterator last) |
| Inserts a new children from a given range at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator it, InputIterator first, InputIterator last) |
| Inserts a new children from a given range at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | insert (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator it, InputIterator first, InputIterator last) |
| Inserts a new children from a given range at position specified by iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator it) |
| Erases a child specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator it) |
| Erases a child specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator it) |
| Erases a child specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator it) |
| Erases a child specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator first, typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator last) |
| Erases a range of children specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator first, typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator last) |
| Erases a range of children specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator first, typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator last) |
| Erases a range of children specified by an iterator. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | erase (typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator first, typename ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator last) |
| Erases a range of children specified by an iterator. More...
|
|
void | clear () |
| Erases all children. More...
|
|
void | pushBackChild (const UnboundedRegExpElement< SymbolType > &d) |
| Appends a new child at the end of the child vector. More...
|
|
void | pushBackChild (UnboundedRegExpElement< SymbolType > &&d) |
| Appends a new child at the end of the child vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | begin () |
| Getter of an iterator to the begining of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator | begin () const |
| Getter of an iterator to the begining of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | rbegin () |
| Getter of an iterator to the begining of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator | rbegin () const |
| Getter of an iterator to the begining of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::iterator | end () |
| Getter of an iterator to the end of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_iterator | end () const |
| Getter of an iterator to the end of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::reverse_iterator | rend () |
| Getter of an iterator to the end of children vector. More...
|
|
ext::ptr_vector< UnboundedRegExpElement< SymbolType > >::const_reverse_iterator | rend () const |
| Getter of an iterator to the end of children vector. More...
|
|
template<class SymbolType>
class regexp::UnboundedRegExpConcatenation< SymbolType >
Represents the concatenation operator in the regular expression. The node can have 0 to n children in list of UnboundedRegExpElement as operands of the concatenation.
The structure is derived from VararyNode that provides the children list and its accessors.
The node can be visited by the UnboundedRegExpElement < SymbolType >::Visitor
- Template Parameters
-
SymbolType | used for the terminal alphabet |