Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
Tree pattern represented in its natural representation. The representation is so called ranked, therefore it consists of ranked symbols. The rank of the ranked symbol needs to be compatible with unsigned integer. Additionally the pattern contains a special wildcard symbol representing any subtree. More...
#include <RankedPattern.h>
Public Member Functions | |
RankedPattern (common::ranked_symbol< SymbolType > subtreeWildcard, ext::set< common::ranked_symbol< SymbolType > > alphabet, ext::tree< common::ranked_symbol< SymbolType > > pattern) | |
Creates a new instance of the pattern with concrete alphabet, content, and wildcard. More... | |
RankedPattern (common::ranked_symbol< SymbolType > subtreeWildcard, ext::tree< common::ranked_symbol< SymbolType > > pattern) | |
Creates a new instance of the pattern with concrete content and wildcard. The alphabet is deduced from the content. More... | |
RankedPattern (const UnrankedPattern< SymbolType > &other) | |
Creates a new instance of the pattern based on UnrankedPattern, the alphabet is created from the content of the UnrankedPattern. The alphabet is created since ranks cannot be deduced. More... | |
const ext::set< common::ranked_symbol< SymbolType > > & | getAlphabet () const & |
ext::set< common::ranked_symbol< SymbolType > > && | getAlphabet () && |
void | extendAlphabet (const ext::set< common::ranked_symbol< SymbolType > > &symbols) |
const common::ranked_symbol< SymbolType > & | getSubtreeWildcard () const & |
common::ranked_symbol< SymbolType > && | getSubtreeWildcard () && |
const ext::tree< common::ranked_symbol< SymbolType > > & | getContent () const & |
ext::tree< common::ranked_symbol< SymbolType > > && | getContent () && |
void | setTree (ext::tree< common::ranked_symbol< SymbolType > > pattern) |
auto | operator<=> (const RankedPattern &other) const |
bool | operator== (const RankedPattern &other) const |
void | nicePrint (ext::ostream &os) const |
![]() | |
void | accessComponent () |
Friends | |
ext::ostream & | operator<< (ext::ostream &out, const RankedPattern &instance) |
Additional Inherited Members | |
![]() | |
static void | registerComponent () |
static void | unregisterComponent () |
Tree pattern represented in its natural representation. The representation is so called ranked, therefore it consists of ranked symbols. The rank of the ranked symbol needs to be compatible with unsigned integer. Additionally the pattern contains a special wildcard symbol representing any subtree.
T = (A, C, W \in ( A \minus B ) ), A (Alphabet) = finite set of ranked symbols, C (Content) = pattern in its natural representation W (Wildcard) = special symbol representing any subtree
SymbolType | used for the symbol part of the ranked symbol |
|
explicit |
Creates a new instance of the pattern with concrete alphabet, content, and wildcard.
subtreeWildcard | the wildcard symbol |
alphabet | the initial alphabet of the pattern |
pattern | the initial content in it's natural representation |
|
explicit |
Creates a new instance of the pattern with concrete content and wildcard. The alphabet is deduced from the content.
subtreeWildcard | the wildcard symbol |
pattern | the initial content in it's natural representation |
|
explicit |
Creates a new instance of the pattern based on UnrankedPattern, the alphabet is created from the content of the UnrankedPattern. The alphabet is created since ranks cannot be deduced.
other | the pattern represented as UnrankedNonlinearPattern |
|
inline |
Adder of an alphabet symbols.
symbols | the new symbols to be added to the alphabet |
|
inline |
Getter of the alphabet.
|
inline |
Getter of the alphabet.
ext::tree< common::ranked_symbol< SymbolType > > && tree::RankedPattern< SymbolType >::getContent | ( | ) | && |
Getter of the pattern representation.
const ext::tree< common::ranked_symbol< SymbolType > > & tree::RankedPattern< SymbolType >::getContent | ( | ) | const & |
Getter of the pattern representation.
|
inline |
Getter of the wildcard symbol.
|
inline |
Getter of the wildcard symbol.
void tree::RankedPattern< SymbolType >::nicePrint | ( | ext::ostream & | os | ) | const |
Nice printer of the tree natural representation
os | the output stream to print to |
|
inline |
The three way comparison implementation
other | the other instance |
other
.
|
inline |
The equality comparison implementation.
other | the other object to compare with. |
void tree::RankedPattern< SymbolType >::setTree | ( | ext::tree< common::ranked_symbol< SymbolType > > | pattern | ) |
Setter of the representation of the pattern.
TreeException | in same situations as checkAlphabet and checkArities |
pattern | new representation of the pattern. |
|
friend |
Print this object as raw representation to ostream.
out | ostream where to print |
instance | object to print |