package net.sourceforge.pmd.cpd; import net.sourceforge.pmd.cpd.rtfast.RTFParserTokenManager; import net.sourceforge.pmd.cpd.rtfast.SimpleCharStream; import net.sourceforge.pmd.cpd.rtfast.Token; import java.io.StringReader; public class RTFTokenizer implements Tokenizer { public void tokenize(SourceCode tokens, Tokens tokenEntries) { StringBuffer sb = tokens.getCodeBuffer(); RTFParserTokenManager tokenMgr = new RTFParserTokenManager(new SimpleCharStream(new StringReader(sb.toString()))); Token currToken = tokenMgr.getNextToken(); while (currToken.image.length() > 0) { String image = currToken.image; tokenEntries.add(new TokenEntry(image, tokens.getFileName(), currToken.beginLine)); currToken = tokenMgr.getNextToken(); } tokenEntries.add(TokenEntry.getEOF()); } }