|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.quasiliteral.syntax.ReplayLexer
Untamed: The large number of bogus messages in this class is a symptom of a need to refactor.
Field Summary | |
private AstroBuilder |
myBuilder
|
private int |
myNextToken
|
private Astro[] |
myTokens
|
Fields inherited from interface org.quasiliteral.syntax.LexerFace |
EOFCHAR, EOFTOK |
Fields inherited from interface org.erights.e.elib.serial.PassByProxy |
HONORARY, HONORED_NAMES |
Constructor Summary | |
ReplayLexer(Astro[] tokens,
AstroBuilder builder)
Enabled: |
Method Summary | |
Astro |
composite(short tagCode,
Object data,
SourceSpan optSpan)
Enabled: |
boolean |
isEndOfFile()
Enabled: |
void |
needMore(String msg)
Enabled: |
Astro |
nextToken()
Enabled: |
Astro[] |
nextTopLevelUnit()
Enabled: |
void |
reset()
Enabled: |
void |
setSource(Twine newSource)
Enabled: |
void |
syntaxError(String msg)
Enabled: XXX This really sucks compared to BaseLexer#syntaxError) for printing to a human, but at least it does report where the error is adequately for programmatic use. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private final Astro[] myTokens
private int myNextToken
private final AstroBuilder myBuilder
Constructor Detail |
public ReplayLexer(Astro[] tokens, AstroBuilder builder)
Method Detail |
public void setSource(Twine newSource)
setSource
in interface LexerFace
public void reset()
reset
in interface LexerFace
public Astro composite(short tagCode, Object data, SourceSpan optSpan)
composite
in interface LexerFace
public Astro[] nextTopLevelUnit() throws IOException, SyntaxException
nextTopLevelUnit
in interface LexerFace
IOException
SyntaxException
public Astro nextToken() throws IOException, SyntaxException
nextToken
in interface LexerFace
IOException
SyntaxException
public void syntaxError(String msg) throws SyntaxException
syntaxError
in interface LexerFace
SyntaxException
public void needMore(String msg) throws NeedMoreException, SyntaxException
needMore
in interface LexerFace
NeedMoreException
SyntaxException
public boolean isEndOfFile()
isEndOfFile
in interface LexerFace
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |