thrift/src/main/java/com/intellij/plugins/thrift/lang/lexer/_ThriftLexer.java
public IElementType advance() throws java.io.IOException {
    int zzInput;
    int zzAction;

    // cached fields:
    int zzCurrentPosL;
    int zzMarkedPosL;
    int zzEndReadL = zzEndRead;
    CharSequence zzBufferL = zzBuffer;
    char[] zzBufferArrayL = zzBufferArray;
    char [] zzCMapL = ZZ_CMAP;

    int [] zzTransL = ZZ_TRANS;
    int [] zzRowMapL = ZZ_ROWMAP;
    int [] zzAttrL = ZZ_ATTRIBUTE;

    while (true) {
      zzMarkedPosL = zzMarkedPos;

      zzAction = -1;

      zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;

      zzState = ZZ_LEXSTATE[zzLexicalState];


      zzForAction: {
        while (true) {

          if (zzCurrentPosL < zzEndReadL)
            zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
          else if (zzAtEOF) {
            zzInput = YYEOF;
            break zzForAction;
          }
          else {
            // store back cached positions
            zzCurrentPos  = zzCurrentPosL;
            zzMarkedPos   = zzMarkedPosL;
            boolean eof = zzRefill();
            // get translated positions and possibly new buffer
            zzCurrentPosL  = zzCurrentPos;
            zzMarkedPosL   = zzMarkedPos;
            zzBufferL      = zzBuffer;
            zzEndReadL     = zzEndRead;
            if (eof) {
              zzInput = YYEOF;
              break zzForAction;
            }
            else {
              zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
            }
          }
          int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ];
          if (zzNext == -1) break zzForAction;
          zzState = zzNext;

          int zzAttributes = zzAttrL[zzState];
          if ( (zzAttributes & 1) == 1 ) {
            zzAction = zzState;
            zzMarkedPosL = zzCurrentPosL;
            if ( (zzAttributes & 8) == 8 ) break zzForAction;
          }

        }
      }

      // store back cached position
      zzMarkedPos = zzMarkedPosL;

      switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
        case 20: 
          { return COMMA;
          }
        case 25: break;
        case 21: 
          { return BLOCKCOMMENT;
          }
        case 26: break;
        case 9: 
          { return LEFTCURLYBRACE;
          }
        case 27: break;
        case 4: 
          { return COMMENT;
          }
        case 28: break;
        case 23: 
          { return STIDENTIFIER;
          }
        case 29: break;
        case 14: 
          { return RIGHTBRACE;
          }
        case 30: break;
        case 5: 
          { return IDENTIFIER;
          }
        case 31: break;
        case 1: 
          { return com.intellij.psi.TokenType.BAD_CHARACTER;
          }
        case 32: break;
        case 7: 
          { return MINUS;
          }
        case 33: break;
        case 8: 
          { return PLUS;
          }
        case 34: break;
        case 15: 
          { return EQUALS;
          }
        case 35: break;
        case 17: 
          { return COLON;
          }
        case 36: break;
        case 13: 
          { return LEFTBRACE;
          }
        case 37: break;
        case 18: 
          { return LT;
          }
        case 38: break;
        case 16: 
          { return SEMICOLON;
          }
        case 39: break;
        case 11: 
          { return LEFTBRACKET;
          }
        case 40: break;
        case 10: 
          { return RIGHTCURLYBRACE;
          }
        case 41: break;
        case 6: 
          { return INTEGER;
          }
        case 42: break;
        case 3: 
          { return MULTIPLY;
          }
        case 43: break;
        case 19: 
          { return GT;
          }
        case 44: break;
        case 24: 
          // lookahead expression with fixed lookahead length
          yypushback(1);
          { return NUMBER;
          }
        case 45: break;
        case 12: 
          { return RIGHTBRACKET;
          }
        case 46: break;
        case 22: 
          { return LITERAL;
          }
        case 47: break;
        case 2: 
          { return com.intellij.psi.TokenType.WHITE_SPACE;
          }
        case 48: break;
        default:
          if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
            zzAtEOF = true;
            return null;
          }
          else {
            zzScanError(ZZ_NO_MATCH);
          }
      }
    }
  }
/**
   * Resumes scanning until the next regular expression is matched,
   * the end of input is encountered or an I/O-Error occurs.
   *
   * @return      the next token
   * @exception   java.io.IOException  if any I/O-Error occurs
   */
