Building Parsers with Java

sjm.examples.tokens
Class ScientificNumberState

java.lang.Object
  |
  +--sjm.parse.tokens.TokenizerState
        |
        +--sjm.parse.tokens.NumberState
              |
              +--sjm.examples.tokens.ScientificNumberState

public class ScientificNumberState
extends NumberState

A ScientificNumberState object returns a number from a reader. This state's idea of a number expands on its superclass, allowing an 'e' followed by an integer to represent 10 to the indicated power. For example, this state will recognize 1e2 as equaling 100.

This class exists primarily to show how to introduce a new tokenizing state.


Field Summary
protected  boolean absorbedE
           
 
Fields inherited from class sjm.parse.tokens.NumberState
absorbedDot, absorbedLeadingMinus, c, gotAdigit, value
 
Constructor Summary
ScientificNumberState()
           
 
Method Summary
static void main(java.lang.String[] args)
          Just a demo.
protected  void parseRight(java.io.PushbackReader r)
           
protected  void reset(int cin)
           
protected  Token value(java.io.PushbackReader r, Tokenizer t)
           
 
Methods inherited from class sjm.parse.tokens.NumberState
absorbDigits, nextToken, parseLeft
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

absorbedE

protected boolean absorbedE
Constructor Detail

ScientificNumberState

public ScientificNumberState()
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
Just a demo.

parseRight

protected void parseRight(java.io.PushbackReader r)
                   throws java.io.IOException
Overrides:
parseRight in class NumberState

reset

protected void reset(int cin)
Overrides:
reset in class NumberState

value

protected Token value(java.io.PushbackReader r,
                      Tokenizer t)
               throws java.io.IOException
Overrides:
value in class NumberState

by Steve Metsker