Package ghidra.app.util.cparser.CPP

# Class PreProcessorTokenManager

java.lang.Object
ghidra.app.util.cparser.CPP.PreProcessorTokenManager

All Implemented Interfaces:
  `PreProcessorConstants`

public class PreProcessorTokenManager extends Object implements PreProcessorConstants
Token Manager.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected char`
  `curChar`
  `PrintStream`
  `debugStream`
  Debug output.
  `protected SimpleCharStream`
  `input_stream`
  `static final int[]`
  `jjnewLexState`
  Lex State array.
  `static final String[]`
  `jjstrLiteralImages`
  Token literal values.
  `static final String[]`
  `lexStateNames`
  Lexer state names.

  ### Fields inherited from interface ghidra.app.util.cparser.CPP.PreProcessorConstants

  `__LT, _AND, _BLANKLINE, _BOM, _CMT, _CMT0, _CMT11, _CMT3, _CMT4, _CMT5, _COD, _COD_PRAG, _COD_WSP, _COD1, _COD2, _COD3, _COD4, _CODC, _COLON, _CTRL, _ECMT10, _ECMT3, _ECMT5, _ECMT7, _ECMT8, _ECMT9, _EECMT7, _EECMT9, _EEECMT9, _ENDREL, _EQ, _EQT, _EQT1, _GE, _GT, _HEX, _INCCOD, _INCCP, _INCOP, _INCSTANDARD, _INCWSP, _LCMT, _LCMT0, _LCMT11, _LCMT20, _LCMT21, _LCMT4, _LCMT7, _LCMTPRAG, _LE, _LEADIN1, _LEADIN2, _LOG_AND, _LOG_OR, _LSH, _LT, _MACWSP, _MINUS, _MWSP, _NEQ, _OR, _PERCENT, _PLUS, _QMARK, _QTE, _QTE0, _QTE1, _RSH, _SCMT_PRAG, _TOEOL, _WSP, _WSP_INFO, _WSP0, _WSP2, _WSP3, _WSP4, _WSP5, _WSP6, _WSP7, _WSP8, _XOR, _XSYM, _XSYMENDL, AND, BEGITEM, CMNTNL, CMT, COD, COLON, COMMA, COMMENT, CONLINE, CONSTANT, CONSTITUENT, CONTARG, CP, DECIMAL_LITERAL, DEFAULT, DEFD, DEFINE, DEFINED, DIR, DIRECTIVE, DIRECTIVECOMMENT, DIRLINE, DIVIDE, ECMT, ELIF, ELSE, ENDCMT, ENDIF, ENDITEM, ENDL, ENDREL, EOF, EOLCMNTNL, EQ, ERRLINE, ERROR, ERROR_EXPRN, ESTD, EXPATH, EXPONENT, FP_LITERAL, FP_NUMERIC, GE, GT, HASINCLUDE, HASINCLUDENEXT, HEX_DIGIT, HEX_LITERAL, IF, IFDEF, IFDEF_EXPRN, IFDEFED, IFDLINE, IFNDEF, IFNDEF_EXPRN, IFNDEFED, IFNDLINE, IGNORETOEOL, INCDEF, INCLINE, INCLUDE, INFO, INFO_EXPRN, INFOLINE, INTEGER_LITERAL, ITEM, LE, LEADIN3, LINE, LINECOMMENT, LINEINFO, LINLINE, LOG_AND, LOG_OR, LSH, LT, MACEXPPATH, MACROARGS, MACROARGSEND, MACROMV, MACROMVTAG, MACRORV, MACRORVCMT, MACROVALS, MACROVALS_COMMENT, MANIFEST, MCVLINE, MINUS, MOD, MOREARG, MOREVAL, MQUOTED_VAL, MQUOTED_VALUE, NEQ, NEWLINE, NOPAR, NOT, NOTCHR, NOTCMT, NOTCMTCOD, NOTENDL, NOTENDLC, NOTENDLSTAR, NOTVALCMT, NOTWQC, NOTWS, NOTWSQ, NOTWSQLT, NOTWWSQLT, NUMERIC, OCTAL_LITERAL, OP, OPTD, OPTIONED, OR, OTHER_TEXT, OUTER_TEXT, PLUS, PRAGLINE, PRAGMA, PRAGMA_EXPRN, QMARK, QUOTED_TEXT, QUOTED_VAL, QUOTED_VALUE, REL, RELATIVE, RELPATH, RSH, RVALUES, RVALUES_COMMENT, RVSLINE, SpecialBlockComment, SpecialEOLComment, STANDARD, STARTCMT, STD, STDPATH, TIMES, tokenImage, UNDEFINE, UNDIR, UNDIRALL, UNDLINE, VALUES, VALUESCMT, WARNING, WARNING_EXPRN, WARNLINE, WS, WSP, XOR, XSYM, XSYMLINK, XSYMLINKPATH, XSYMPATH`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PreProcessorTokenManager(SimpleCharStream stream)`
  Constructor.
  `PreProcessorTokenManager(SimpleCharStream stream, int lexState)`
  Constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Token`
  `getNextToken()`
  Get the next Token.
  `protected Token`
  `jjFillToken()`
  `void`
  `ReInit(SimpleCharStream stream)`
  Reinitialise parser.
  `void`
  `ReInit(SimpleCharStream stream, int lexState)`
  Reinitialise parser.
  `void`
  `setDebugStream(PrintStream ds)`
  Set debug output.
  `void`
  `SwitchTo(int lexState)`
  Switch to specified lex state.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### debugStream

    public PrintStream debugStream
    Debug output.

  - ### jjstrLiteralImages

    public static final String[] jjstrLiteralImages
    Token literal values.

  - ### lexStateNames

    public static final String[] lexStateNames
    Lexer state names.

  - ### jjnewLexState

    public static final int[] jjnewLexState
    Lex State array.

  - ### input_stream

    protected SimpleCharStream input_stream

  - ### curChar

    protected char curChar

- ## Constructor Details

  - ### PreProcessorTokenManager

    public PreProcessorTokenManager(SimpleCharStream stream)
    Constructor.

  - ### PreProcessorTokenManager

    public PreProcessorTokenManager(SimpleCharStream stream, int lexState)
    Constructor.

- ## Method Details

  - ### setDebugStream

    public void setDebugStream(PrintStream ds)
    Set debug output.

  - ### ReInit

    public void ReInit(SimpleCharStream stream)
    Reinitialise parser.

  - ### ReInit

    public void ReInit(SimpleCharStream stream, int lexState)
    Reinitialise parser.

  - ### SwitchTo

    public void SwitchTo(int lexState)
    Switch to specified lex state.

  - ### jjFillToken

    protected Token jjFillToken()

  - ### getNextToken

    public Token getNextToken()
    Get the next Token.