oursland.lisp
Class LispTokenizer
java.lang.Object
oursland.parse.BaseTokenizer
oursland.lisp.LispTokenizer
public class LispTokenizer
- extends BaseTokenizer
Parses Lisp tokens. Not complete according to Lisp spec.
This tokenizer is expanded as I need features.
- Author:
- oursland
Field Summary |
private java.util.LinkedList<java.lang.String> |
nextTokens
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
nextTokens
private java.util.LinkedList<java.lang.String> nextTokens
LispTokenizer
public LispTokenizer(java.io.InputStream in)
LispTokenizer
public LispTokenizer(java.lang.String str)
hasNextToken
public boolean hasNextToken()
- Specified by:
hasNextToken
in class BaseTokenizer
peekToken
public java.lang.String peekToken(int i)
throws java.io.IOException
- Throws:
java.io.IOException
nextToken
public java.lang.String nextToken()
throws java.io.IOException
- Specified by:
nextToken
in class BaseTokenizer
- Throws:
java.io.IOException
parseToken
private java.lang.String parseToken()
throws java.io.IOException
- Throws:
java.io.IOException
parseString
private java.lang.String parseString()
throws java.io.IOException
- Throws:
java.io.IOException
parseSymbol
private java.lang.String parseSymbol()
throws java.io.IOException
- Throws:
java.io.IOException
consumeWhitespace
private void consumeWhitespace()
throws java.io.IOException
- Throws:
java.io.IOException
main
public static void main(java.lang.String[] args)
expect
public java.lang.String expect(java.lang.String expect)
throws java.io.IOException
- Throws:
java.io.IOException
parseNumberToDouble
public static double parseNumberToDouble(java.lang.String number)
isFraction
private static boolean isFraction(java.lang.String number)