blob: 544e12be82ed1bd4aa9f1c003204df9e7f9a9ed8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#include "Piraha.hpp"
using namespace piraha;
void Group::dump(int indent) {
for(int i=0;i<indent;i++)
std::cout << ' ';
std::cout << pattern << ": ";
if(children.size()==0) {
for(int i=start_;i<end_;i++)
std::cout << input[i];
}
std::cout << std::endl;
typedef vector<smart_ptr<Group> >::iterator group_iter;
for(group_iter gi = children.begin();
gi != children.end();
++gi) {
(*gi)->dump(indent+2);
}
}
std::string Group::substring() {
std::string sub;
for(int i=start_;i<end_;i++) {
sub += input[i];
}
return sub;
}
std::string Group::getPatternName() {
return pattern;
}
int Group::line() {
int line = 1;
for(int i=0;i<start_;i++) {
if(input[i] == '\n')
line++;
}
return line;
}
|