org.eclipse.ocl.parser.backtracking
Class OCLBacktrackingLexer

java.lang.Object
  extended by lpg.lpgjavaruntime.LexStream
      extended by lpg.lpgjavaruntime.LpgLexStream
          extended by org.eclipse.ocl.lpg.AbstractLexer
              extended by org.eclipse.ocl.parser.backtracking.OCLBacktrackingLexer
All Implemented Interfaces:
lpg.lpgjavaruntime.ParseErrorCodes, lpg.lpgjavaruntime.RuleAction, lpg.lpgjavaruntime.TokenStream, OCLBacktrackingLexersym, OCLBacktrackingParsersym

public class OCLBacktrackingLexer
extends AbstractLexer
implements OCLBacktrackingParsersym, OCLBacktrackingLexersym, lpg.lpgjavaruntime.RuleAction

The backtracking variant of the OCL lexer.

Since:
1.3

Field Summary
protected  OCLBacktrackingKWLexer kwLexer
           
protected  boolean printTokens
           
static int[] tokenKind
           
 
Fields inherited from class org.eclipse.ocl.lpg.AbstractLexer
ECLIPSE_TAB_VALUE
 
Fields inherited from interface org.eclipse.ocl.parser.backtracking.OCLBacktrackingParsersym
isValidForParser, orderedTerminalSymbols, TK_allInstances, TK_and, TK_any, TK_ARROW, TK_ATPRE, TK_attr, TK_Bag, TK_BAR, TK_body, TK_Boolean, TK_CARET, TK_CARETCARET, TK_closure, TK_collect, TK_Collection, TK_collectNested, TK_COLON, TK_COLONCOLON, TK_COMMA, TK_context, TK_def, TK_derive, TK_DIVIDE, TK_DOT, TK_DOTDOT, TK_else, TK_endif, TK_endpackage, TK_EOF_TOKEN, TK_EQUAL, TK_ERROR_TOKEN, TK_exists, TK_false, TK_forAll, TK_GREATER, TK_GREATER_EQUAL, TK_IDENTIFIER, TK_if, TK_implies, TK_in, TK_init, TK_Integer, TK_INTEGER_LITERAL, TK_INTEGER_RANGE_START, TK_inv, TK_Invalid, TK_isUnique, TK_iterate, TK_LBRACE, TK_LBRACKET, TK_LESS, TK_LESS_EQUAL, TK_let, TK_LPAREN, TK_MINUS, TK_MULTIPLY, TK_not, TK_NOT_EQUAL, TK_null, TK_NUMERIC_OPERATION, TK_OclAny, TK_oclAsType, TK_OclInvalid, TK_oclIsInState, TK_oclIsInvalid, TK_oclIsKindOf, TK_oclIsNew, TK_oclIsTypeOf, TK_oclIsUndefined, TK_OclMessage, TK_OclVoid, TK_one, TK_oper, TK_or, TK_OrderedSet, TK_package, TK_PLUS, TK_post, TK_pre, TK_QUESTIONMARK, TK_RBRACE, TK_RBRACKET, TK_Real, TK_REAL_LITERAL, TK_reject, TK_RPAREN, TK_select, TK_self, TK_SEMICOLON, TK_Sequence, TK_Set, TK_sortedBy, TK_String, TK_STRING_LITERAL, TK_then, TK_true, TK_Tuple, TK_UnlimitedNatural, TK_xor
 
Fields inherited from interface org.eclipse.ocl.parser.backtracking.OCLBacktrackingLexersym
Char__, Char_0, Char_1, Char_2, Char_3, Char_4, Char_5, Char_6, Char_7, Char_8, Char_9, Char_a, Char_A, Char_Acute, Char_AfterASCIINotAcute, Char_Ampersand, Char_AtSign, Char_b, Char_B, Char_BackQuote, Char_BackSlash, Char_c, Char_C, Char_Caret, Char_Colon, Char_Comma, Char_CR, Char_CtlCharNotWS, Char_d, Char_D, Char_DollarSign, Char_Dot, Char_DoubleQuote, Char_e, Char_E, Char_EOF, Char_Equal, Char_Exclamation, Char_f, Char_F, Char_FF, Char_g, Char_G, Char_GreaterThan, Char_h, Char_H, Char_HT, Char_i, Char_I, Char_j, Char_J, Char_k, Char_K, Char_l, Char_L, Char_LeftBrace, Char_LeftBracket, Char_LeftParen, Char_LessThan, Char_LF, Char_m, Char_M, Char_Minus, Char_n, Char_N, Char_o, Char_O, Char_p, Char_P, Char_Percent, Char_Plus, Char_q, Char_Q, Char_QuestionMark, Char_r, Char_R, Char_RightBrace, Char_RightBracket, Char_RightParen, Char_s, Char_S, Char_SemiColon, Char_Sharp, Char_SingleQuote, Char_Slash, Char_Space, Char_Star, Char_t, Char_T, Char_Tilde, Char_u, Char_U, Char_v, Char_V, Char_VerticalBar, Char_w, Char_W, Char_x, Char_X, Char_y, Char_Y, Char_z, Char_Z, isValidForParser, orderedTerminalSymbols
 