Resumes scanning until the next regular expression is matched,
the end of input is encountered or an I/O-Error occurs.

@return      the next token
@exception   java.io.IOException  if any I/O-Error occurs
Resumes scanning until the next regular expression is matched the end of input is encountered or an I / O - Error occurs . @return the next token @exception java . io . IOException if any I / O - Error occurs
public IElementType advance() throws java.io.IOException {
    int zzInput;
    int zzAction;
    int zzCurrentPosL;
    int zzMarkedPosL;
    int zzEndReadL = zzEndRead;
    CharSequence zzBufferL = zzBuffer;
    char[] zzBufferArrayL = zzBufferArray;
    char [] zzCMapL = ZZ_CMAP;
    int [] zzTransL = ZZ_TRANS;
    int [] zzRowMapL = ZZ_ROWMAP;
    int [] zzAttrL = ZZ_ATTRIBUTE;
    while (true) {
      zzMarkedPosL = zzMarkedPos;
      zzAction = -1;
      zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
      zzState = ZZ_LEXSTATE[zzLexicalState];
      zzForAction: {
        while (true) {
          if (zzCurrentPosL < zzEndReadL)
            zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
          else if (zzAtEOF) {
            zzInput = YYEOF;
            break zzForAction;
          }
          else {
            zzCurrentPos  = zzCurrentPosL;
            zzMarkedPos   = zzMarkedPosL;
            boolean eof = zzRefill();
            zzCurrentPosL  = zzCurrentPos;
            zzMarkedPosL   = zzMarkedPos;
            zzBufferL      = zzBuffer;
            zzEndReadL     = zzEndRead;
            if (eof) {
              zzInput = YYEOF;
              break zzForAction;
            }
            else {
              zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
            }
          }
          int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ];
          if (zzNext == -1) break zzForAction;
          zzState = zzNext;
          int zzAttributes = zzAttrL[zzState];
          if ( (zzAttributes & 1) == 1 ) {
            zzAction = zzState;
            zzMarkedPosL = zzCurrentPosL;
            if ( (zzAttributes & 8) == 8 ) break zzForAction;
          }
        }
      }
      zzMarkedPos = zzMarkedPosL;
      switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
        case 20: 
          { return COMMA;
          }
        case 25: break;
        case 21: 
          { return BLOCKCOMMENT;
          }
        case 26: break;
        case 9: 
          { return LEFTCURLYBRACE;
          }
        case 27: break;
        case 4: 
          { return COMMENT;
          }
        case 28: break;
        case 23: 
          { return STIDENTIFIER;
          }
        case 29: break;
        case 14: 
          { return RIGHTBRACE;
          }
        case 30: break;
        case 5: 
          { return IDENTIFIER;
          }
        case 31: break;
        case 1: 
          { return com.intellij.psi.TokenType.BAD_CHARACTER;
          }
        case 32: break;
        case 7: 
          { return MINUS;
          }
        case 33: break;
        case 8: 
          { return PLUS;
          }
        case 34: break;
        case 15: 
          { return EQUALS;
          }
        case 35: break;
        case 17: 
          { return COLON;
          }
        case 36: break;
        case 13: 
          { return LEFTBRACE;
          }
        case 37: break;
        case 18: 
          { return LT;
          }
        case 38: break;
        case 16: 
          { return SEMICOLON;
          }
        case 39: break;
        case 11: 
          { return LEFTBRACKET;
          }
        case 40: break;
        case 10: 
          { return RIGHTCURLYBRACE;
          }
        case 41: break;
        case 6: 
          { return INTEGER;
          }
        case 42: break;
        case 3: 
          { return MULTIPLY;
          }
        case 43: break;
        case 19: 
          { return GT;
          }
        case 44: break;
        case 24: 
          yypushback(1);
          { return NUMBER;
          }
        case 45: break;
        case 12: 
          { return RIGHTBRACKET;
          }
        case 46: break;
        case 22: 
          { return LITERAL;
          }
        case 47: break;
        case 2: 
          { return com.intellij.psi.TokenType.WHITE_SPACE;
          }
        case 48: break;
        default:
          if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
            zzAtEOF = true;
            return null;
          }
          else {
            zzScanError(ZZ_NO_MATCH);
          }
      }
    }
  }
