MCPcopy Index your code
hub / github.com/apache/groovy / scanScript

Method scanScript

src/main/java/org/apache/groovy/antlr/LexerFrame.java:191–232  ·  view source on GitHub ↗
(final StringReader reader)

Source from the content-addressed store, hash-verified

189 }
190
191 private void scanScript(final StringReader reader) throws Exception {
192 scriptPane.read(reader, null);
193 reader.reset();
194
195 // create lexer
196 final GroovyLangLexer lexer = new GroovyLangLexer(reader);
197
198 tokenPane.setEditable(true);
199 tokenPane.setText("");
200
201 int line = 1;
202 final ButtonGroup bg = new ButtonGroup();
203 Token token;
204
205 int tokenCnt = 0;
206 while (true) {
207 token = lexer.nextToken();
208 JToggleButton tokenButton = new JToggleButton(tokens.get(token.getType()));
209 tokenButton.setFont(MONOSPACED_FONT);
210 bg.add(tokenButton);
211 tokenButton.addActionListener(this);
212 tokenButton.setToolTipText(token.getText());
213 tokenButton.putClientProperty("token", token);
214 tokenButton.setMargin(new Insets(0, 1, 0, 1));
215 tokenButton.setFocusPainted(false);
216 if (token.getLine() > line) {
217 tokenPane.getDocument().insertString(tokenPane.getDocument().getLength(), "\n", null);
218 line = token.getLine();
219 }
220 insertComponent(tokenButton);
221 tokenCnt++;
222 if (eof().equals(token.getType())) {
223 break;
224 }
225 }
226
227 tokenStreamLabel.setText(" Token Stream(" + tokenCnt + "):");
228
229 tokenPane.setEditable(false);
230 tokenPane.setCaretPosition(0);
231 reader.close();
232 }
233
234 private Integer eof() {
235 return GroovyLangLexer.EOF;

Callers 1

safeScanScriptMethod · 0.95

Calls 15

getTypeMethod · 0.95
getTextMethod · 0.95
insertComponentMethod · 0.95
eofMethod · 0.95
nextTokenMethod · 0.80
getDocumentMethod · 0.80
readMethod · 0.65
getMethod · 0.65
addMethod · 0.65
getLineMethod · 0.65
equalsMethod · 0.65
closeMethod · 0.65

Tested by

no test coverage detected