Fields inherited from interface lpg.lpgjavaruntime.ParseErrorCodes
BEFORE_CODE, DELETION_CODE, EOF_CODE, ERROR_CODE, errorMsgText, INSERTION_CODE, INVALID_CODE, INVALID_TOKEN_CODE, LEX_ERROR_CODE, MERGE_CODE, MISPLACED_CODE, SCOPE_CODE, SECONDARY_CODE, SUBSTITUTION_CODE
 
Constructor Summary
OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment)
           
OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment, char[] chars)
           
OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment, char[] input_chars, String filename, int tab)
           
 
Method Summary
 int[] getKeywordKinds()
          Queries the token kinds, as defined by my keyword lexer, of tokens that are keywords in by grammar.
 int getKind(int i)
           
 int getLeftSpan()
           
 Environment<?,?,?,?,?,?,?,?,?,?,?,?> getOCLEnvironment()
           
 AbstractParser getParser()
           
 int getRhsFirstTokenIndex(int i)
           
 int getRhsLastTokenIndex(int i)
           
 int getRightSpan()
           
 int getToken(int i)
           
 void initialize(char[] content, String filename)
           
 void lexToTokens(lpg.lpgjavaruntime.Monitor monitor, AbstractParser parser)
           
 String[] orderedExportedSymbols()
           
 void ruleAction(int ruleNumber)
           
 void setInputChars(char[] inputChars)
           
 
Methods inherited from class org.eclipse.ocl.lpg.AbstractLexer
computeErrorCode, getEnvironment, getInputChars, initialize, initialize, lexToTokens, reportError
 
Methods inherited from class lpg.lpgjavaruntime.LexStream
afterEol, badToken, computeLineOffsets, getCharValue, getColumn, getColumnOfCharAt, getEndColumn, getEndLine, getFileName, getFirstErrorToken, getInputChars, getLastErrorToken, getLine, getLine, getLineCount, getLineNumberOfCharAt, getLineOffset, getLineOffsets, getName, getNext, getPrevious, getPrsStream, getStreamIndex, getStreamLength, getTab, getToken, initialize, makeErrorToken, makeToken, peek, reportError, reportError, reportError, reset, reset, setFileName, setLineOffset, setLineOffsets, setPrsStream, setStreamIndex, setStreamLength, setTab
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

kwLexer

protected OCLBacktrackingKWLexer kwLexer

printTokens

protected boolean printTokens

tokenKind

public static final int[] tokenKind
Constructor Detail

OCLBacktrackingLexer

public OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment)

OCLBacktrackingLexer

public OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment,
                            char[] chars)

OCLBacktrackingLexer

public OCLBacktrackingLexer(Environment<?,?,?,?,?,?,?,?,?,?,?,?> environment,
                            char[] input_chars,
                            String filename,
                            int tab)
Method Detail

getOCLEnvironment

public Environment<?,?,?,?,?,?,?,?,?,?,?,?> getOCLEnvironment()

getKeywordKinds

public int[] getKeywordKinds()
Description copied from class: AbstractLexer
Queries the token kinds, as defined by my keyword lexer, of tokens that are keywords in by grammar.

Overrides:
getKeywordKinds in class AbstractLexer
Returns:
my keyword lexer's token kinds

getLeftSpan

public int getLeftSpan()

getParser

public AbstractParser getParser()

getRhsFirstTokenIndex

public int getRhsFirstTokenIndex(int i)

getRhsLastTokenIndex

public int getRhsLastTokenIndex(int i)

getRightSpan

public int getRightSpan()

getToken

public int getToken(int i)
Specified by:
getToken in interface lpg.lpgjavaruntime.TokenStream
Overrides:
getToken in class lpg.lpgjavaruntime.LexStream

initialize

public void initialize(char[] content,
                       String filename)
Overrides:
initialize in class lpg.lpgjavaruntime.LexStream

orderedExportedSymbols

public String[] orderedExportedSymbols()
Specified by:
orderedExportedSymbols in class lpg.lpgjavaruntime.LpgLexStream

setInputChars

public void setInputChars(char[] inputChars)
Overrides:
setInputChars in class lpg.lpgjavaruntime.LexStream

lexToTokens

public void lexToTokens(lpg.lpgjavaruntime.Monitor monitor,
                        AbstractParser parser)
Specified by:
lexToTokens in class AbstractLexer

getKind

public final int getKind(int i)
Specified by:
getKind in interface lpg.lpgjavaruntime.TokenStream
Specified by:
getKind in class lpg.lpgjavaruntime.LpgLexStream

ruleAction

public void ruleAction(int ruleNumber)
Specified by:
ruleAction in interface lpg.lpgjavaruntime.RuleAction

Copyright 2002, 2007 IBM Corporation and others.
All Rights Reserved.