C# Класс Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionTreeRewriter

Наследование: Microsoft.CSharp.RuntimeBinder.Semantics.ExprVisitorBase
Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
alwaysRewrite bool
currentAnonMeth EXPRBOUNDLAMBDA
expressionFactory ExprFactory
symbolLoader SymbolLoader

Открытые методы

Метод Описание
Rewrite ( EXPR expr, ExprFactory expressionFactory, SymbolLoader symbolLoader ) : EXPR

Защищенные методы

Метод Описание
CreateTypeOf ( CType CType ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF
CreateWraps ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
DestroyWraps ( EXPRBOUNDLAMBDA anonmeth, EXPR sequence ) : EXPR
Dispatch ( EXPR expr ) : EXPR
ExpressionTreeRewriter ( ExprFactory expressionFactory, SymbolLoader symbolLoader ) : System.Diagnostics
FixLiftedUserDefinedBinaryOperators ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr, EXPR &pp1, EXPR &pp2 ) : void
GenerateArgsList ( EXPR oldArgs ) : EXPR
GenerateBuiltInBinaryOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
GenerateBuiltInUnaryOperator ( EXPRUNARYOP expr ) : EXPR
GenerateBuiltInUnaryOperator ( PREDEFMETH pdm, EXPR pOriginalOperator, EXPR pOperator ) : EXPR
GenerateCall ( PREDEFMETH pdm, EXPR arg1 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2, EXPR arg3 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2, EXPR arg3, EXPR arg4 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
GenerateConstant ( EXPR expr ) : EXPR
GenerateConstructor ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
GenerateConversion ( EXPR arg, CType CType, bool bChecked ) : EXPR
GenerateConversionWithSource ( EXPR pTarget, CType pType, bool bChecked ) : EXPR
GenerateDelegateConstructor ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
GenerateDelegateInvoke ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
GenerateIndexList ( EXPR oldIndices ) : EXPR
GenerateMembersArray ( AggregateType anonymousType, PredefinedType pt ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT
GenerateParameter ( string name, CType CType ) : EXPR
GenerateParamsArray ( EXPR args, PredefinedType pt ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT
GenerateQuestionMarkOperand ( EXPR pExpr ) : EXPR
GenerateUserDefinedBinaryOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
GenerateUserDefinedComparisonOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
GenerateUserDefinedConversion ( EXPR arg, CType CType, EXPR target, MethWithInst method ) : EXPR
GenerateUserDefinedConversion ( EXPR arg, CType type, MethWithInst method ) : EXPR
GenerateUserDefinedConversion ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION pExpr, EXPR pArgument ) : EXPR
GenerateUserDefinedUnaryOperator ( EXPRUNARYOP expr ) : EXPR
GenerateValueAccessConversion ( EXPR pArgument ) : EXPR
GetExprFactory ( ) : ExprFactory
GetPreDefMethod ( PREDEFMETH pdm ) : MethodSymbol
GetSymbolLoader ( ) : SymbolLoader
IsDelegateConstructorCall ( EXPR pExpr ) : bool
IsNullableValueAccess ( EXPR pExpr, EXPR pObject ) : bool
IsNullableValueType ( CType pType ) : bool
RewriteLambdaBody ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
RewriteLambdaParameters ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
VisitARRAYINDEX ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYINDEX pExpr ) : EXPR
VisitARRAYLENGTH ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYLENGTH pExpr ) : EXPR
VisitARRINIT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT expr ) : EXPR
VisitASSIGNMENT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRASSIGNMENT assignment ) : EXPR
VisitBINOP ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
VisitBOUNDLAMBDA ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
VisitCALL ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
VisitCAST ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCAST pExpr ) : EXPR
VisitCONCAT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONCAT expr ) : EXPR
VisitCONSTANT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT expr ) : EXPR
VisitFIELD ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD expr ) : EXPR
VisitLOCAL ( EXPRLOCAL local ) : EXPR
VisitMULTI ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI pExpr ) : EXPR
VisitMULTIGET ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTIGET pExpr ) : EXPR
VisitPROP ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP expr ) : EXPR
VisitQUESTIONMARK ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK pExpr ) : EXPR
VisitTHISPOINTER ( EXPRTHISPOINTER expr ) : EXPR
VisitTYPEOF ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF expr ) : EXPR
VisitUNARYOP ( EXPRUNARYOP pExpr ) : EXPR
VisitUSERDEFINEDCONVERSION ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION expr ) : EXPR
VisitZEROINIT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRZEROINIT expr ) : EXPR

