Line 0
Link Here
|
|
|
1 |
--- src/ixlib_re_impl.hh.orig Fri Nov 28 11:43:40 2003 |
2 |
+++ src/ixlib_re_impl.hh Fri Nov 28 12:55:23 2003 |
3 |
@@ -38,7 +38,7 @@ |
4 |
|
5 |
|
6 |
template<class T> |
7 |
-ixion::regex<T>::backref_stack::rewind_info |
8 |
+typename ixion::regex<T>::backref_stack::rewind_info |
9 |
ixion::regex<T>::backref_stack::getRewindInfo() const { |
10 |
return Stack.size(); |
11 |
} |
12 |
@@ -65,7 +65,7 @@ |
13 |
template<class T> |
14 |
ixion::TSize ixion::regex<T>::backref_stack::size() { |
15 |
TSize result = 0; |
16 |
- FOREACH_CONST(first,Stack,internal_stack) |
17 |
+ FOREACH_CONST_T(first,Stack,internal_stack) |
18 |
if (first->Type == backref_entry::OPEN) result++; |
19 |
return result; |
20 |
} |
21 |
@@ -79,7 +79,7 @@ |
22 |
TIndex start; |
23 |
TIndex startlevel; |
24 |
|
25 |
- internal_stack::const_iterator first = Stack.begin(),last = Stack.end(); |
26 |
+ typename internal_stack::const_iterator first = Stack.begin(),last = Stack.end(); |
27 |
while (first != last) { |
28 |
if (first->Type == backref_entry::OPEN) { |
29 |
if (number == next_index) { |
30 |
@@ -201,7 +201,7 @@ |
31 |
|
32 |
|
33 |
template<class T> |
34 |
-ixion::regex<T>::matcher *ixion::regex<T>::quantifier::duplicate() const { |
35 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::quantifier::duplicate() const { |
36 |
quantifier *dupe = new quantifier(); |
37 |
dupe->copy(this); |
38 |
return dupe; |
39 |
@@ -328,7 +328,7 @@ |
40 |
|
41 |
|
42 |
template<class T> |
43 |
-ixion::regex<T>::matcher *ixion::regex<T>::sequence_matcher::duplicate() const { |
44 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::sequence_matcher::duplicate() const { |
45 |
sequence_matcher *dupe = new sequence_matcher(MatchStr); |
46 |
dupe->copy(this); |
47 |
return dupe; |
48 |
@@ -349,7 +349,7 @@ |
49 |
|
50 |
// regex::any_matcher --------------------------------------------------------- |
51 |
template<class T> |
52 |
-ixion::regex<T>::matcher *ixion::regex<T>::any_matcher::duplicate() const { |
53 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::any_matcher::duplicate() const { |
54 |
any_matcher *dupe = new any_matcher(); |
55 |
dupe->copy(this); |
56 |
return dupe; |
57 |
@@ -360,7 +360,7 @@ |
58 |
|
59 |
// regex::start_matcher --------------------------------------------------------- |
60 |
template<class T> |
61 |
-ixion::regex<T>::matcher *ixion::regex<T>::start_matcher::duplicate() const { |
62 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::start_matcher::duplicate() const { |
63 |
start_matcher *dupe = new start_matcher(); |
64 |
dupe->copy(this); |
65 |
return dupe; |
66 |
@@ -379,7 +379,7 @@ |
67 |
|
68 |
// regex::end_matcher --------------------------------------------------------- |
69 |
template<class T> |
70 |
-ixion::regex<T>::matcher *ixion::regex<T>::end_matcher::duplicate() const { |
71 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::end_matcher::duplicate() const { |
72 |
end_matcher *dupe = new end_matcher(); |
73 |
dupe->copy(this); |
74 |
return dupe; |
75 |
@@ -398,7 +398,7 @@ |
76 |
|
77 |
// regex::backref_open_matcher ------------------------------------------------ |
78 |
template<class T> |
79 |
-ixion::regex<T>::matcher *ixion::regex<T>::backref_open_matcher::duplicate() const { |
80 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::backref_open_matcher::duplicate() const { |
81 |
backref_open_matcher *dupe = new backref_open_matcher(); |
82 |
dupe->copy(this); |
83 |
return dupe; |
84 |
@@ -409,7 +409,7 @@ |
85 |
|
86 |
template<class T> |
87 |
bool ixion::regex<T>::backref_open_matcher::match(backref_stack &brstack,T const &candidate,TIndex at) { |
88 |
- backref_stack::rewind_info ri = brstack.getRewindInfo(); |
89 |
+ typename backref_stack::rewind_info ri = brstack.getRewindInfo(); |
90 |
brstack.open(at); |
91 |
|
92 |
bool result = matchNext(brstack,candidate,at); |
93 |
@@ -424,7 +424,7 @@ |
94 |
|
95 |
// regex::backref_close_matcher ----------------------------------------------- |
96 |
template<class T> |
97 |
-ixion::regex<T>::matcher *ixion::regex<T>::backref_close_matcher::duplicate() const { |
98 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::backref_close_matcher::duplicate() const { |
99 |
backref_close_matcher *dupe = new backref_close_matcher(); |
100 |
dupe->copy(this); |
101 |
return dupe; |
102 |
@@ -435,7 +435,7 @@ |
103 |
|
104 |
template<class T> |
105 |
bool ixion::regex<T>::backref_close_matcher::match(backref_stack &brstack,T const &candidate,TIndex at) { |
106 |
- backref_stack::rewind_info ri = brstack.getRewindInfo(); |
107 |
+ typename backref_stack::rewind_info ri = brstack.getRewindInfo(); |
108 |
brstack.close(at); |
109 |
|
110 |
bool result = matchNext(brstack,candidate,at); |
111 |
@@ -470,7 +470,7 @@ |
112 |
|
113 |
|
114 |
template<class T> |
115 |
-ixion::regex<T>::matcher *ixion::regex<T>::alternative_matcher::duplicate() const { |
116 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::alternative_matcher::duplicate() const { |
117 |
alternative_matcher *dupe = new alternative_matcher(); |
118 |
dupe->copy(this); |
119 |
return dupe; |
120 |
@@ -484,7 +484,7 @@ |
121 |
TSize result = 0; |
122 |
bool is_first = true; |
123 |
|
124 |
- FOREACH_CONST(first,AltList,alt_list) |
125 |
+ FOREACH_CONST_T(first,AltList,alt_list) |
126 |
if (is_first) { |
127 |
result = (*first)->minimumMatchLength(); |
128 |
is_first = true; |
129 |
@@ -500,7 +500,7 @@ |
130 |
|
131 |
|
132 |
template<class T> |
133 |
-void ixion::regex<T>::alternative_matcher::setNext(matcher *next,bool ownnext = true) { |
134 |
+void ixion::regex<T>::alternative_matcher::setNext(matcher *next,bool ownnext) { |
135 |
matcher::setNext(next); |
136 |
Connector.setNext(next,false); |
137 |
} |
138 |
@@ -524,7 +524,7 @@ |
139 |
|
140 |
template<class T> |
141 |
bool ixion::regex<T>::alternative_matcher::match(backref_stack &brstack,T const &candidate,TIndex at) { |
142 |
- std::vector<matcher *>::iterator first = AltList.begin(),last = AltList.end(); |
143 |
+ typename std::vector<matcher *>::iterator first = AltList.begin(),last = AltList.end(); |
144 |
while (first != last) { |
145 |
if ((*first)->match(brstack,candidate,at)) { |
146 |
MatchLength = 0; |
147 |
@@ -548,7 +548,7 @@ |
148 |
super::copy(src); |
149 |
Connector.setNext(Next,false); |
150 |
|
151 |
- FOREACH_CONST(first,src->AltList,alt_list) |
152 |
+ FOREACH_CONST_T(first,src->AltList,alt_list) |
153 |
addAlternative((*first)->duplicate()); |
154 |
} |
155 |
|
156 |
@@ -565,7 +565,7 @@ |
157 |
|
158 |
|
159 |
template<class T> |
160 |
-ixion::regex<T>::matcher *ixion::regex<T>::backref_matcher::duplicate() const { |
161 |
+typename ixion::regex<T>::matcher *ixion::regex<T>::backref_matcher::duplicate() const { |
162 |
backref_matcher *dupe = new backref_matcher(Backref); |
163 |
dupe->copy(this); |
164 |
return dupe; |