antlr3.Lexer Class Reference

Baseclass for generated lexer classes. More...

Inheritance diagram for antlr3.Lexer:

Inheritance graph
[legend]
Collaboration diagram for antlr3.Lexer:

Collaboration graph
[legend]

List of all members.

Public Member Functions

def __init__
def reset
 reset the parser's state; subclasses must rewinds the input stream
def nextToken
 Return a token from this source; i.e., match a token on the char stream.
def skip
 Instruct the lexer to skip creating a token for current lexer rule and look for another token.
def mTokens
 This is the lexer entry point that sets instance var 'token'.
def setCharStream
 Set the char stream and reset the lexer.
def getSourceName
def emit
 The standard method called to automatically emit a token at the outermost lexical rule.
def match
def matchAny
def matchRange
def getLine
def getCharPositionInLine
def getCharIndex
 What is the index of the current character of lookahead?
def getText
 Return the text matched so far for the current token or any text override.
def setText
 Set the complete text of this token; it wipes any previous changes to the text.
def reportError
def getErrorMessage
def getCharErrorDisplay
def recover
 Lexers can normally match any char in it's vocabulary after matching a token, so do the easy thing and just kill a character and hope it all works out.
def traceIn
def traceOut

Public Attributes

 input

Static Public Attributes

tuple text = property(getText, setText)


Detailed Description

Baseclass for generated lexer classes.

A lexer is recognizer that draws input symbols from a character stream. lexer grammars result in a subclass of this object. A Lexer object uses simplified match() and error recovery mechanisms in the interest of speed.

Definition at line 3395 of file antlr3.py.


Member Function Documentation

def antlr3.Lexer.__init__ (   self,
  input,
  state = None 
)

Definition at line 3397 of file antlr3.py.

def antlr3.Lexer.reset (   self  ) 

reset the parser's state; subclasses must rewinds the input stream

Reimplemented from antlr3.BaseRecognizer.

Definition at line 3405 of file antlr3.py.

def antlr3.Lexer.nextToken (   self  ) 

Return a token from this source; i.e., match a token on the char stream.

Reimplemented from antlr3.TokenSource.

Definition at line 3431 of file antlr3.py.

def antlr3.Lexer.skip (   self  ) 

Instruct the lexer to skip creating a token for current lexer rule and look for another token.

nextToken() knows to keep looking when a lexer rule finishes with token set to SKIP_TOKEN. Recall that if token==null at end of any token rule, it creates one for you and emits it.

Definition at line 3471 of file antlr3.py.

def antlr3.Lexer.mTokens (   self  ) 

This is the lexer entry point that sets instance var 'token'.

Definition at line 3478 of file antlr3.py.

def antlr3.Lexer.setCharStream (   self,
  input 
)

Set the char stream and reset the lexer.

Definition at line 3486 of file antlr3.py.

def antlr3.Lexer.getSourceName (   self  ) 

Definition at line 3492 of file antlr3.py.

def antlr3.Lexer.emit (   self,
  token = None 
)

The standard method called to automatically emit a token at the outermost lexical rule.

The token object should point into the char buffer start..stop. If there is a text override in 'text', use that to set the token's text. Override this method to emit custom Token objects.

If you are building trees, then you should also override Parser or TreeParser.getMissingSymbol().

Definition at line 3507 of file antlr3.py.

def antlr3.Lexer.match (   self,
  s 
)

Definition at line 3526 of file antlr3.py.

def antlr3.Lexer.matchAny (   self  ) 

Definition at line 3551 of file antlr3.py.

def antlr3.Lexer.matchRange (   self,
  a,
  b 
)

Definition at line 3555 of file antlr3.py.

def antlr3.Lexer.getLine (   self  ) 

Definition at line 3567 of file antlr3.py.

def antlr3.Lexer.getCharPositionInLine (   self  ) 

Definition at line 3571 of file antlr3.py.

def antlr3.Lexer.getCharIndex (   self  ) 

What is the index of the current character of lookahead?

Definition at line 3577 of file antlr3.py.

def antlr3.Lexer.getText (   self  ) 

Return the text matched so far for the current token or any text override.

Definition at line 3587 of file antlr3.py.

def antlr3.Lexer.setText (   self,
  text 
)

Set the complete text of this token; it wipes any previous changes to the text.

Definition at line 3602 of file antlr3.py.

def antlr3.Lexer.reportError (   self,
  e 
)

Definition at line 3609 of file antlr3.py.

def antlr3.Lexer.getErrorMessage (   self,
  e,
  tokenNames 
)

Definition at line 3623 of file antlr3.py.

def antlr3.Lexer.getCharErrorDisplay (   self,
  c 
)

Definition at line 3666 of file antlr3.py.

def antlr3.Lexer.recover (   self,
  re 
)

Lexers can normally match any char in it's vocabulary after matching a token, so do the easy thing and just kill a character and hope it all works out.

You can instead use the rule invocation stack to do sophisticated error recovery if you are in a fragment rule.

Definition at line 3679 of file antlr3.py.

def antlr3.Lexer.traceIn (   self,
  ruleName,
  ruleIndex 
)

Definition at line 3684 of file antlr3.py.

def antlr3.Lexer.traceOut (   self,
  ruleName,
  ruleIndex 
)

Definition at line 3693 of file antlr3.py.


Member Data Documentation

tuple antlr3.Lexer.text = property(getText, setText) [static]

Definition at line 3606 of file antlr3.py.

Reimplemented from antlr3.BaseRecognizer.

Definition at line 3402 of file antlr3.py.


The documentation for this class was generated from the following file:

Generated on Tue May 20 18:34:06 2008 for ANTLR Python API by  doxygen 1.5.5