Package gnu.ecmascript
Class Lexer
- java.lang.Object
-
- java.io.Reader
-
- gnu.text.Lexer
-
- gnu.ecmascript.Lexer
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,java.lang.Readable
public class Lexer extends Lexer
Reads EcmaScript token from a InPort.
-
-
Field Summary
Fields Modifier and Type Field Description static CharcolonTokenstatic CharcommaTokenstatic CharcondTokenstatic ChardotTokenstatic ReservedelseTokenstatic java.lang.ObjecteofTokenstatic java.lang.ObjecteolTokenstatic CharequalTokenstatic CharlbraceTokenstatic CharlbracketTokenstatic CharlparenTokenstatic ReservednewTokenstatic CharnotTokenstatic CharrbraceTokenstatic CharrbracketTokenstatic CharrparenTokenstatic CharsemicolonTokenstatic ChartildeToken-
Fields inherited from class gnu.text.Lexer
nesting, port, tentative, tokenBuffer, tokenBufferLength
-
-
Constructor Summary
Constructors Constructor Description Lexer(gnu.kawa.io.InPort port)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.ObjectcheckReserved(java.lang.String name)java.lang.StringgetIdentifier(int ch)java.lang.DoublegetNumericLiteral(int c)java.lang.StringgetStringLiteral(char quote)java.lang.ObjectgetToken()Returns the next token.static java.lang.ObjectgetToken(gnu.kawa.io.InPort inp)static voidmain(java.lang.String[] args)java.lang.ObjectmaybeAssignment(java.lang.Object token)-
Methods inherited from class gnu.text.Lexer
checkErrors, checkNext, clearErrors, close, eofError, eofError, error, error, error, fatal, getColumnNumber, getErrors, getLineNumber, getMessages, getName, getPort, isInteractive, isTentative, mark, peek, popNesting, pushNesting, read, read, readCodePoint, readDelimited, readDigits, readDigitsInBuffer, readIntDigits, readOptionalExponent, readUnicodeChar, reset, seenErrors, setInteractive, setMessages, setTentative, skip, skip_quick, tokenBufferAppend, tokenBufferString, unread, unread, unread_quick
-
-
-
-
Field Detail
-
lparenToken
public static final Char lparenToken
-
rparenToken
public static final Char rparenToken
-
lbraceToken
public static final Char lbraceToken
-
rbraceToken
public static final Char rbraceToken
-
lbracketToken
public static final Char lbracketToken
-
rbracketToken
public static final Char rbracketToken
-
dotToken
public static final Char dotToken
-
condToken
public static final Char condToken
-
commaToken
public static final Char commaToken
-
colonToken
public static final Char colonToken
-
equalToken
public static final Char equalToken
-
tildeToken
public static final Char tildeToken
-
notToken
public static final Char notToken
-
semicolonToken
public static final Char semicolonToken
-
eolToken
public static final java.lang.Object eolToken
-
eofToken
public static final java.lang.Object eofToken
-
elseToken
public static final Reserved elseToken
-
newToken
public static final Reserved newToken
-
-
Method Detail
-
checkReserved
public static java.lang.Object checkReserved(java.lang.String name)
-
getNumericLiteral
public java.lang.Double getNumericLiteral(int c) throws java.io.IOException- Throws:
java.io.IOException
-
getStringLiteral
public java.lang.String getStringLiteral(char quote) throws java.io.IOException, SyntaxException- Throws:
java.io.IOExceptionSyntaxException
-
getIdentifier
public java.lang.String getIdentifier(int ch) throws java.io.IOException- Throws:
java.io.IOException
-
maybeAssignment
public java.lang.Object maybeAssignment(java.lang.Object token) throws java.io.IOException, SyntaxException- Throws:
java.io.IOExceptionSyntaxException
-
getToken
public java.lang.Object getToken() throws java.io.IOException, SyntaxExceptionReturns the next token. Returns:- end-of-file
- Sequence.eofValue
- end-of-line
- eolToken
- reserved word
- ???
- identifier
- a java.lang.String
- punctuator
- ???
- numeric literal
- a QuoteExp of a java.lang.Double value
- boolean literal
- a QuoteExp of java.lang.Boolean.TRUE or FALSE
- null literal
- a QuoteExp whose value is null
- string literal
- a QuoteExp whose value is a String
- Throws:
java.io.IOExceptionSyntaxException
-
getToken
public static java.lang.Object getToken(gnu.kawa.io.InPort inp) throws java.io.IOException, SyntaxException- Throws:
java.io.IOExceptionSyntaxException
-
main
public static void main(java.lang.String[] args)
-
-