Binder\Binder.ValueChecks.cs (10)
4267return CheckRefEscape(node, conversion.Operand, escapeTo, checkingReceiver, diagnostics);
4599return GetInterpolatedStringHandlerConversionEscapeScope(conversion.Operand);
4604return GetCollectionExpressionSafeContext((BoundCollectionExpression)conversion.Operand);
4624MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4628return GetValEscape(conversion.Operand);
5337return CheckInterpolatedStringHandlerConversionEscape(conversion.Operand, escapeTo, diagnostics);
5342var safeContext = GetCollectionExpressionSafeContext((BoundCollectionExpression)conversion.Operand);
5373MethodInvocationInfo.FromUserDefinedConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5380return CheckValEscape(node, conversion.Operand, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
5726return GetInlineArrayConversionEquivalentSignatureMethod(inlineArray: conversion.Operand, resultType: conversion.Type, out arguments, out refKinds);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (15)
548operand = conversion.Operand;
680conversion.Operand,
700var mg = (BoundMethodGroup)node.Operand;
708var operandType = node.Operand.Type;
717? Convert(Visit(node.Operand), node.Operand.Type, method.Parameters[0].Type, node.Checked, false)
718: Visit(node.Operand);
729var operand = Visit(node.Operand);
733if (node.Operand.Type.IsNullableType())
735return Convert(Visit(node.Operand), node.Operand.Type, node.Type, node.Checked, node.ExplicitCastInCode);
742var e1 = Convert(Visit(node.Operand), node.Operand.Type, intermediate, node.Checked, false);
748return 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
89case BoundConversion { Conversion: { Kind: var kind }, Operand: var o } when
111Debug.Assert(boundConversion.Operand.Type is { });
112var srcElementFields = boundConversion.Operand.Type.TupleElements;
114var savedTuple = DeferSideEffectingArgumentToTempForTupleEquality(LowerConversions(boundConversion.Operand), initEffects, temps);
205var deferredOperand = DeferSideEffectingArgumentToTempForTupleEquality(conv.Operand, effects, temps, conv.ExplicitCastInCode || enclosingConversionWasExplicit);
406case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }:
408case BoundConversion { Conversion: { IsNullable: true, UnderlyingConversions: var underlying } conversion, Operand: var o }
440case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }:
442case BoundConversion { Conversion: { IsNullable: true, UnderlyingConversions: var nested }, Operand: var o } conv when
615oldNodeOpt: conv, syntax: conv.Syntax, rewrittenOperand: LowerConversions(conv.Operand),