62 references to GetValEscape
Microsoft.CodeAnalysis.CSharp (62)
Binder\Binder.ValueChecks.cs (43)
1774return GetValEscape(fieldAccess.ReceiverOpt); 2215SafeContext escapeScope = GetValEscape(data.Construction); 2291(false, false) => GetValEscape(argument), 2311escapeScope = escapeScope.Intersect(GetValEscape(methodInvocationInfo.Receiver)); 2346GetValEscape(argument); 2374: GetValEscape(argument); 3209escapeTo = escapeTo.Union(GetValEscape(argument)); 3222inferredDestinationValEscape = inferredDestinationValEscape.Intersect(GetValEscape(argument)); 3265var toArgEscape = GetValEscape(mixableArg.Argument); 3309: GetValEscape(fromArg)); 4313valEscape = GetValEscape(element); 4399return GetValEscape(placeholder.Receiver); 4408var consEscape = GetValEscape(conditional.Consequence); 4418return consEscape.Intersect(GetValEscape(conditional.Alternative)); 4423return GetValEscape(coalescingOp.LeftOperand) 4424.Intersect(GetValEscape(coalescingOp.RightOperand)); 4437return GetValEscape(fieldAccess.ReceiverOpt); 4536escape = escape.Intersect(GetValEscape(initializerOpt)); 4551escape = escape.Intersect(GetValEscape(initializerOpt)); 4560return GetValEscape(withExpression.Receiver) 4561.Intersect(GetValEscape(withExpression.InitializerExpression)); 4572return GetValEscape(unaryOperator.Operand); 4611return GetValEscape(conversion.Operand); 4615return GetValEscape(((BoundAssignmentOperator)expr).Right); 4619return GetValEscape(nullCoalescingAssignment.LeftOperand) 4620.Intersect(GetValEscape(nullCoalescingAssignment.RightOperand)); 4641return GetValEscape(increment.Operand); 4658return GetValEscape(compound.Left); 4662return GetValEscape(compound.Left) 4663.Intersect(GetValEscape(compound.Right)); 4675return GetValEscape(binary.Left) 4676.Intersect(GetValEscape(binary.Right)); 4681return (range.LeftOperandOpt is { } left ? GetValEscape(left) : SafeContext.CallingMethod) 4682.Intersect(range.RightOperandOpt is { } right ? GetValEscape(right) : SafeContext.CallingMethod); 4692return GetValEscape(((BoundQueryClause)expr).Value); 4695return GetValEscape(((BoundRangeVariable)expr).Value); 4813narrowestScope = narrowestScope.Intersect(GetValEscape(element)); 4827: GetValEscape(expr)); 4858: GetValEscape(assignment.Right); 4876result = GetValEscape(expr); 4930: GetValEscape(escapeValue.Argument); 4960result = result.Intersect(GetValEscape(expression)); 4981Debug.Assert(GetValEscape(expr).IsConvertibleTo(escapeTo));
Binder\Binder_Operators.cs (2)
5979SafeContext whenTrueEscape = GetValEscape(trueExpr); 5980SafeContext whenFalseEscape = GetValEscape(falseExpr);
Binder\Binder_Statements.cs (3)
1589leftEscape = GetValEscape(op1); 1590rightEscape = GetValEscape(op2); 1629var leftEscape = GetValEscape(op1);
Binder\RefSafetyAnalysis.cs (14)
411? GetValEscape(expr) 456using var _2 = new PatternInput(this, GetValEscape(node.Expression)); 465using var _ = new PatternInput(this, GetValEscape(node.Expression)); 566valEscapeScope = GetValEscape(initializer); 636using var _ = new PatternInput(this, GetValEscape(node.Expression)); 897valEscapeScope = receiver.GetRefKind().IsWritableReference() ? GetRefEscape(receiver) : GetValEscape(receiver); 925valEscapeScope = GetValEscape(arguments[argIndex]); 1002var escapeFrom = GetValEscape(node.InitializerExpressionOpt); 1022if (!escapeFrom.IsConvertibleTo(GetValEscape(argument))) 1080GetAwaitableInstancePlaceholders(placeholders, node.AwaitableInfo, GetValEscape(node.Expression)); 1148placeholders.Add((conversion.DeconstructionInfo.InputPlaceholder, SafeContextAndLocation.Create(GetValEscape(right)))); 1161? GetValEscape(variable.Expression) 1226: new DeconstructionVariable(expr, GetValEscape(expr), null); 1271collectionEscape = GetValEscape(node.Expression);