|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2003 Sun * Microsystems, Inc. All Rights Reserved. */ /* * TokenIterator.java * * Created on December 4, 2003, 11:59 AM */ package org.netbeans.modules.javacore.parser; import org.netbeans.lib.java.parser.Token; import org.netbeans.lib.java.parser.Factory; import org.netbeans.lib.java.parser.JScanner; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; /** * * @author Tomas Hurka */ public class TokenIterator { JScanner scanner; ASTProvider provider; int tokenIndex; Token currentToken; public TokenIterator(InputStream stream,String sourceLevel) { this(new InputStreamReader(stream),sourceLevel); } public TokenIterator(Reader reader,String sourceLevel) { this(reader, sourceLevel, false); } public TokenIterator(InputStream stream,String sourceLevel, boolean liteScan) { this(new InputStreamReader(stream),sourceLevel,liteScan); } public TokenIterator(Reader reader,String sourceLevel, boolean liteScan) { scanner=Factory.getDefault().getScanner(reader,sourceLevel,liteScan); } public TokenIterator(ASTProvider p) { provider=p; } public int getNextTokenType() throws IOException { if (scanner!=null) return scanner.yylex(); try { currentToken=provider.getToken(tokenIndex++); return currentToken != null ? currentToken.getType() : 0; } catch (IndexOutOfBoundsException ex) { // end of file return 0; } } public String getIdentifierText() { if (scanner!=null) return scanner.yytext(); return (String)currentToken.getValue(); } public int getIdentifierHash() { if (scanner!=null) return scanner.yyhash(); return currentToken.getValue().hashCode(); } /** * Returns true if a doc-comment deprecated tag was found. */ public boolean isDeprecated() { if (scanner != null) { boolean b = scanner.isDeprecated(); scanner.resetDeprecatedFlag(); return b; } return currentToken.getDeprecatedFlag(); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.