1
2
3
4
5
6 #include <sng2html/sng2html/RegEx.hpp>
7
8 namespace sng2html { namespace sng2html {
9
10 RegExpression::RegExpression()
11 {
12 }
13
14 RegExpression::~RegExpression()
15 {
16 }
17
18 UnaryRegExpression::UnaryRegExpression(RegExpression* child_) : child(child_)
19 {
20 }
21
22 BinaryRegExpression::BinaryRegExpression(RegExpression* left_, RegExpression* right_) : left(left_), right(right_)
23 {
24 }
25
26 Alt::Alt(RegExpression* left_, RegExpression* right_) : BinaryRegExpression(left_, right_)
27 {
28 }
29
30 void Alt::Accept(Visitor& visitor)
31 {
32 visitor.Visit(*this);
33 }
34
35 Cat::Cat(RegExpression* left_, RegExpression* right_) : BinaryRegExpression(left_, right_)
36 {
37 }
38
39 void Cat::Accept(Visitor& visitor)
40 {
41 visitor.Visit(*this);
42 }
43
44 Kleene::Kleene(RegExpression* child_) : UnaryRegExpression(child_)
45 {
46 }
47
48 void Kleene::Accept(Visitor& visitor)
49 {
50 visitor.Visit(*this);
51 }
52
53 Pos::Pos(RegExpression* child_) : UnaryRegExpression(child_)
54 {
55 }
56
57 void Pos::Accept(Visitor& visitor)
58 {
59 visitor.Visit(*this);
60 }
61
62 Opt::Opt(RegExpression* child_) : UnaryRegExpression(child_)
63 {
64 }
65
66 void Opt::Accept(Visitor& visitor)
67 {
68 visitor.Visit(*this);
69 }
70
71 ParenExpr::ParenExpr(RegExpression* child_) : UnaryRegExpression(child_)
72 {
73 }
74
75 void ParenExpr::Accept(Visitor& visitor)
76 {
77 visitor.Visit(*this);
78 }
79
80 SymbolExpr::SymbolExpr(Symbol* symbol_) : symbol(symbol_)
81 {
82 }
83
84 void SymbolExpr::Accept(Visitor& visitor)
85 {
86 visitor.Visit(*this);
87 }
88
89 RefExpr::RefExpr(const std::u32string& exprId_) : exprId(exprId_)
90 {
91 }
92
93 void RefExpr::Accept(Visitor& visitor)
94 {
95 visitor.Visit(*this);
96 }
97
98 } }