|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectslogo.parser.SLogoParser
public class SLogoParser
Illustrates the java.io.StreamTokenizer class and how it can be used to parse tokens for a toy example programming language (elan). For this example simple instructions are parsed, but lots of infrastructure is in place for parsing a more complete language.
slogo.expression,
slogo.instruction,
InstructionParser| Field Summary | |
|---|---|
protected SLogoContext |
myContext
|
java.lang.Object |
myResult
|
protected Token |
myToken
|
protected java.io.StreamTokenizer |
myTokenizer
|
| Constructor Summary | |
|---|---|
SLogoParser(Turtle turtle)
|
|
| Method Summary | |
|---|---|
void |
error(Token t)
|
Context |
getContext()
|
java.lang.Object |
getMyResult()
|
Token |
getToken()
returns the current token, doesn't fetch a new one |
java.lang.Object |
interpret(java.io.Reader r)
parses an expression and prints the result of evaluating the expression. |
java.lang.Object |
interpret(java.lang.String cmd)
|
static void |
main(java.lang.String[] args)
Basic driver for SLogoParser |
Token |
match(Token rhs)
try to match a token, if unsuccessful throw an exception, otherwise match succeeds, and next token is obtained and returned |
protected Token |
nextToken()
get the next token and store it for retrieval by getToken() |
protected GrammarElement |
parseInstructionParameter()
|
protected java.util.List<GrammarElement> |
parseInstructionParameters(int numParameters)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected java.io.StreamTokenizer myTokenizer
protected Token myToken
protected SLogoContext myContext
public java.lang.Object myResult
| Constructor Detail |
|---|
public SLogoParser(Turtle turtle)
| Method Detail |
|---|
public java.lang.Object interpret(java.lang.String cmd)
cmd - string command from text fieldpublic java.lang.Object interpret(java.io.Reader r)
r - the reader that will be tokenized
protected Token nextToken()
public Token getToken()
protected GrammarElement parseInstructionParameter()
protected java.util.List<GrammarElement> parseInstructionParameters(int numParameters)
numParameters -
public Token match(Token rhs)
rhs - token being matched
ParseException - if match failspublic void error(Token t)
t - token where error occurred
a - ParseException labeled by tpublic Context getContext()
public java.lang.Object getMyResult()
public static void main(java.lang.String[] args)
args -
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||