Binder\Binder.ValueChecks.cs (10)
4277return CheckRefEscape(node, conversion.Operand, escapeTo, checkingReceiver, diagnostics);
4609return GetInterpolatedStringHandlerConversionEscapeScope(conversion.Operand);
4614return GetCollectionExpressionSafeContext((BoundCollectionExpression)conversion.Operand);
4634MethodInvocationInfo.FromUserDefinedOrUnionConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
4638return GetValEscape(conversion.Operand);
5347return CheckInterpolatedStringHandlerConversionEscape(conversion.Operand, escapeTo, diagnostics);
5352var safeContext = GetCollectionExpressionSafeContext((BoundCollectionExpression)conversion.Operand);
5383MethodInvocationInfo.FromUserDefinedOrUnionConversion(operatorMethod, conversion.Operand, conversion.HasAnyErrors),
5390return CheckValEscape(node, conversion.Operand, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
5736return 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;
710var operandType = node.Operand.Type;
719? Convert(Visit(node.Operand), node.Operand.Type, method.Parameters[0].Type, node.Checked, false)
720: Visit(node.Operand);
731var operand = Visit(node.Operand);
735if (node.Operand.Type.IsNullableType())
737return Convert(Visit(node.Operand), node.Operand.Type, node.Type, node.Checked, node.ExplicitCastInCode);
744var e1 = Convert(Visit(node.Operand), node.Operand.Type, intermediate, node.Checked, false);
750return 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),