C# Class Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder

Afficher le fichier Open project: dotnet/corefx Class Usage Examples

Protected Properties

Свойство Type Description
Context BindingContext
g_binopSignatures BinOpSig[]
g_rguos UnaOpSig[]
m_nullable CNullable

Private Properties

Свойство Type Description
AdjustMemberObject EXPR
BindArrayIndexCore EXPR
BindBoolBinOp EXPR
BindBoolBitwiseOp EXPR
BindBoolUnaOp EXPR
BindDecBinOp EXPR
BindDecUnaOp EXPR
BindDelBinOp EXPR
BindEnumBinOp EXPR
BindEnumUnaOp EXPR
BindIncOp EXPR
BindIncOpCore EXPR
BindIntBinOp EXPR
BindIntOp EXPR
BindIntUnaOp EXPR
BindIntegerNeg EXPR
BindLiftedBoolBitwiseOp EXPR
BindLiftedIncOp Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI
BindLiftedStandardBinOp EXPR
BindLiftedStandardUnop EXPR
BindLiftedUDBinop Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindLiftedUDUnop Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindMethodGroupToArguments EXPR
BindMethodGroupToArgumentsCore bool
BindNonliftedIncOp Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI
BindNubNew Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindNubValue EXPR
BindPredefMethToArgs Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindPtrBinOp EXPR
BindPtrCmpOp EXPR
BindRealBinOp EXPR
BindRealUnaOp EXPR
BindRefCmpOp EXPR
BindShiftOp EXPR
BindStrBinOp EXPR
BindStrCmpOp EXPR
BindToField EXPR
BindToField EXPR
BindToMethod Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindToProperty EXPR
BindUDBinop Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUDBinopCall Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUDUnopCall Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUserBoolOp EXPR
CalculateExprAndUnaryOpKinds bool
CanConvertArg1 bool
CanConvertArg2 bool
ContextForMemberLookup Microsoft.CSharp.RuntimeBinder.Semantics.Declaration
CountArguments int
CreateBinopForPredefMethodCall Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
CreateUnaryOpForPredefMethodCall EXPRUNARYOP
EnsureChecked void
FillInArgInfoFromArgList void
FindApplicableSignatures bool
FindName int
FoldConstI4Op EXPR
FoldConstI8Op EXPR
FoldIntegerConstants EXPR
GetApplicableUserDefinedBinaryOperatorCandidates bool
GetApplicableUserDefinedBinaryOperatorCandidatesInBaseTypes AggregateType
GetBinopKindAndFlags bool
GetEnumBinOpType AggregateType
GetErrorContext Microsoft.CSharp.RuntimeBinder.Errors.ErrorHandling
GetExprConstants ConstValFactory
GetExprFactory ExprFactory
GetStandardLvalueError ErrorCode
GetUserDefinedBinopArgumentType AggregateType
GetUserDefinedBinopArgumentTypes int
IsMatchingStatic bool
LScalar EXPR
LiftArgument void
PopulateSignatureList UnaryOperatorSignatureFindResult
PostBindMethod void
RearrangeNamedArguments TypeArray
RecordBinOpSigFromArgs void
UserDefinedBinaryOperatorCanBeLifted bool
UserDefinedBinaryOperatorIsApplicable bool
VSFAIL void
VerifyNamedArgumentsAfterFixed bool
WhichBofsIsBetter int
WhichUofsIsBetter int
ambiguousOperatorError EXPR
bindFloatOp EXPR
bindStringConcat EXPR
bindUDUnop EXPR
checkLvalue bool
chooseArrayIndexType CType
isConvInTable bool
isDivByZero bool
objectIsLvalue bool

Méthodes publiques

