Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
Represents unbounded regular expression structure. Regular expression is stored as a tree of UnboundedRegExpElements. More...
#include <FormalRTEStructure.h>
Public Member Functions | |
FormalRTEStructure () | |
Creates a new instance of the expression structure. Defaultly created structure is empty expression. More... | |
FormalRTEStructure (FormalRTEElement< SymbolType > &&structure) | |
Creates a new instance of the expression structure. The new instance contains structure as provided by the parameter. More... | |
FormalRTEStructure (const FormalRTEElement< SymbolType > &structure) | |
Creates a new instance of the expression structure. The new instance contains structure as provided by the parameter. More... | |
const FormalRTEElement< SymbolType > & | getStructure () const |
FormalRTEElement< SymbolType > & | getStructure () |
void | setStructure (FormalRTEElement< SymbolType > &¶m) |
void | setStructure (const FormalRTEElement< SymbolType > &structure) |
FormalRTEStructure< DefaultSymbolType > | normalize () && |
Performs the type normalization of the rte structure. More... | |
Friends | |
ext::ostream & | operator<< (ext::ostream &out, const FormalRTEStructure< SymbolType > &structure) |
Strucuture printer to the stream. More... | |
std::strong_ordering | operator<=> (const FormalRTEStructure< SymbolType > &first, const FormalRTEStructure< SymbolType > &second) |
Three way comparison operator implementation for the expression structure. More... | |
bool | operator== (const FormalRTEStructure< SymbolType > &first, const FormalRTEStructure< SymbolType > &second) |
Equality operator implementation for the expression structure. More... | |
Represents unbounded regular expression structure. Regular expression is stored as a tree of UnboundedRegExpElements.
SymbolType | used for the symbol part of the ranked symbol |
|
explicit |
Creates a new instance of the expression structure. Defaultly created structure is empty expression.
|
explicit |
Creates a new instance of the expression structure. The new instance contains structure as provided by the parameter.
structure | the expression structure. |
|
explicit |
Creates a new instance of the expression structure. The new instance contains structure as provided by the parameter.
structure | the expression structure. |
FormalRTEElement< SymbolType > & rte::FormalRTEStructure< SymbolType >::getStructure |
Getter of the root of the structure.
const FormalRTEElement< SymbolType > & rte::FormalRTEStructure< SymbolType >::getStructure |
Getter of the root of the structure.
|
inline |
Performs the type normalization of the rte structure.
void rte::FormalRTEStructure< SymbolType >::setStructure | ( | const FormalRTEElement< SymbolType > & | structure | ) |
Sets the root node of the expression structure
structure | new root node of the structure |
void rte::FormalRTEStructure< SymbolType >::setStructure | ( | FormalRTEElement< SymbolType > && | param | ) |
Sets the root node of the expression structure
structure | new root node of the structure |
|
friend |
Strucuture printer to the stream.
out | the output stream |
structure | the structure to print |
|
friend |
Three way comparison operator implementation for the expression structure.
first | the first instance |
second | the second instance |
|
friend |
Equality operator implementation for the expression structure.
first | the first instance |
second | the second instance |