Microsoft\CSharp\RuntimeBinder\Semantics\ExpressionBinder.cs (13)
408pReturnType = TypeManager.SubstType(mwi.Meth().RetType, mwi.GetType(), mwi.TypeArgs);
439CType pFieldType = TypeManager.SubstType(fwt.Field().GetType(), fwt.GetType());
494CType pReturnType = TypeManager.SubstType(pwt.Prop().RetType, pwt.GetType());
600TypeArray paramsCur = TypeManager.SubstTypeArray(methCur.Params, atsCur);
613TypeManager.SubstType(methCur.RetType, atsCur).IsNonNullableValueType &&
614canConvert(arg, nubParam = TypeManager.GetNullable(typeParam)))
662CType typeRet = TypeManager.SubstType(mpwi.Meth().RetType, mpwi.GetType());
665typeRet = TypeManager.GetNullable(typeRet);
683CType typeRet = TypeManager.SubstType(mpwi.Meth().RetType, mpwi.GetType());
1137CType substDestType = TypeManager.SubstType(@params[index], type, pTypeArgs);
1151CType arrayType = (ArrayType)TypeManager.SubstType(mp.Params[mp.Params.Count - 1], type, pTypeArgs);
1170CType substDestType = TypeManager.SubstType(@params[iDst], type, pTypeArgs);
1218CType substitutedArrayType = TypeManager.SubstType(mp.Params[mp.Params.Count - 1], type, pTypeArgs);
Microsoft\CSharp\RuntimeBinder\Semantics\Operators.cs (29)
240typeSig1 = TypeManager.GetNullable(typeSig1);
267typeSig1 = TypeManager.GetNullable(typeSig1);
324typeSig2 = TypeManager.GetNullable(typeSig2);
352typeSig2 = TypeManager.GetNullable(typeSig2);
641resultType = TypeManager.GetNullable(resultType);
744typeDst = TypeManager.GetNullable(typeDst);
754ptypeSig2 = TypeManager.GetNullable(info.typeRaw2);
779typeDst = TypeManager.GetNullable(typeDst);
789ptypeSig1 = TypeManager.GetNullable(info.typeRaw1);
813typeSig1 = TypeManager.GetNullable(info.typeRaw1);
824typeSig2 = TypeManager.GetNullable(info.typeRaw2);
1174op, mustCast(pArgument, TypeManager.GetNullable(GetPredefindType(ptOp)))), nub);
1437typeSig = TypeManager.GetNullable(typeSig);
1453typeSig = TypeManager.GetNullable(typeSig);
1875CType typeRes = TypeManager.GetNullable(typeBool);
2053NullableType typeDst = TypeManager.GetNullable(GetEnumBinOpType(ek, nonNullableType1, nonNullableType2, out AggregateType typeEnum));
2064NullableType typeOp = TypeManager.GetNullable(GetPredefindType(ptOp));
2340if (!TypeManager.SubstEqualTypes(typeRet, pCall.MethWithInst.Meth().Params[0], typeRet) ||
2341!TypeManager.SubstEqualTypes(typeRet, pCall.MethWithInst.Meth().Params[1], typeRet))
2414CType typeRet = TypeManager.SubstType(method.RetType, ats);
2458TypeArray paramsCur = TypeManager.SubstTypeArray(method.Params, ats);
2473rgtype[0] = TypeManager.GetNullable(paramsCur[0]);
2474rgtype[1] = TypeManager.GetNullable(paramsCur[1]);
2577CType typeRetRaw = TypeManager.SubstType(pmethBest.mpwi.Meth().RetType, pmethBest.mpwi.GetType());
2607CType typeRetRaw = TypeManager.SubstType(mpwi.Meth().RetType, mpwi.GetType());
2619TypeArray paramsRaw = TypeManager.SubstTypeArray(mpwi.Meth().Params, mpwi.GetType());
2637typeRet = TypeManager.GetNullable(typeRetRaw);
2730AggregateType callingType = TypeManager.GetAggregate(agg, TypeArray.Empty);
2745AggregateType pCallingType = TypeManager.GetAggregate(pAgg, TypeArray.Empty);
Microsoft\CSharp\RuntimeBinder\Semantics\PredefinedMembers.cs (6)
241return TypeManager.GetArray(LoadTypeFromSignature(signature, ref indexIntoSignatures, classTyVars), 1, true);
244return TypeManager.GetStdMethTypeVar(signature[indexIntoSignatures++]);
258return TypeManager.GetAggregate(agg, TypeArray.Empty);
267return TypeManager.GetAggregate(agg, TypeArray.Allocate(typeArgs));
365TypeManager.SubstEqualTypes(methsym.RetType, returnType, null, methsym.typeVars, true) &&
366TypeManager.SubstEqualTypeArrays(methsym.Params, argumentTypes, null, methsym.typeVars))