|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jruby.lexer.yacc.RubyYaccLexer
public class RubyYaccLexer
This is a port of the MRI lexer to Java it is compatible to Ruby 1.8.1.
Nested Class Summary | |
---|---|
static class |
RubyYaccLexer.Keyword
|
static class |
RubyYaccLexer.LexState
|
Constructor Summary | |
---|---|
RubyYaccLexer()
|
Method Summary | |
---|---|
boolean |
advance()
How the parser advances to the next token. |
StackState |
getCmdArgumentState()
|
StackState |
getConditionState()
|
static RubyYaccLexer.Keyword |
getKeyword(java.lang.String str)
|
ISourcePosition |
getPosition()
|
ISourcePosition |
getPosition(ISourcePosition startPosition,
boolean inclusive)
Get position information for Token/Node that follows node represented by startPosition and current lexer location. |
ISourcePositionFactory |
getPositionFactory()
|
StrTerm |
getStrTerm()
|
java.lang.StringBuilder |
getTokenBuffer()
|
static boolean |
isIdentifierChar(int c)
|
protected int |
readComment(int c)
Read a comment up to end of line. |
int |
readEscape()
|
void |
reset()
|
void |
resetStacks()
|
void |
setParserSupport(ParserSupport parserSupport)
Parse must pass its support object for some check at bottom of yylex(). |
void |
setSource(LexerSource source)
Allow the parser to set the source for its lexer. |
void |
setState(RubyYaccLexer.LexState state)
|
void |
setStrTerm(StrTerm strterm)
|
void |
setValue(java.lang.Object yaccValue)
|
void |
setWarnings(IRubyWarnings warnings)
|
int |
token()
Last token read from the lexer at the end of a call to yylex() |
java.lang.Object |
value()
Value of last token (if it is a token which has a value). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public RubyYaccLexer()
Method Detail |
---|
public static RubyYaccLexer.Keyword getKeyword(java.lang.String str)
public void reset()
public boolean advance() throws java.io.IOException
java.io.IOException
public int token()
public java.lang.StringBuilder getTokenBuffer()
public java.lang.Object value()
public ISourcePositionFactory getPositionFactory()
public ISourcePosition getPosition(ISourcePosition startPosition, boolean inclusive)
startPosition
- previous node/tokeninclusive
- include previous node into position information of current node
public ISourcePosition getPosition()
public void setParserSupport(ParserSupport parserSupport)
parserSupport
- public void setSource(LexerSource source)
source
- where the lexer gets raw datapublic StrTerm getStrTerm()
public void setStrTerm(StrTerm strterm)
public void resetStacks()
public void setWarnings(IRubyWarnings warnings)
public void setState(RubyYaccLexer.LexState state)
public StackState getCmdArgumentState()
public StackState getConditionState()
public void setValue(java.lang.Object yaccValue)
public static final boolean isIdentifierChar(int c)
c
- is character to be compared
protected int readComment(int c) throws java.io.IOException
c
- last character read from lexer source
java.io.IOException
public int readEscape() throws java.io.IOException
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |