C# Class ilcclib.Preprocessor.CPreprocessorContext

Datei anzeigen Open project: soywiz/ilcc Class Usage Examples

Public Properties

Property Type Description
DebugPreprocessor bool
FileName string
Macros Macro>.Dictionary
Text string

Public Methods

Method Description
CPreprocessorContext ( IIncludeReader IncludeReader, TextWriter TextWriter ) : System
DumpMacros ( ) : void
EvaluateExpression ( CTokenReader Tokens ) : int
EvaluateExpressionAnd ( CTokenReader Tokens ) : int
EvaluateExpressionEquality ( CTokenReader Tokens ) : int
EvaluateExpressionInequality ( CTokenReader Tokens ) : int
EvaluateExpressionLogicalAnd ( CTokenReader Tokens ) : int
EvaluateExpressionLogicalOr ( CTokenReader Tokens ) : int
EvaluateExpressionOr ( CTokenReader Tokens ) : int
EvaluateExpressionProduct ( CTokenReader Tokens ) : int
EvaluateExpressionShift ( CTokenReader Tokens ) : int
EvaluateExpressionSum ( CTokenReader Tokens ) : int
EvaluateExpressionTernary ( CTokenReader Tokens ) : int

EvaluateExpressionUnary ( CTokenReader Tokens ) : int
EvaluateExpressionXor ( CTokenReader Tokens ) : int
IsDefinedExpression ( CTokenReader Tokens ) : bool
SetText ( string FileName, string NewText, System.Action Action ) : void
ShowLine ( CToken TokenCurrent ) : void

Private Methods

Method Description
BinaryOperation ( int Left, string Operator, int Right ) : int
TrinaryOperation ( int Cond, int True, int False ) : int
UnaryOperation ( string Operator, int Right ) : int
_EvaluateExpressionStep ( int>.Func ParseLeftExpression, int>.Func ParseRightExpression, HashSet Operators, CTokenReader Tokens ) : int

_EvaluateExpressionStep ( int>.Func ParseLeftRightExpression, HashSet Operators, CTokenReader Tokens ) : int

Method Details

CPreprocessorContext() public method

public CPreprocessorContext ( IIncludeReader IncludeReader, TextWriter TextWriter ) : System
IncludeReader IIncludeReader
TextWriter System.IO.TextWriter
return System

DumpMacros() public method

public DumpMacros ( ) : void
return void

EvaluateExpression() public method

public EvaluateExpression ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionAnd() public method

public EvaluateExpressionAnd ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionEquality() public method

public EvaluateExpressionEquality ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionInequality() public method

public EvaluateExpressionInequality ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionLogicalAnd() public method

public EvaluateExpressionLogicalAnd ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionLogicalOr() public method

public EvaluateExpressionLogicalOr ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionOr() public method

public EvaluateExpressionOr ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionProduct() public method

public EvaluateExpressionProduct ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionShift() public method

public EvaluateExpressionShift ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionSum() public method

public EvaluateExpressionSum ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionTernary() public method

public EvaluateExpressionTernary ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionUnary() public method

public EvaluateExpressionUnary ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

EvaluateExpressionXor() public method

public EvaluateExpressionXor ( CTokenReader Tokens ) : int
Tokens ilcclib.Tokenizer.CTokenReader
return int

IsDefinedExpression() public method

public IsDefinedExpression ( CTokenReader Tokens ) : bool
Tokens ilcclib.Tokenizer.CTokenReader
return bool

SetText() public method

public SetText ( string FileName, string NewText, System.Action Action ) : void
FileName string
NewText string
Action System.Action
return void

ShowLine() public method

public ShowLine ( CToken TokenCurrent ) : void
TokenCurrent ilcclib.Tokenizer.CToken
return void

Property Details

DebugPreprocessor public_oe property

public bool DebugPreprocessor
return bool

FileName public_oe property

public string FileName
return string

Macros public_oe property

public Dictionary Macros
return Macro>.Dictionary

Text public_oe property

public string Text
return string