public IElementType advance ( ) throws java . io . IOException { int zzInput ; int zzAction ; int zzCurrentPosL ; int zzMarkedPosL ; int zzEndReadL = zzEndRead ; CharSequence zzBufferL = zzBuffer ; char [ ] zzBufferArrayL = zzBufferArray ; char [ ] zzCMapL = ZZ_CMAP ; int [ ] zzTransL = ZZ_TRANS ; int [ ] zzRowMapL = ZZ_ROWMAP ; int [ ] zzAttrL = ZZ_ATTRIBUTE ; while ( true ) { zzMarkedPosL = zzMarkedPos ; zzAction = - 1 ; zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL ; zzState = ZZ_LEXSTATE [ zzLexicalState ] ; zzForAction : { while ( true ) { if ( zzCurrentPosL < zzEndReadL ) zzInput = ( zzBufferArrayL != null ? zzBufferArrayL [ zzCurrentPosL ++ ] : zzBufferL . charAt ( zzCurrentPosL ++ ) ) ; else if ( zzAtEOF ) { zzInput = YYEOF ; break zzForAction ; } else { zzCurrentPos = zzCurrentPosL ; zzMarkedPos = zzMarkedPosL ; boolean eof = zzRefill ( ) ; zzCurrentPosL = zzCurrentPos ; zzMarkedPosL = zzMarkedPos ; zzBufferL = zzBuffer ; zzEndReadL = zzEndRead ; if ( eof ) { zzInput = YYEOF ; break zzForAction ; } else { zzInput = ( zzBufferArrayL != null ? zzBufferArrayL [ zzCurrentPosL ++ ] : zzBufferL . charAt ( zzCurrentPosL ++ ) ) ; } } int zzNext = zzTransL [ zzRowMapL [ zzState ] + zzCMapL [ zzInput ] ] ; if ( zzNext == - 1 ) break zzForAction ; zzState = zzNext ; int zzAttributes = zzAttrL [ zzState ] ; if ( ( zzAttributes & 1 ) == 1 ) { zzAction = zzState ; zzMarkedPosL = zzCurrentPosL ; if ( ( zzAttributes & 8 ) == 8 ) break zzForAction ; } } } zzMarkedPos = zzMarkedPosL ; switch ( zzAction < 0 ? zzAction : ZZ_ACTION [ zzAction ] ) { case 20 : { return COMMA ; } case 25 : break ; case 21 : { return BLOCKCOMMENT ; } case 26 : break ; case 9 : { return LEFTCURLYBRACE ; } case 27 : break ; case 4 : { return COMMENT ; } case 28 : break ; case 23 : { return STIDENTIFIER ; } case 29 : break ; case 14 : { return RIGHTBRACE ; } case 30 : break ; case 5 : { return IDENTIFIER ; } case 31 : break ; case 1 : { return com . intellij . psi . TokenType . BAD_CHARACTER ; } case 32 : break ; case 7 : { return MINUS ; } case 33 : break ; case 8 : { return PLUS ; } case 34 : break ; case 15 : { return EQUALS ; } case 35 : break ; case 17 : { return COLON ; } case 36 : break ; case 13 : { return LEFTBRACE ; } case 37 : break ; case 18 : { return LT ; } case 38 : break ; case 16 : { return SEMICOLON ; } case 39 : break ; case 11 : { return LEFTBRACKET ; } case 40 : break ; case 10 : { return RIGHTCURLYBRACE ; } case 41 : break ; case 6 : { return INTEGER ; } case 42 : break ; case 3 : { return MULTIPLY ; } case 43 : break ; case 19 : { return GT ; } case 44 : break ; case 24 : yypushback ( 1 ) ; { return NUMBER ; } case 45 : break ; case 12 : { return RIGHTBRACKET ; } case 46 : break ; case 22 : { return LITERAL ; } case 47 : break ; case 2 : { return com . intellij . psi . TokenType . WHITE_SPACE ; } case 48 : break ; default : if ( zzInput == YYEOF && zzStartRead == zzCurrentPos ) { zzAtEOF = true ; return null ; } else { zzScanError ( ZZ_NO_MATCH ) ; } } } }
Resumes scanning until the next regular expression is matched,
 the end of input is encountered or an I/O-Error occurs.
Resumes scanning until the next regular expression is matched the end of input is encountered or an I / O - Error occurs .
// cached fields: // store back cached positions // get translated positions and possibly new buffer // store back cached position // lookahead expression with fixed lookahead length