8#include <ext/algorithm>
72 template <
class SymbolType >
78 template <
class SymbolType >
84 template <
class SymbolType >
90 template <
class SymbolType >
96 template <
class SymbolType >
99 template <
class SymbolType >
101 template <
class SymbolType >
103 template <
class SymbolType >
106 template <
class SymbolType >
141 template <
class SymbolType >
144 template <
class SymbolType >
146 template <
class SymbolType >
148 template <
class SymbolType >
150 template <
class SymbolType >
152 template <
class SymbolType >
154 template <
class SymbolType >
156 template <
class SymbolType >
158 template <
class SymbolType >
160 template <
class SymbolType >
162 template <
class SymbolType >
164 template <
class SymbolType >
166 template <
class SymbolType >
168 template <
class SymbolType >
170 template <
class SymbolType >
172 template <
class SymbolType >
174 template <
class SymbolType >
176 template <
class SymbolType >
178 template <
class SymbolType >
180 template <
class SymbolType >
182 template <
class SymbolType >
184 template <
class SymbolType >
187 template <
class SymbolType >
191template <
class SymbolType >
196template <
class SymbolType >
203template <
class SymbolType >
208template <
class SymbolType >
Class representing wrapper of dynamically allocated object behaving like rvalue reference.
Definition: ptr_value.hpp:40
Managed pointer simulating value like behavior.
Definition: memory.hpp:233
Represents the alternation operator in the regular expression. The node can have 0 to n children in l...
Definition: UnboundedRegExpAlternation.h:44
Represents the concatenation operator in the regular expression. The node can have 0 to n children in...
Definition: UnboundedRegExpConcatenation.h:44
Definition: UnboundedRegExpElement.h:62
Represents the empty expression in the regular expression. The node can't have any children.
Definition: UnboundedRegExpEmpty.h:41
Represents the epsilon expression in the regular expression. The node can't have any children.
Definition: UnboundedRegExpEpsilon.h:41
Represents the iteration operator in the regular expression. The node has exactly one child.
Definition: UnboundedRegExpIteration.h:43
Represents unbounded regular expression structure. Regular expression is stored as a tree of Unbounde...
Definition: UnboundedRegExpStructure.h:47
const UnboundedRegExpElement< SymbolType > & getStructure() const
Definition: UnboundedRegExpStructure.h:171
Represents the symbol in the regular expression. The can't have any children.
Definition: UnboundedRegExpSymbol.h:42
Unbounded regular expression represents regular expression. It describes regular languages....
Definition: UnboundedRegExp.h:80
Definition: RegExpOptimize.h:60
static regexp::FormalRegExp< SymbolType > optimize(const regexp::FormalRegExp< SymbolType > ®exp)
static regexp::UnboundedRegExp< SymbolType > optimize(const regexp::UnboundedRegExp< SymbolType > ®exp)
static regexp::UnboundedRegExpStructure< SymbolType > optimize(const regexp::UnboundedRegExpStructure< SymbolType > ®exp)
static regexp::FormalRegExpStructure< SymbolType > optimize(const regexp::FormalRegExpStructure< SymbolType > ®exp)
constexpr auto visit(Visitor &&vis, Variants &&... vars)
Definition: variant.hpp:42
Definition: ToAutomaton.h:15