Binder\Binder.ValueChecks.cs (10)
4250return CheckRefEscape(node, conversion.Operand, escapeTo, checkingReceiver, diagnostics);
4580return GetInterpolatedStringHandlerConversionEscapeScope(conversion.Operand);
4585return HasLocalScope((BoundCollectionExpression)conversion.Operand) ?
4607MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4611return GetValEscape(conversion.Operand);
5310return CheckInterpolatedStringHandlerConversionEscape(conversion.Operand, escapeTo, diagnostics);
5315if (HasLocalScope((BoundCollectionExpression)conversion.Operand) && !_localScopeDepth.IsConvertibleTo(escapeTo))
5345MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5352return CheckValEscape(node, conversion.Operand, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
5698return GetInlineArrayConversionEquivalentSignatureMethod(inlineArray: conversion.Operand, resultType: conversion.Type, out arguments, out refKinds);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (15)
548operand = conversion.Operand;
680conversion.Operand,
699var mg = (BoundMethodGroup)node.Operand;
707var operandType = node.Operand.Type;
716? Convert(Visit(node.Operand), node.Operand.Type, method.Parameters[0].Type, node.Checked, false)
717: Visit(node.Operand);
728var operand = Visit(node.Operand);
732if (node.Operand.Type.IsNullableType())
734return Convert(Visit(node.Operand), node.Operand.Type, node.Type, node.Checked, node.ExplicitCastInCode);
741var e1 = Convert(Visit(node.Operand), node.Operand.Type, intermediate, node.Checked, false);
747return Convert(Visit(node.Operand), node.Operand.Type, node.Type, node.Checked, node.ExplicitCastInCode);
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (13)
49case BoundConversion { Conversion: { Kind: ConversionKind.Identity }, Operand: var o }:
51case BoundConversion { Conversion: { Kind: ConversionKind.ImplicitTupleLiteral }, Operand: var o }:
56case BoundConversion { Conversion: { Kind: var kind } c, Operand: var o } conversion when
88case BoundConversion { Conversion: { Kind: var kind }, Operand: var o } when
110Debug.Assert(boundConversion.Operand.Type is { });
111var srcElementFields = boundConversion.Operand.Type.TupleElements;
113var savedTuple = DeferSideEffectingArgumentToTempForTupleEquality(LowerConversions(boundConversion.Operand), initEffects, temps);
202var deferredOperand = DeferSideEffectingArgumentToTempForTupleEquality(conv.Operand, effects, temps, conv.ExplicitCastInCode || enclosingConversionWasExplicit);
401case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }:
403case BoundConversion { Conversion: { IsNullable: true, UnderlyingConversions: var underlying } conversion, Operand: var o }
435case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }:
437case BoundConversion { Conversion: { IsNullable: true, UnderlyingConversions: var nested }, Operand: var o } conv when
610oldNodeOpt: conv, syntax: conv.Syntax, rewrittenOperand: LowerConversions(conv.Operand),