Méthode Description
BindStandardBinop ( ExpressionKind ek, EXPR arg1, EXPR arg2 ) : EXPR
BindStandardUnaryOperator ( OperatorKind op, EXPR pArgument ) : EXPR
ExpressionBinder ( BindingContext context ) : System
GenerateAssignmentConversion ( EXPR op1, EXPR op2, bool allowExplicit ) : EXPR
GetContext ( ) : BindingContext
GetSemanticChecker ( ) : Microsoft.CSharp.RuntimeBinder.Semantics.CSemanticChecker
IsMethPropCallable ( MethodOrPropertySymbol sym, bool requireUC ) : bool
RecordUnsafeUsage ( BindingContext context ) : void
RemapToOverride ( SymbolLoader symbolLoader, SymWithType pswt, CType typeObj ) : void
ReportTypeArgsNotAllowedError ( SymbolLoader symbolLoader, int arity, Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef argName, Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef argKind ) : void
WhichConversionIsBetter ( CType argType, CType p1, CType p2 ) : BetterType
bindAssignment ( EXPR op1, EXPR op2, bool allowExplicit ) : EXPR
bindSimpleCast ( EXPR exprSrc, EXPRTYPEORNAMESPACE typeDest, EXPR &pexprDest ) : void
bindSimpleCast ( EXPR exprSrc, EXPRTYPEORNAMESPACE exprTypeDest, EXPR &pexprDest, EXPRFLAG exprFlags ) : void
checkUnsafe ( CType type ) : void
checkUnsafe ( CType type, ErrorCode errCode, ErrArg pArg ) : void
isConstantInRange ( EXPRCONSTANT exprSrc, CType typeDest ) : bool
isConstantInRange ( EXPRCONSTANT exprSrc, CType typeDest, bool realsOk ) : bool

Méthodes protégées

Méthode Description
AdjustCallArgumentsForParams ( CType callingObjectType, CType type, MethodOrPropertySymbol mp, TypeArray pTypeArgs, EXPR argsPtr, EXPR &newArgs ) : void
BadOperatorTypesError ( ExpressionKind ek, EXPR pOperand1, EXPR pOperand2 ) : EXPR
BadOperatorTypesError ( ExpressionKind ek, EXPR pOperand1, EXPR pOperand2, CType pTypeErr ) : EXPR
BindPtrToArray ( EXPRLOCAL exprLoc, EXPR array ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK
BindStandardBinopCore ( BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek, EXPRFLAG flags ) : EXPR
CheckLvalueProp ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP prop ) : void
CheckPropertyAccess ( MethWithType mwt, PropWithType pwtSlot, CType type ) : bool
ContainingAgg ( ) : AggregateSymbol
FindBestMethod ( List list, CType pTypeThrough, ArgInfos args, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember &methAmbig1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember &methAmbig2 ) : Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
FindBestSignatureInList ( List binopSignatures, BinOpArgInfo info ) : int
GenerateOptimizedAssignment ( EXPR op1, EXPR op2 ) : EXPR
GetDelBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
GetEnumBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
GetGlobalSymbols ( ) : BSYMMGR
GetOptPDT ( PredefinedType pt ) : AggregateType
GetOptPDT ( PredefinedType pt, bool WarnIfNotFound ) : AggregateType
GetPtrBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
GetRefEqualSigs ( List prgbofs, BinOpArgInfo info ) : bool
GetReqPDT ( PredefinedType pt ) : AggregateType
GetReqPDT ( PredefinedType pt, SymbolLoader symbolLoader ) : AggregateType
GetSpecialBinopSignatures ( List prgbofs, BinOpArgInfo info ) : bool
GetStandardAndLiftedBinopSignatures ( List rgbofs, BinOpArgInfo info ) : bool
GetSymbolLoader ( ) : SymbolLoader
GetTypes ( ) : TypeManager
InAnonymousMethod ( ) : bool
InConstructor ( ) : bool
InFieldInitializer ( ) : bool
InMethod ( ) : bool
InStaticMethod ( ) : bool
PostBindProperty ( bool fBaseCall, PropWithType pwt, EXPR pObject, MethWithType &pmwtGet, MethWithType &pmwtSet ) : void
RecordUnsafeUsage ( ) : void
ReportLocalError ( Microsoft.CSharp.RuntimeBinder.Semantics.LocalVariableSymbol local, CheckLvalueKind kind, bool isNested ) : void
ReportReadOnlyError ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD field, CheckLvalueKind kind, bool isNested ) : void
ReportUnsafeErrors ( ) : bool
RespectReadonly ( ) : bool
SetExternalRef ( CType type ) : void
TryGetExpandedParams ( TypeArray @params, int count, TypeArray &ppExpandedParams ) : bool
TryReportLvalueFailure ( EXPR expr, CheckLvalueKind kind ) : bool
UnwrapExpression ( EXPR pExpression ) : EXPR
WhichConversionIsBetter ( EXPR arg, CType argType, CType p1, CType p2 ) : BetterType
WhichMethodIsBetter ( Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node2, CType pTypeThrough, ArgInfos args ) : BetterType
WhichMethodIsBetterTieBreaker ( Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node2, CType pTypeThrough, ArgInfos args ) : BetterType
WrapShortLivedExpression ( EXPR expr ) : EXPR
bindIndexer ( EXPR pObject, EXPR args, BindingFlag bindFlags ) : EXPR
bindNullEqualityComparison ( ExpressionKind ek, BinOpArgInfo info ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
bindPtrToString ( EXPR @string ) : EXPRUNARYOP
bindUserDefinedBinOp ( ExpressionKind ek, BinOpArgInfo info ) : EXPR
ekName ( ExpressionKind ek ) : Name
getVoidType ( ) : CType
isThisPointer ( EXPR expr ) : bool
isUnsafeContext ( ) : bool
markFieldAssigned ( EXPR expr ) : void
verifyMethodArgs ( EXPR call, CType callingObjectType ) : void

Private Methods

Méthode Description
AdjustMemberObject ( SymWithType swt, EXPR pObject, bool &pfConstrained, bool &pIsMatchingStatic ) : EXPR
BindArrayIndexCore ( BindingFlag bindFlags, EXPR pOp1, EXPR pOp2 ) : EXPR
BindBoolBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindBoolBitwiseOp ( ExpressionKind ek, EXPRFLAG flags, EXPR expr1, EXPR expr2, BinOpFullSig bofs ) : EXPR
BindBoolUnaOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg ) : EXPR
BindDecBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindDecUnaOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg ) : EXPR
BindDelBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindEnumBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindEnumUnaOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg ) : EXPR
BindIncOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg, UnaOpFullSig uofs ) : EXPR
BindIncOpCore ( ExpressionKind ek, EXPRFLAG flags, EXPR exprVal, CType type ) : EXPR
BindIntBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindIntOp ( ExpressionKind kind, EXPRFLAG flags, EXPR op1, EXPR op2, PredefinedType ptOp ) : EXPR
BindIntUnaOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg ) : EXPR
BindIntegerNeg ( EXPRFLAG flags, EXPR op, PredefinedType ptOp ) : EXPR
BindLiftedBoolBitwiseOp ( ExpressionKind ek, EXPRFLAG flags, EXPR expr1, EXPR expr2 ) : EXPR
BindLiftedIncOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg, UnaOpFullSig uofs ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI
BindLiftedStandardBinOp ( BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek, EXPRFLAG flags ) : EXPR
BindLiftedStandardUnop ( ExpressionKind ek, EXPRFLAG flags, EXPR arg, UnaOpFullSig uofs ) : EXPR
BindLiftedUDBinop ( ExpressionKind ek, EXPR arg1, EXPR arg2, TypeArray Params, MethPropWithInst mpwi ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindLiftedUDUnop ( EXPR arg, CType typeArg, MethPropWithInst mpwi ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindMethodGroupToArguments ( BindingFlag bindFlags, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMEMGRP grp, EXPR args ) : EXPR
BindMethodGroupToArgumentsCore ( GroupToArgsBinderResult &pResults, BindingFlag bindFlags, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMEMGRP grp, EXPR &args, int carg, bool bindingCollectionAdd, bool bHasNamedArgumentSpecifiers ) : bool
BindNonliftedIncOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg, UnaOpFullSig uofs ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMULTI
BindNubNew ( EXPR exprSrc ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindNubValue ( EXPR exprSrc ) : EXPR
BindPredefMethToArgs ( PREDEFMETH predefMethod, EXPR obj, EXPR args, TypeArray clsTypeArgs, TypeArray methTypeArgs ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindPtrBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindPtrCmpOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindRealBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindRealUnaOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg ) : EXPR
BindRefCmpOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindShiftOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindStrBinOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindStrCmpOp ( ExpressionKind ek, EXPRFLAG flags, EXPR arg1, EXPR arg2 ) : EXPR
BindToField ( EXPR pObject, FieldWithType fwt, BindingFlag bindFlags ) : EXPR
BindToField ( EXPR pOptionalObject, FieldWithType fwt, BindingFlag bindFlags, EXPR pOptionalLHS ) : EXPR
BindToMethod ( MethWithInst mwi, EXPR pArguments, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMEMGRP pMemGroup, MemLookFlags flags ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindToProperty ( EXPR pObject, PropWithType pwt, BindingFlag bindFlags, EXPR args, AggregateType pOtherType, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRMEMGRP pMemGroup ) : EXPR
BindUDBinop ( ExpressionKind ek, EXPR arg1, EXPR arg2, bool fDontLift, MethPropWithInst &ppmpwi ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUDBinopCall ( EXPR arg1, EXPR arg2, TypeArray Params, CType typeRet, MethPropWithInst mpwi ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUDUnopCall ( EXPR arg, CType typeArg, MethPropWithInst mpwi ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL
BindUserBoolOp ( ExpressionKind kind, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCALL pCall ) : EXPR
CalculateExprAndUnaryOpKinds ( OperatorKind op, bool bChecked, ExpressionKind &ek, UnaOpKind &uok, EXPRFLAG &flags ) : bool
CanConvertArg1 ( BinOpArgInfo info, CType typeDst, LiftFlags &pgrflt, CType &ptypeSig1, CType &ptypeSig2 ) : bool
CanConvertArg2 ( BinOpArgInfo info, CType typeDst, LiftFlags &pgrflt, CType &ptypeSig1, CType &ptypeSig2 ) : bool
ContextForMemberLookup ( ) : Microsoft.CSharp.RuntimeBinder.Semantics.Declaration
CountArguments ( EXPR args, bool &typeErrors ) : int
CreateBinopForPredefMethodCall ( ExpressionKind ek, PREDEFMETH predefMeth, CType RetType, EXPR arg1, EXPR arg2 ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
CreateUnaryOpForPredefMethodCall ( ExpressionKind ek, PREDEFMETH predefMeth, CType pRetType, EXPR pArg ) : EXPRUNARYOP
EnsureChecked ( bool b ) : void
FillInArgInfoFromArgList ( ArgInfos argInfo, EXPR args ) : void
FindApplicableSignatures ( EXPR pArgument, UnaOpMask unaryOpMask, List pSignatures ) : bool
FindName ( List names, Name name ) : int
FoldConstI4Op ( ExpressionKind kind, EXPR op1, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT opConst1, EXPR op2, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT opConst2, PredefinedType ptOp ) : EXPR
FoldConstI8Op ( ExpressionKind kind, EXPR op1, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT opConst1, EXPR op2, Microsoft.CSharp.RuntimeBinder.Semantics.EXPRCONSTANT opConst2, PredefinedType ptOp ) : EXPR
FoldIntegerConstants ( ExpressionKind kind, EXPRFLAG flags, EXPR op1, EXPR op2, PredefinedType ptOp ) : EXPR
GetApplicableUserDefinedBinaryOperatorCandidates ( List candidateList, ExpressionKind ek, AggregateType type, EXPR arg1, EXPR arg2, bool fDontLift ) : bool
GetApplicableUserDefinedBinaryOperatorCandidatesInBaseTypes ( List candidateList, ExpressionKind ek, AggregateType type, EXPR arg1, EXPR arg2, bool fDontLift, AggregateType atsStop ) : AggregateType
GetBinopKindAndFlags ( ExpressionKind ek, BinOpKind &pBinopKind, EXPRFLAG &flags ) : bool
GetEnumBinOpType ( ExpressionKind ek, CType argType1, CType argType2, AggregateType &ppEnumType ) : AggregateType
GetErrorContext ( ) : ErrorHandling
GetExprConstants ( ) : ConstValFactory
GetExprFactory ( ) : ExprFactory
GetStandardLvalueError ( CheckLvalueKind kind ) : ErrorCode
GetUserDefinedBinopArgumentType ( CType type ) : AggregateType
GetUserDefinedBinopArgumentTypes ( CType type1, CType type2, AggregateType rgats ) : int
IsMatchingStatic ( SymWithType swt, EXPR pObject ) : bool
LScalar ( ExpressionKind ek, EXPRFLAG flags, EXPR exprVal, CType type, CONSTVAL cv, EXPR pExprResult, CType typeTmp ) : EXPR
LiftArgument ( EXPR pArgument, CType pParameterType, bool bConvertBeforeLift, EXPR &ppLiftedArgument, EXPR &ppNonLiftedArgument ) : void
PopulateSignatureList ( EXPR pArgument, UnaOpKind unaryOpKind, UnaOpMask unaryOpMask, ExpressionKind exprKind, EXPRFLAG flags, List pSignatures, EXPR &ppResult ) : UnaryOperatorSignatureFindResult
PostBindMethod ( bool fBaseCall, MethWithInst &pMWI, EXPR pObject ) : void
RearrangeNamedArguments ( TypeArray pta, MethPropWithInst mpwi, CType pTypeThrough, ArgInfos args ) : TypeArray
RecordBinOpSigFromArgs ( List prgbofs, BinOpArgInfo info ) : void
UserDefinedBinaryOperatorCanBeLifted ( ExpressionKind ek, MethodSymbol method, AggregateType ats, TypeArray Params ) : bool
UserDefinedBinaryOperatorIsApplicable ( List candidateList, ExpressionKind ek, MethodSymbol method, AggregateType ats, EXPR arg1, EXPR arg2, bool fDontLift ) : bool
VSFAIL ( string s ) : void
VerifyNamedArgumentsAfterFixed ( EXPR args, bool &seenNamed ) : bool
WhichBofsIsBetter ( BinOpFullSig bofs1, BinOpFullSig bofs2, CType type1, CType type2 ) : int
WhichUofsIsBetter ( UnaOpFullSig uofs1, UnaOpFullSig uofs2, CType typeArg ) : int
ambiguousOperatorError ( ExpressionKind ek, EXPR op1, EXPR op2 ) : EXPR
bindFloatOp ( ExpressionKind kind, EXPRFLAG flags, EXPR op1, EXPR op2 ) : EXPR
bindStringConcat ( EXPR op1, EXPR op2 ) : EXPR
bindUDUnop ( ExpressionKind ek, EXPR arg ) : EXPR
checkLvalue ( EXPR expr, CheckLvalueKind kind ) : bool
chooseArrayIndexType ( EXPR args ) : CType
isConvInTable ( List convTable, MethodSymbol meth, AggregateType ats, bool fSrc, bool fDst ) : bool
isDivByZero ( ExpressionKind kind, EXPR op2 ) : bool
objectIsLvalue ( EXPR pObject ) : bool

Method Details

AdjustCallArgumentsForParams() protected méthode

protected AdjustCallArgumentsForParams ( CType callingObjectType, CType type, MethodOrPropertySymbol mp, TypeArray pTypeArgs, EXPR argsPtr, EXPR &newArgs ) : void
callingObjectType CType
type CType
mp MethodOrPropertySymbol
pTypeArgs TypeArray
argsPtr EXPR
newArgs EXPR
Résultat void

BadOperatorTypesError() protected méthode

protected BadOperatorTypesError ( ExpressionKind ek, EXPR pOperand1, EXPR pOperand2 ) : EXPR
ek ExpressionKind
pOperand1 EXPR
pOperand2 EXPR
Résultat EXPR

BadOperatorTypesError() protected méthode

protected BadOperatorTypesError ( ExpressionKind ek, EXPR pOperand1, EXPR pOperand2, CType pTypeErr ) : EXPR
ek ExpressionKind
pOperand1 EXPR
pOperand2 EXPR
pTypeErr CType
Résultat EXPR

BindPtrToArray() protected méthode

protected BindPtrToArray ( EXPRLOCAL exprLoc, EXPR array ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK
exprLoc EXPRLOCAL
array EXPR
Résultat Microsoft.CSharp.RuntimeBinder.Semantics.EXPRQUESTIONMARK

BindStandardBinop() public méthode

public BindStandardBinop ( ExpressionKind ek, EXPR arg1, EXPR arg2 ) : EXPR
ek ExpressionKind
arg1 EXPR
arg2 EXPR
Résultat EXPR

BindStandardBinopCore() protected méthode

protected BindStandardBinopCore ( BinOpArgInfo info, BinOpFullSig bofs, ExpressionKind ek, EXPRFLAG flags ) : EXPR
info BinOpArgInfo
bofs BinOpFullSig
ek ExpressionKind
flags EXPRFLAG
Résultat EXPR

BindStandardUnaryOperator() public méthode

public BindStandardUnaryOperator ( OperatorKind op, EXPR pArgument ) : EXPR
op OperatorKind
pArgument EXPR
Résultat EXPR

CheckLvalueProp() protected méthode

protected CheckLvalueProp ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP prop ) : void
prop Microsoft.CSharp.RuntimeBinder.Semantics.EXPRPROP
Résultat void

CheckPropertyAccess() protected méthode

protected CheckPropertyAccess ( MethWithType mwt, PropWithType pwtSlot, CType type ) : bool
mwt MethWithType
pwtSlot PropWithType
type CType
Résultat bool

ContainingAgg() protected méthode

protected ContainingAgg ( ) : AggregateSymbol
Résultat AggregateSymbol

ExpressionBinder() public méthode

public ExpressionBinder ( BindingContext context ) : System
context BindingContext
Résultat System

FindBestMethod() protected méthode

protected FindBestMethod ( List list, CType pTypeThrough, ArgInfos args, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember &methAmbig1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember &methAmbig2 ) : Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
list List
pTypeThrough CType
args ArgInfos
methAmbig1 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
methAmbig2 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
Résultat Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember

FindBestSignatureInList() protected méthode

protected FindBestSignatureInList ( List binopSignatures, BinOpArgInfo info ) : int
binopSignatures List
info BinOpArgInfo
Résultat int

GenerateAssignmentConversion() public méthode

public GenerateAssignmentConversion ( EXPR op1, EXPR op2, bool allowExplicit ) : EXPR
op1 EXPR
op2 EXPR
allowExplicit bool
Résultat EXPR

GenerateOptimizedAssignment() protected méthode

protected GenerateOptimizedAssignment ( EXPR op1, EXPR op2 ) : EXPR
op1 EXPR
op2 EXPR
Résultat EXPR

GetContext() public méthode

public GetContext ( ) : BindingContext
Résultat BindingContext

GetDelBinOpSigs() protected méthode

protected GetDelBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
prgbofs List
info BinOpArgInfo
Résultat bool

GetEnumBinOpSigs() protected méthode

protected GetEnumBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
prgbofs List
info BinOpArgInfo
Résultat bool

GetGlobalSymbols() protected méthode

protected GetGlobalSymbols ( ) : BSYMMGR
Résultat BSYMMGR

GetOptPDT() protected méthode

protected GetOptPDT ( PredefinedType pt ) : AggregateType
pt PredefinedType
Résultat AggregateType

GetOptPDT() protected méthode

protected GetOptPDT ( PredefinedType pt, bool WarnIfNotFound ) : AggregateType
pt PredefinedType
WarnIfNotFound bool
Résultat AggregateType

GetPtrBinOpSigs() protected méthode

protected GetPtrBinOpSigs ( List prgbofs, BinOpArgInfo info ) : bool
prgbofs List
info BinOpArgInfo
Résultat bool

GetRefEqualSigs() protected méthode

protected GetRefEqualSigs ( List prgbofs, BinOpArgInfo info ) : bool
prgbofs List
info BinOpArgInfo
Résultat bool

GetReqPDT() protected méthode

protected GetReqPDT ( PredefinedType pt ) : AggregateType
pt PredefinedType
Résultat AggregateType

GetReqPDT() protected static méthode

protected static GetReqPDT ( PredefinedType pt, SymbolLoader symbolLoader ) : AggregateType
pt PredefinedType
symbolLoader SymbolLoader
Résultat AggregateType

GetSemanticChecker() public méthode

public GetSemanticChecker ( ) : Microsoft.CSharp.RuntimeBinder.Semantics.CSemanticChecker
Résultat Microsoft.CSharp.RuntimeBinder.Semantics.CSemanticChecker

GetSpecialBinopSignatures() protected méthode

protected GetSpecialBinopSignatures ( List prgbofs, BinOpArgInfo info ) : bool
prgbofs List
info BinOpArgInfo
Résultat bool

GetStandardAndLiftedBinopSignatures() protected méthode

protected GetStandardAndLiftedBinopSignatures ( List rgbofs, BinOpArgInfo info ) : bool
rgbofs List
info BinOpArgInfo
Résultat bool

GetSymbolLoader() protected méthode

protected GetSymbolLoader ( ) : SymbolLoader
Résultat SymbolLoader

GetTypes() protected méthode

protected GetTypes ( ) : TypeManager
Résultat TypeManager

InAnonymousMethod() protected méthode

protected InAnonymousMethod ( ) : bool
Résultat bool

InConstructor() protected méthode

protected InConstructor ( ) : bool
Résultat bool

InFieldInitializer() protected méthode

protected InFieldInitializer ( ) : bool
Résultat bool

InMethod() protected méthode

protected InMethod ( ) : bool
Résultat bool

InStaticMethod() protected méthode

protected InStaticMethod ( ) : bool
Résultat bool

IsMethPropCallable() public static méthode

public static IsMethPropCallable ( MethodOrPropertySymbol sym, bool requireUC ) : bool
sym MethodOrPropertySymbol
requireUC bool
Résultat bool

PostBindProperty() protected méthode

protected PostBindProperty ( bool fBaseCall, PropWithType pwt, EXPR pObject, MethWithType &pmwtGet, MethWithType &pmwtSet ) : void
fBaseCall bool
pwt PropWithType
pObject EXPR
pmwtGet MethWithType
pmwtSet MethWithType
Résultat void

RecordUnsafeUsage() protected méthode

protected RecordUnsafeUsage ( ) : void
Résultat void

RecordUnsafeUsage() public static méthode

public static RecordUnsafeUsage ( BindingContext context ) : void
context BindingContext
Résultat void

RemapToOverride() public static méthode

public static RemapToOverride ( SymbolLoader symbolLoader, SymWithType pswt, CType typeObj ) : void
symbolLoader SymbolLoader
pswt SymWithType
typeObj CType
Résultat void

ReportLocalError() protected méthode

protected ReportLocalError ( Microsoft.CSharp.RuntimeBinder.Semantics.LocalVariableSymbol local, CheckLvalueKind kind, bool isNested ) : void
local Microsoft.CSharp.RuntimeBinder.Semantics.LocalVariableSymbol
kind CheckLvalueKind
isNested bool
Résultat void

ReportReadOnlyError() protected méthode

protected ReportReadOnlyError ( Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD field, CheckLvalueKind kind, bool isNested ) : void
field Microsoft.CSharp.RuntimeBinder.Semantics.EXPRFIELD
kind CheckLvalueKind
isNested bool
Résultat void

ReportTypeArgsNotAllowedError() public static méthode

public static ReportTypeArgsNotAllowedError ( SymbolLoader symbolLoader, int arity, Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef argName, Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef argKind ) : void
symbolLoader SymbolLoader
arity int
argName Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef
argKind Microsoft.CSharp.RuntimeBinder.Errors.ErrArgRef
Résultat void

ReportUnsafeErrors() protected méthode

protected ReportUnsafeErrors ( ) : bool
Résultat bool

RespectReadonly() protected méthode

protected RespectReadonly ( ) : bool
Résultat bool

SetExternalRef() protected méthode

protected SetExternalRef ( CType type ) : void
type CType
Résultat void

TryGetExpandedParams() protected méthode

protected TryGetExpandedParams ( TypeArray @params, int count, TypeArray &ppExpandedParams ) : bool
@params TypeArray
count int
ppExpandedParams TypeArray
Résultat bool

TryReportLvalueFailure() protected méthode

protected TryReportLvalueFailure ( EXPR expr, CheckLvalueKind kind ) : bool
expr EXPR
kind CheckLvalueKind
Résultat bool

UnwrapExpression() protected méthode

protected UnwrapExpression ( EXPR pExpression ) : EXPR
pExpression EXPR
Résultat EXPR

WhichConversionIsBetter() public méthode

public WhichConversionIsBetter ( CType argType, CType p1, CType p2 ) : BetterType
argType CType
p1 CType
p2 CType
Résultat BetterType

WhichConversionIsBetter() protected méthode

protected WhichConversionIsBetter ( EXPR arg, CType argType, CType p1, CType p2 ) : BetterType
arg EXPR
argType CType
p1 CType
p2 CType
Résultat BetterType

WhichMethodIsBetter() protected méthode

protected WhichMethodIsBetter ( Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node2, CType pTypeThrough, ArgInfos args ) : BetterType
node1 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
node2 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
pTypeThrough CType
args ArgInfos
Résultat BetterType

WhichMethodIsBetterTieBreaker() protected méthode

protected WhichMethodIsBetterTieBreaker ( Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node1, Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember node2, CType pTypeThrough, ArgInfos args ) : BetterType
node1 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
node2 Microsoft.CSharp.RuntimeBinder.Semantics.CandidateFunctionMember
pTypeThrough CType
args ArgInfos
Résultat BetterType

WrapShortLivedExpression() protected méthode

protected WrapShortLivedExpression ( EXPR expr ) : EXPR
expr EXPR
Résultat EXPR

bindAssignment() public méthode

public bindAssignment ( EXPR op1, EXPR op2, bool allowExplicit ) : EXPR
op1 EXPR
op2 EXPR
allowExplicit bool
Résultat EXPR

bindIndexer() protected méthode

protected bindIndexer ( EXPR pObject, EXPR args, BindingFlag bindFlags ) : EXPR
pObject EXPR
args EXPR
bindFlags BindingFlag
Résultat EXPR

bindNullEqualityComparison() protected méthode

protected bindNullEqualityComparison ( ExpressionKind ek, BinOpArgInfo info ) : Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP
ek ExpressionKind
info BinOpArgInfo
Résultat Microsoft.CSharp.RuntimeBinder.Semantics.EXPRBINOP

bindPtrToString() protected méthode

protected bindPtrToString ( EXPR @string ) : EXPRUNARYOP
@string EXPR
Résultat EXPRUNARYOP

bindSimpleCast() public méthode

public bindSimpleCast ( EXPR exprSrc, EXPRTYPEORNAMESPACE typeDest, EXPR &pexprDest ) : void
exprSrc EXPR
typeDest EXPRTYPEORNAMESPACE
pexprDest EXPR
Résultat void

bindSimpleCast() public méthode

public bindSimpleCast ( EXPR exprSrc, EXPRTYPEORNAMESPACE exprTypeDest, EXPR &pexprDest, EXPRFLAG exprFlags ) : void
exprSrc EXPR
exprTypeDest EXPRTYPEORNAMESPACE
pexprDest EXPR
exprFlags EXPRFLAG
Résultat void

bindUserDefinedBinOp() protected méthode

protected bindUserDefinedBinOp ( ExpressionKind ek, BinOpArgInfo info ) : EXPR
ek ExpressionKind
info BinOpArgInfo
Résultat EXPR

checkUnsafe() public méthode

public checkUnsafe ( CType type ) : void
type CType
Résultat void

checkUnsafe() public méthode

public checkUnsafe ( CType type, ErrorCode errCode, ErrArg pArg ) : void
type CType
errCode ErrorCode
pArg ErrArg
Résultat void

ekName() protected méthode

protected ekName ( ExpressionKind ek ) : Name
ek ExpressionKind
Résultat Name

getVoidType() protected méthode

protected getVoidType ( ) : CType
Résultat CType

isConstantInRange() public static méthode

public static isConstantInRange ( EXPRCONSTANT exprSrc, CType typeDest ) : bool
exprSrc EXPRCONSTANT
typeDest CType
Résultat bool

isConstantInRange() public static méthode

public static isConstantInRange ( EXPRCONSTANT exprSrc, CType typeDest, bool realsOk ) : bool
exprSrc EXPRCONSTANT
typeDest CType
realsOk bool
Résultat bool

isThisPointer() protected méthode

protected isThisPointer ( EXPR expr ) : bool
expr EXPR
Résultat bool

isUnsafeContext() protected méthode

protected isUnsafeContext ( ) : bool
Résultat bool

markFieldAssigned() protected méthode

protected markFieldAssigned ( EXPR expr ) : void
expr EXPR
Résultat void

verifyMethodArgs() protected méthode

protected verifyMethodArgs ( EXPR call, CType callingObjectType ) : void
call EXPR
callingObjectType CType
Résultat void

Property Details

Context protected_oe property

protected BindingContext,Microsoft.CSharp.RuntimeBinder.Semantics Context
Résultat BindingContext

g_binopSignatures protected_oe property

protected BinOpSig[] g_binopSignatures
Résultat BinOpSig[]

g_rguos protected_oe property

protected UnaOpSig[] g_rguos
Résultat UnaOpSig[]

m_nullable protected_oe property

protected CNullable m_nullable
Résultat CNullable