private boolean isUpperCase(Token x) { if (x == null || x.getType() != IDENT) return false; // cannot happen? String xtext = x.getText(); return (xtext.length() > 0 && Character.isUpperCase(xtext.charAt(0))); }
private static String tokenStringOf(Token t) { if (ttypes == null) { java.util.HashMap map = new java.util.HashMap(); java.lang.reflect.Field[] fields = GroovyTokenTypes.class.getDeclaredFields(); for (int i = 0; i < fields.length; i++) { if (fields[i].getType() != int.class) continue; try { map.put(fields[i].get(null), fields[i].getName()); } catch (IllegalAccessException ee) { } } ttypes = map; } Integer tt = Integer.valueOf(t.getType()); Object ttn = ttypes.get(tt); if (ttn == null) ttn = "<"+tt+">"; return "["+ttn+",\""+t.getText()+"\"]"; }
private boolean isConstructorIdent(Token x) { if (currentClass == null) return false; if (currentClass.getType() != IDENT) return false; // cannot happen? String cname = currentClass.getText(); if (x == null || x.getType() != IDENT) return false; // cannot happen? return cname.equals(x.getText()); }
bg.add(tokenButton); tokenButton.addActionListener(this); tokenButton.setToolTipText(token.getText()); tokenButton.putClientProperty("token", token); tokenButton.setMargin(new Insets(0, 1, 0, 1));
public void actionPerformed(ActionEvent ae) { Token token = (Token) ((JComponent) ae.getSource()).getClientProperty("token"); if (token.getType() == Token.EOF_TYPE) { scriptPane.select(0, 0); return; } try { int start = scriptPane.getLineStartOffset(token.getLine() - 1) + token.getColumn() - 1; scriptPane.select(start, start + token.getText().length()); scriptPane.requestFocus(); } catch (BadLocationException ex) { // IGNORE } }
/** * Clones the token */ public Token cloneToken(Token t) { CommonToken clone = new CommonToken(t.getType(),t.getText()); clone.setLine(t.getLine()); clone.setColumn(t.getColumn()); return clone; }
@Override public void tokenize(SourceCode sourceCode, Tokens tokenEntries) { StringBuilder buffer = sourceCode.getCodeBuffer(); GroovyLexer lexer = new GroovyLexer(new StringReader(buffer.toString())); TokenStream tokenStream = lexer.plumb(); try { Token token = tokenStream.nextToken(); while (token.getType() != Token.EOF_TYPE) { TokenEntry tokenEntry = new TokenEntry(token.getText(), sourceCode.getFileName(), token.getLine()); tokenEntries.add(tokenEntry); token = tokenStream.nextToken(); } } catch (TokenStreamException err) { // Wrap exceptions of the Groovy tokenizer in a TokenMgrError, so // they are correctly handled // when CPD is executed with the '--skipLexicalErrors' command line // option throw new TokenMgrError("Lexical error in file " + sourceCode.getFileName() + " at line " + lexer.getLine() + ", column " + lexer.getColumn() + ". Encountered: " + err.getMessage(), TokenMgrError.LEXICAL_ERROR); } finally { tokenEntries.add(TokenEntry.getEOF()); } } }
astFactory.addASTChild(currentAST, returnAST); else if (((LA(1)==AT) && (LA(2)==IDENT))&&(LA(1)==AT && !LT(2).getText().equals("interface"))) { annotation(); astFactory.addASTChild(currentAST, returnAST);
if ( inputState.guessing==0 ) { pathElement_AST = (AST)currentAST.root; pathElement_AST = (AST)astFactory.make( (new ASTArray(4)).add(create(operator.getType(),operator.getText(),prefix,LT(1))).add(prefix).add(ta_AST).add(np_AST)); currentAST.root = pathElement_AST; currentAST.child = pathElement_AST!=null &&pathElement_AST.getFirstChild()!=null ?
String txt = (t == null ? "" : t.getText().toUpperCase()); if (txt.indexOf('F') >= 0) { _ttype = NUM_FLOAT;
private boolean isUpperCase(Token x) { if (x == null || x.getType() != IDENT) return false; // cannot happen? String xtext = x.getText(); return (xtext.length() > 0 && Character.isUpperCase(xtext.charAt(0))); }
private static String tokenStringOf(Token t) { if (ttypes == null) { java.util.HashMap map = new java.util.HashMap(); java.lang.reflect.Field[] fields = GroovyTokenTypes.class.getDeclaredFields(); for (int i = 0; i < fields.length; i++) { if (fields[i].getType() != int.class) continue; try { map.put(fields[i].get(null), fields[i].getName()); } catch (IllegalAccessException ee) { } } ttypes = map; } Integer tt = new Integer(t.getType()); Object ttn = ttypes.get(tt); if (ttn == null) ttn = "<"+tt+">"; return "["+ttn+",\""+t.getText()+"\"]"; }
private boolean isConstructorIdent(Token x) { if (currentClass == null) return false; if (currentClass.getType() != IDENT) return false; // cannot happen? String cname = currentClass.getText(); if (x == null || x.getType() != IDENT) return false; // cannot happen? return cname.equals(x.getText()); }
private void scanScript(File file) throws Exception{ scriptPane.read(new FileReader(file), null); // create lexer Constructor constructor = lexerClass.getConstructor(new Class[]{InputStream.class}); CharScanner lexer = (CharScanner) constructor.newInstance(new Object[]{new FileInputStream(file)}); tokenPane.setEditable(true); tokenPane.setText(""); int line = 1; ButtonGroup bg = new ButtonGroup(); Token token = null; while(true){ token = lexer.nextToken(); JToggleButton tokenButton = new JToggleButton((String) tokens.get(new Integer(token.getType()))); bg.add(tokenButton); tokenButton.addActionListener(this); tokenButton.setToolTipText(token.getText()); tokenButton.putClientProperty("token", token); tokenButton.setMargin(new Insets(0, 1, 0, 1)); tokenButton.setFocusPainted(false); if(token.getLine()>line){ tokenPane.getDocument().insertString(tokenPane.getDocument().getLength(), "\n", null); line = token.getLine(); } insertComponent(tokenButton); if(token.getType()==Token.EOF_TYPE) break; } tokenPane.setEditable(false); tokenPane.setCaretPosition(0); }
public void actionPerformed(ActionEvent ae){ Token token = (Token) ((JComponent) ae.getSource()).getClientProperty("token"); if(token.getType()==Token.EOF_TYPE){ scriptPane.select(0, 0); return; } try{ int start = scriptPane.getLineStartOffset(token.getLine()-1)+token.getColumn()-1; scriptPane.select(start, start+token.getText().length()); scriptPane.requestFocus(); } catch(BadLocationException ex){ // IGNORE } }
/** * Clones the token */ public Token cloneToken(Token t) { CommonToken clone = new CommonToken(t.getType(),t.getText()); clone.setLine(t.getLine()); clone.setColumn(t.getColumn()); return clone; }
@Override public void tokenize(SourceCode sourceCode, Tokens tokenEntries) { StringBuilder buffer = sourceCode.getCodeBuffer(); GroovyLexer lexer = new GroovyLexer(new StringReader(buffer.toString())); TokenStream tokenStream = lexer.plumb(); try { Token token = tokenStream.nextToken(); while (token.getType() != Token.EOF_TYPE) { TokenEntry tokenEntry = new TokenEntry(token.getText(), sourceCode.getFileName(), token.getLine()); tokenEntries.add(tokenEntry); token = tokenStream.nextToken(); } } catch (TokenStreamException err) { // Wrap exceptions of the Groovy tokenizer in a TokenMgrError, so // they are correctly handled // when CPD is executed with the '--skipLexicalErrors' command line // option throw new TokenMgrError("Lexical error in file " + sourceCode.getFileName() + " at line " + lexer.getLine() + ", column " + lexer.getColumn() + ". Encountered: " + err.getMessage(), TokenMgrError.LEXICAL_ERROR); } finally { tokenEntries.add(TokenEntry.getEOF()); } } }
nls(); else if (((LA(1)==AT) && (LA(2)==IDENT))&&(LA(1)==AT && !LT(2).getText().equals("interface"))) { annotation(); astFactory.addASTChild(currentAST, returnAST);