Приватные методы

Метод Описание
isEnumToDecimalConversion ( CType argtype, CType desttype ) : bool

Описание методов

CreateTypeOf() защищенный Метод

protected CreateTypeOf ( CType CType ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF
CType CType
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF

CreateWraps() защищенный Метод

protected CreateWraps ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
anonmeth EXPRBOUNDLAMBDA
Результат EXPR

DestroyWraps() защищенный Метод

protected DestroyWraps ( EXPRBOUNDLAMBDA anonmeth, EXPR sequence ) : EXPR
anonmeth EXPRBOUNDLAMBDA
sequence EXPR
Результат EXPR

Dispatch() защищенный Метод

protected Dispatch ( EXPR expr ) : EXPR
expr EXPR
Результат EXPR

ExpressionTreeRewriter() защищенный Метод

protected ExpressionTreeRewriter ( ExprFactory expressionFactory, SymbolLoader symbolLoader ) : System.Diagnostics
expressionFactory ExprFactory
symbolLoader SymbolLoader
Результат System.Diagnostics

FixLiftedUserDefinedBinaryOperators() защищенный Метод

protected FixLiftedUserDefinedBinaryOperators ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr, EXPR &pp1, EXPR &pp2 ) : void
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
pp1 EXPR
pp2 EXPR
Результат void

GenerateArgsList() защищенный Метод

protected GenerateArgsList ( EXPR oldArgs ) : EXPR
oldArgs EXPR
Результат EXPR

GenerateBuiltInBinaryOperator() защищенный Метод

protected GenerateBuiltInBinaryOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
Результат EXPR

GenerateBuiltInUnaryOperator() защищенный Метод

protected GenerateBuiltInUnaryOperator ( EXPRUNARYOP expr ) : EXPR
expr EXPRUNARYOP
Результат EXPR

GenerateBuiltInUnaryOperator() защищенный Метод

protected GenerateBuiltInUnaryOperator ( PREDEFMETH pdm, EXPR pOriginalOperator, EXPR pOperator ) : EXPR
pdm PREDEFMETH
pOriginalOperator EXPR
pOperator EXPR
Результат EXPR

GenerateCall() защищенный Метод

