1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package com.puppycrawl.tools.checkstyle.checks.javadoc;
21
22 import java.util.Arrays;
23 import java.util.Objects;
24
25 import com.puppycrawl.tools.checkstyle.api.DetailNode;
26 import com.puppycrawl.tools.checkstyle.utils.JavadocUtil;
27
28
29
30
31
32
33 public class JavadocNodeImpl implements DetailNode {
34
35
36
37
38 public static final JavadocNodeImpl[] EMPTY_DETAIL_NODE_ARRAY = new JavadocNodeImpl[0];
39
40
41
42
43 private int index;
44
45
46
47
48 private int type;
49
50
51
52
53 private String text;
54
55
56
57
58 private int lineNumber;
59
60
61
62
63 private int columnNumber;
64
65
66
67
68 private DetailNode[] children;
69
70
71
72
73 private DetailNode parent;
74
75 @Override
76 public int getType() {
77 return type;
78 }
79
80 @Override
81 public String getText() {
82 return text;
83 }
84
85 @Override
86 public int getLineNumber() {
87 return lineNumber;
88 }
89
90 @Override
91 public int getColumnNumber() {
92 return columnNumber;
93 }
94
95 @Override
96 public DetailNode[] getChildren() {
97 DetailNode[] nodeChildren = EMPTY_DETAIL_NODE_ARRAY;
98 if (children != null) {
99 nodeChildren = Arrays.copyOf(children, children.length);
100 }
101 return nodeChildren;
102 }
103
104 @Override
105 public DetailNode getParent() {
106 return parent;
107 }
108
109 @Override
110 public int getIndex() {
111 return index;
112 }
113
114
115
116
117
118 public void setType(int type) {
119 this.type = type;
120 }
121
122
123
124
125
126 public void setText(String text) {
127 this.text = text;
128 }
129
130
131
132
133
134 public void setLineNumber(int lineNumber) {
135 this.lineNumber = lineNumber;
136 }
137
138
139
140
141
142 public void setColumnNumber(int columnNumber) {
143 this.columnNumber = columnNumber;
144 }
145
146
147
148
149
150 public void setChildren(DetailNode... children) {
151 this.children = Arrays.copyOf(children, children.length);
152 }
153
154
155
156
157
158 public void setParent(DetailNode parent) {
159 this.parent = parent;
160 }
161
162
163
164
165
166 public void setIndex(int index) {
167 this.index = index;
168 }
169
170 @Override
171 public String toString() {
172 return "JavadocNodeImpl["
173 + "index=" + index
174 + ", type=" + JavadocUtil.getTokenName(type)
175 + ", text='" + text + '\''
176 + ", lineNumber=" + lineNumber
177 + ", columnNumber=" + columnNumber
178 + ", children=" + Objects.hashCode(children)
179 + ", parent=" + parent + ']';
180 }
181
182 }