Nonlinear tree pattern represented as linear sequece as result of preorder traversal. 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 and nonlinear variables each to represent same subtree (in the particular occurrence in a tree).
More...
|
| PrefixRankedNonlinearPattern (common::ranked_symbol< SymbolType > subtreeWildcard, ext::set< common::ranked_symbol< SymbolType > > nonlinearVariables, ext::set< common::ranked_symbol< SymbolType > > alphabet, ext::vector< common::ranked_symbol< SymbolType > > data) |
| Creates a new instance of the pattern with concrete alphabet, content, wildcard, and nonlinear variables. More...
|
|
| PrefixRankedNonlinearPattern (common::ranked_symbol< SymbolType > subtreeWildcard, ext::set< common::ranked_symbol< SymbolType > > nonlinearVariables, ext::vector< common::ranked_symbol< SymbolType > > data) |
| Creates a new instance of the pattern with concrete content, wildcard, and nonlinear variables. The alphabet is deduced from the content. More...
|
|
| PrefixRankedNonlinearPattern (common::ranked_symbol< SymbolType > subtreeWildcard, ext::vector< common::ranked_symbol< SymbolType > > data) |
| Creates a new instance of the pattern with concrete content and wildcard. The alphabet is deduced from the content. Nonlinear variables are defaultly constructed to empty set. More...
|
|
| PrefixRankedNonlinearPattern (const PrefixRankedTree< SymbolType > &tree) |
| Creates a new instance of the pattern based on the PrefixRankedTree. The linear representation is copied from tree. Alphabet as well. subtree wildcard is defaultly constructed and nonlinear variables are defaultly constructed to empty set. More...
|
|
| PrefixRankedNonlinearPattern (const PrefixRankedPattern< SymbolType > &tree) |
| Creates a new instance of the pattern based on the PrefixRankedPattern. The linear representation is copied from tree. Subtree wildcard and alphabet as well. Nonlinear variables are defaultly constructed to empty set. More...
|
|
| PrefixRankedNonlinearPattern (const RankedTree< SymbolType > &tree) |
| Creates a new instance of the pattern based on the RankedTree. The linear representation is constructed by preorder traversal on the tree parameter. The subtree wildcard is defaultly constructed and nonlinear variables are defaultly constructed to empty set. More...
|
|
| PrefixRankedNonlinearPattern (const RankedPattern< SymbolType > &tree) |
| Creates a new instance of the pattern based on the RankedPattern. The linear representation is constructed by preorder traversal on the tree parameter. The subtree wildcard is provided by the pattern parameter and nonlinear variables are defaultly constructed to empty set. More...
|
|
| PrefixRankedNonlinearPattern (const RankedNonlinearPattern< SymbolType > &tree) |
| Creates a new instance of the pattern based on the RankedNonlinearPattern. The linear representation is constructed by preorder traversal on the tree parameter. The subtree wildcard and nonlinear variables are provided by the pattern parameter. 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::set< common::ranked_symbol< SymbolType > > & | getNonlinearVariables () const & |
|
ext::set< common::ranked_symbol< SymbolType > > && | getNonlinearVariables () && |
|
const ext::vector< common::ranked_symbol< SymbolType > > & | getContent () const & |
|
ext::vector< common::ranked_symbol< SymbolType > > && | getContent () && |
|
void | setContent (ext::vector< common::ranked_symbol< SymbolType > > data) |
|
bool | isEmpty () const |
|
auto | operator<=> (const PrefixRankedNonlinearPattern &other) const |
|
bool | operator== (const PrefixRankedNonlinearPattern &other) const |
|
| operator string::LinearString< common::ranked_symbol< SymbolType > > () const |
| Creates a new instance of the string from a linear representation of a tree. More...
|
|
void | accessComponent () |
|
template<class SymbolType>
class tree::PrefixRankedNonlinearPattern< SymbolType >
Nonlinear tree pattern represented as linear sequece as result of preorder traversal. 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 and nonlinear variables each to represent same subtree (in the particular occurrence in a tree).
T = (A, C, W \in A, V \in A ), A (Alphabet) = finite set of ranked symbols, C (Content) = linear representation of the pattern content W (Wildcard) = special symbol representing any subtree V (Variables) = finite set of special symbols each representing same subtree
- Template Parameters
-
SymbolType | used for the symbol part of the ranked symbol |