protected GenerateCall ( PREDEFMETH pdm, EXPR arg1 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
pdm PREDEFMETH
arg1 EXPR
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL

GenerateCall() защищенный Метод

protected GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
pdm PREDEFMETH
arg1 EXPR
arg2 EXPR
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL

GenerateCall() защищенный Метод

protected GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2, EXPR arg3 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
pdm PREDEFMETH
arg1 EXPR
arg2 EXPR
arg3 EXPR
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL

GenerateCall() защищенный Метод

protected GenerateCall ( PREDEFMETH pdm, EXPR arg1, EXPR arg2, EXPR arg3, EXPR arg4 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
pdm PREDEFMETH
arg1 EXPR
arg2 EXPR
arg3 EXPR
arg4 EXPR
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL

GenerateConstant() защищенный Метод

protected GenerateConstant ( EXPR expr ) : EXPR
expr EXPR
Результат EXPR

GenerateConstructor() защищенный Метод

protected GenerateConstructor ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
Результат EXPR

GenerateConversion() защищенный Метод

protected GenerateConversion ( EXPR arg, CType CType, bool bChecked ) : EXPR
arg EXPR
CType CType
bChecked bool
Результат EXPR

GenerateConversionWithSource() защищенный Метод

protected GenerateConversionWithSource ( EXPR pTarget, CType pType, bool bChecked ) : EXPR
pTarget EXPR
pType CType
bChecked bool
Результат EXPR

GenerateDelegateConstructor() защищенный Метод

protected GenerateDelegateConstructor ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
Результат EXPR

GenerateDelegateInvoke() защищенный Метод

protected GenerateDelegateInvoke ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
Результат EXPR

GenerateIndexList() защищенный Метод

protected GenerateIndexList ( EXPR oldIndices ) : EXPR
oldIndices EXPR
Результат EXPR

GenerateMembersArray() защищенный Метод

protected GenerateMembersArray ( AggregateType anonymousType, PredefinedType pt ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT
anonymousType AggregateType
pt PredefinedType
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT

GenerateParameter() защищенный Метод

protected GenerateParameter ( string name, CType CType ) : EXPR
name string
CType CType
Результат EXPR

GenerateParamsArray() защищенный Метод

protected GenerateParamsArray ( EXPR args, PredefinedType pt ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT
args EXPR
pt PredefinedType
Результат Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT

GenerateQuestionMarkOperand() защищенный Метод

protected GenerateQuestionMarkOperand ( EXPR pExpr ) : EXPR
pExpr EXPR
Результат EXPR

GenerateUserDefinedBinaryOperator() защищенный Метод

protected GenerateUserDefinedBinaryOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
Результат EXPR

GenerateUserDefinedComparisonOperator() защищенный Метод

protected GenerateUserDefinedComparisonOperator ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
Результат EXPR

GenerateUserDefinedConversion() защищенный Метод

protected GenerateUserDefinedConversion ( EXPR arg, CType CType, EXPR target, MethWithInst method ) : EXPR
arg EXPR
CType CType
target EXPR
method MethWithInst
Результат EXPR

GenerateUserDefinedConversion() защищенный Метод

protected GenerateUserDefinedConversion ( EXPR arg, CType type, MethWithInst method ) : EXPR
arg EXPR
type CType
method MethWithInst
Результат EXPR

GenerateUserDefinedConversion() защищенный Метод

protected GenerateUserDefinedConversion ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION pExpr, EXPR pArgument ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION
pArgument EXPR
Результат EXPR

GenerateUserDefinedUnaryOperator() защищенный Метод

protected GenerateUserDefinedUnaryOperator ( EXPRUNARYOP expr ) : EXPR
expr EXPRUNARYOP
Результат EXPR

GenerateValueAccessConversion() защищенный Метод

protected GenerateValueAccessConversion ( EXPR pArgument ) : EXPR
pArgument EXPR
Результат EXPR

GetExprFactory() защищенный Метод

protected GetExprFactory ( ) : ExprFactory
Результат ExprFactory

GetPreDefMethod() защищенный Метод

protected GetPreDefMethod ( PREDEFMETH pdm ) : MethodSymbol
pdm PREDEFMETH
Результат MethodSymbol

GetSymbolLoader() защищенный Метод

protected GetSymbolLoader ( ) : SymbolLoader
Результат SymbolLoader

IsDelegateConstructorCall() защищенный Метод

protected IsDelegateConstructorCall ( EXPR pExpr ) : bool
pExpr EXPR
Результат bool

IsNullableValueAccess() защищенный Метод

protected IsNullableValueAccess ( EXPR pExpr, EXPR pObject ) : bool
pExpr EXPR
pObject EXPR
Результат bool

IsNullableValueType() защищенный Метод

protected IsNullableValueType ( CType pType ) : bool
pType CType
Результат bool

Rewrite() публичный статический Метод

public static Rewrite ( EXPR expr, ExprFactory expressionFactory, SymbolLoader symbolLoader ) : EXPR
expr EXPR
expressionFactory ExprFactory
symbolLoader SymbolLoader
Результат EXPR

RewriteLambdaBody() защищенный Метод

protected RewriteLambdaBody ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
anonmeth EXPRBOUNDLAMBDA
Результат EXPR

RewriteLambdaParameters() защищенный Метод

protected RewriteLambdaParameters ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
anonmeth EXPRBOUNDLAMBDA
Результат EXPR

VisitARRAYINDEX() защищенный Метод

protected VisitARRAYINDEX ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYINDEX pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYINDEX
Результат EXPR

VisitARRAYLENGTH() защищенный Метод

protected VisitARRAYLENGTH ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYLENGTH pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRAYLENGTH
Результат EXPR

VisitARRINIT() защищенный Метод

protected VisitARRINIT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRARRINIT
Результат EXPR

VisitASSIGNMENT() защищенный Метод

protected VisitASSIGNMENT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRASSIGNMENT assignment ) : EXPR
assignment Microsoft.CSharp.RuntimeBinder.Semantics.EXPRASSIGNMENT
Результат EXPR

VisitBINOP() защищенный Метод

protected VisitBINOP ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
Результат EXPR

VisitBOUNDLAMBDA() защищенный Метод

protected VisitBOUNDLAMBDA ( EXPRBOUNDLAMBDA anonmeth ) : EXPR
anonmeth EXPRBOUNDLAMBDA
Результат EXPR

VisitCALL() защищенный Метод

protected VisitCALL ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
Результат EXPR

VisitCAST() защищенный Метод

protected VisitCAST ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCAST pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCAST
Результат EXPR

VisitCONCAT() защищенный Метод

protected VisitCONCAT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONCAT expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONCAT
Результат EXPR

VisitCONSTANT() защищенный Метод

protected VisitCONSTANT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT
Результат EXPR

VisitFIELD() защищенный Метод

protected VisitFIELD ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD
Результат EXPR

VisitLOCAL() защищенный Метод

protected VisitLOCAL ( EXPRLOCAL local ) : EXPR
local EXPRLOCAL
Результат EXPR

VisitMULTI() защищенный Метод

protected VisitMULTI ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI
Результат EXPR

VisitMULTIGET() защищенный Метод

protected VisitMULTIGET ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTIGET pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTIGET
Результат EXPR

VisitPROP() защищенный Метод

protected VisitPROP ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP
Результат EXPR

VisitQUESTIONMARK() защищенный Метод

protected VisitQUESTIONMARK ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK pExpr ) : EXPR
pExpr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK
Результат EXPR

VisitTHISPOINTER() защищенный Метод

protected VisitTHISPOINTER ( EXPRTHISPOINTER expr ) : EXPR
expr EXPRTHISPOINTER
Результат EXPR

VisitTYPEOF() защищенный Метод

protected VisitTYPEOF ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRTYPEOF
Результат EXPR

VisitUNARYOP() защищенный Метод

protected VisitUNARYOP ( EXPRUNARYOP pExpr ) : EXPR
pExpr EXPRUNARYOP
Результат EXPR

VisitUSERDEFINEDCONVERSION() защищенный Метод

protected VisitUSERDEFINEDCONVERSION ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRUSERDEFINEDCONVERSION
Результат EXPR

VisitZEROINIT() защищенный Метод

protected VisitZEROINIT ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRZEROINIT expr ) : EXPR
expr Microsoft.CSharp.RuntimeBinder.Semantics.EXPRZEROINIT
Результат EXPR

Описание свойств

alwaysRewrite защищенное свойство

protected bool alwaysRewrite
Результат bool

currentAnonMeth защищенное свойство

protected EXPRBOUNDLAMBDA,Microsoft.CSharp.RuntimeBinder.Semantics currentAnonMeth
Результат EXPRBOUNDLAMBDA

expressionFactory защищенное свойство

protected ExprFactory,Microsoft.CSharp.RuntimeBinder.Semantics expressionFactory
Результат ExprFactory

symbolLoader защищенное свойство

protected SymbolLoader,Microsoft.CSharp.RuntimeBinder.Semantics symbolLoader
Результат SymbolLoader