1 write to _typeSrc
Microsoft.CSharp (1)
Microsoft\CSharp\RuntimeBinder\Semantics\ExplicitConversion.cs (1)
50
_typeSrc
= typeSrc;
45 references to _typeSrc
Microsoft.CSharp (45)
Microsoft\CSharp\RuntimeBinder\Semantics\ExplicitConversion.cs (45)
100
if (_binder.BindImplicitConversion(_exprSrc,
_typeSrc
, _typeDest, _needsExprDest, out _exprDest, _flags | CONVERTTYPE.ISEXPLICIT))
105
if (
_typeSrc
== null || _typeDest == null || _typeDest is MethodGroupType)
116
if (
_typeSrc
is NullableType)
180
return _binder.bindUserDefinedConversion(_exprSrc,
_typeSrc
, _typeDest, _needsExprDest, out _exprDest, false);
189
Debug.Assert(
_typeSrc
!= null);
194
if (_typeDest.IsValueType && _binder.BindExplicitConversion(null,
_typeSrc
.StripNubs(), _typeDest, _flags | CONVERTTYPE.NOUDC))
204
Debug.Assert(valueSrc.Type ==
_typeSrc
.StripNubs());
220
return _binder.bindUserDefinedConversion(_exprSrc,
_typeSrc
, _typeDest, _needsExprDest, out _exprDest, false);
235
Debug.Assert(
_typeSrc
!= null);
238
if (!(
_typeSrc
is ArrayType arrSrc) || !arrSrc.IsSZArray || !(_typeDest is AggregateType aggDest)
280
if (!arrayDest.IsSZArray || !(
_typeSrc
is AggregateType aggSrc) || !aggSrc.IsInterfaceType || aggSrc.TypeArgsAll.Count != 1)
345
Debug.Assert(
_typeSrc
!= null);
348
if (
_typeSrc
is ArrayType arrSrc)
364
if (_binder.canConvert(GetPredefindType(PredefinedType.PT_ARRAY),
_typeSrc
, CONVERTTYPE.NOUDC))
384
if (
_typeSrc
is PointerType ||
_typeSrc
.FundamentalType <= FUNDTYPE.FT_LASTINTEGRAL &&
_typeSrc
.IsNumericType)
412
Debug.Assert(
_typeSrc
!= null);
415
if (!
_typeSrc
.IsEnumType)
455
Debug.Assert(
_typeSrc
!= null);
456
Debug.Assert(
_typeSrc
.IsPredefType(PredefinedType.PT_DECIMAL));
483
bIsConversionOK = _binder.bindUserDefinedConversion(_exprSrc,
_typeSrc
, underlyingType, _needsExprDest, out _exprDest, false);
497
Debug.Assert(
_typeSrc
!= null);
500
Debug.Assert(
_typeSrc
.IsEnumType);
502
AggregateType underlyingType =
_typeSrc
.UnderlyingEnumType;
551
Debug.Assert(
_typeSrc
!= null);
560
if (
_typeSrc
.IsPredefType(PredefinedType.PT_DECIMAL))
565
if (
_typeSrc
.IsNumericType ||
_typeSrc
.IsPredefined &&
_typeSrc
.PredefinedType == PredefinedType.PT_CHAR)
584
else if (
_typeSrc
.IsPredefined &&
585
(
_typeSrc
.IsPredefType(PredefinedType.PT_OBJECT) ||
_typeSrc
.IsPredefType(PredefinedType.PT_VALUE) ||
_typeSrc
.IsPredefType(PredefinedType.PT_ENUM)))
603
Debug.Assert(
_typeSrc
!= null);
606
if (!
_typeSrc
.IsSimpleType || !aggTypeDest.IsSimpleType)
613
Debug.Assert(
_typeSrc
.IsPredefined && aggDest.IsPredefined());
615
PredefinedType ptSrc =
_typeSrc
.PredefinedType;
653
bConversionOk = _binder.bindUserDefinedConversion(_exprSrc,
_typeSrc
, aggTypeDest, _needsExprDest, out _exprDest, false);
678
Debug.Assert(
_typeSrc
!= null);
681
if (!(
_typeSrc
is AggregateType atSrc))
706
CConversions.HasGenericDelegateExplicitReferenceConversion(
_typeSrc
, aggTypeDest))
724
if (!(
_typeSrc
is PointerType) || aggTypeDest.FundamentalType > FUNDTYPE.FT_LASTINTEGRAL || !aggTypeDest.IsNumericType)
736
Debug.Assert(
_typeSrc
!= null);
769
if (
_typeSrc
is VoidType)