|
||||||||||
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
|
Field Summary | |
---|---|
boolean |
commandStart
|
Constructor Summary | |
---|---|
RubyYaccLexer()
|
|
RubyYaccLexer(boolean isOneEight)
|
Method Summary | |
---|---|
boolean |
advance()
How the parser advances to the next token. |
StackState |
getCmdArgumentState()
|
StackState |
getConditionState()
|
java.lang.String |
getCurrentLine()
|
static RubyYaccLexer.Keyword |
getKeyword(java.lang.String str)
|
int |
getLeftParenBegin()
|
ISourcePosition |
getPosition()
|
ISourcePosition |
getPosition(ISourcePosition startPosition)
Get position information for Token/Node that follows node represented by startPosition and current lexer location. |
StrTerm |
getStrTerm()
|
java.lang.StringBuilder |
getTokenBuffer()
|
int |
incrementParenNest()
|
protected boolean |
isIdentifierChar(int c)
This is a valid character for an identifier? |
protected boolean |
isMultiByteChar(int c)
Is this a multibyte character from a multibyte encoding? |
protected int |
readComment(int c)
Read a comment up to end of line. |
int |
readEscape()
|
void |
reset()
|
void |
resetStacks()
|
void |
setEncoding(org.jcodings.Encoding encoding)
|
void |
setLeftParenBegin(int value)
|
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 |
Field Detail |
---|
public boolean commandStart
Constructor Detail |
---|
public RubyYaccLexer()
public RubyYaccLexer(boolean isOneEight)
Method Detail |
---|
public static RubyYaccLexer.Keyword getKeyword(java.lang.String str)
public int incrementParenNest()
public int getLeftParenBegin()
public void setLeftParenBegin(int value)
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 ISourcePosition getPosition(ISourcePosition startPosition)
startPosition
- previous node/tokeninclusive
- include previous node into position information of current node
public ISourcePosition getPosition()
public java.lang.String getCurrentLine()
public void setParserSupport(ParserSupport parserSupport)
parserSupport
- public void setEncoding(org.jcodings.Encoding encoding)
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)
protected boolean isIdentifierChar(int c)
c
- is character to be compared
protected boolean isMultiByteChar(int c)
c
-
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 |