Mercurial > hg > Members > kono > PLparser
view src/plparser/PLScanner.java @ 7:619472ca4742
Refactoring for multiple implementation of scanner
author | one |
---|---|
date | Wed, 01 Sep 2010 15:23:37 +0900 |
parents | |
children | 79d492bce828 |
line wrap: on
line source
package plparser; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.InputStream; import java.io.InputStreamReader; public interface PLScanner<Node> { String filename(); int lineno(); public Token<Node> nextToken(); public boolean hasRemaining(); public PLScanner<Node> pushScannerFile(InputStream newfile, String prompt); PLScanner<Node> prev(); PLScanner<Node> pushScanner(String exp); PLScanner<Node> pushScannerFile(String file) throws FileNotFoundException; PLScanner<Node> popScanner(); public PLScanner<Node> set(String exp); /* * Read From File * We cannot read symbol bigger than Buffersize */ public PLScanner<Node> setFile(String file) throws FileNotFoundException; public PLScanner<Node> set(InputStreamReader file); public void error(String err); public Iterable<Token<Node>> scanToken(String exp); public Iterable<Token<Node>> scanToken(FileReader file); }