61 references to GetValEscape
Microsoft.CodeAnalysis.CSharp (61)
Binder\Binder.ValueChecks.cs (42)
1745return GetValEscape(fieldAccess.ReceiverOpt, localScopeDepth); 2187SafeContext escapeScope = GetValEscape(data.Construction, localScopeDepth); 2264(false, false) => GetValEscape(argument, localScopeDepth), 2284escapeScope = escapeScope.Intersect(GetValEscape(methodInvocationInfo.Receiver, localScopeDepth)); 2320GetValEscape(argument, localScopeDepth); 2349: GetValEscape(argument, localScopeDepth); 3189escapeTo = escapeTo.Union(GetValEscape(argument, localScopeDepth)); 3202inferredDestinationValEscape = inferredDestinationValEscape.Intersect(GetValEscape(argument, localScopeDepth)); 3246var toArgEscape = GetValEscape(mixableArg.Argument, localScopeDepth); 3290: GetValEscape(fromArg, localScopeDepth)); 4309valEscape = GetValEscape(element, localScopeDepth); 4395return GetValEscape(placeholder.Receiver, placeholder.LocalScopeDepth); 4404var consEscape = GetValEscape(conditional.Consequence, localScopeDepth); 4414return consEscape.Intersect(GetValEscape(conditional.Alternative, localScopeDepth)); 4419return GetValEscape(coalescingOp.LeftOperand, localScopeDepth) 4420.Intersect(GetValEscape(coalescingOp.RightOperand, localScopeDepth)); 4433return GetValEscape(fieldAccess.ReceiverOpt, localScopeDepth); 4540escape = escape.Intersect(GetValEscape(initializerOpt, localScopeDepth)); 4555escape = escape.Intersect(GetValEscape(initializerOpt, localScopeDepth)); 4564return GetValEscape(withExpression.Receiver, localScopeDepth) 4565.Intersect(GetValEscape(withExpression.InitializerExpression, localScopeDepth)); 4577return GetValEscape(unaryOperator.Operand, localScopeDepth); 4618return GetValEscape(conversion.Operand, localScopeDepth); 4622return GetValEscape(((BoundAssignmentOperator)expr).Right, localScopeDepth); 4626return GetValEscape(nullCoalescingAssignment.LeftOperand, localScopeDepth) 4627.Intersect(GetValEscape(nullCoalescingAssignment.RightOperand, localScopeDepth)); 4649return GetValEscape(increment.Operand, localScopeDepth); 4667return GetValEscape(compound.Left, localScopeDepth); 4671return GetValEscape(compound.Left, localScopeDepth) 4672.Intersect(GetValEscape(compound.Right, localScopeDepth)); 4685return GetValEscape(binary.Left, localScopeDepth) 4686.Intersect(GetValEscape(binary.Right, localScopeDepth)); 4691return (range.LeftOperandOpt is { } left ? GetValEscape(left, localScopeDepth) : SafeContext.CallingMethod) 4692.Intersect(range.RightOperandOpt is { } right ? GetValEscape(right, localScopeDepth) : SafeContext.CallingMethod); 4703return GetValEscape(((BoundQueryClause)expr).Value, localScopeDepth); 4706return GetValEscape(((BoundRangeVariable)expr).Value, localScopeDepth); 4824narrowestScope = narrowestScope.Intersect(GetValEscape(element, localScopeDepth)); 4839: GetValEscape(expr, localScopeDepth)); 4870: GetValEscape(assignment.Right, localScopeDepth); 4888result = GetValEscape(expr, localScopeDepth); 4942: GetValEscape(escapeValue.Argument, localScopeDepth); 4972result = result.Intersect(GetValEscape(expression, localScopeDepth));
Binder\Binder_Operators.cs (2)
5882SafeContext whenTrueEscape = GetValEscape(trueExpr, currentScope); 5883SafeContext whenFalseEscape = GetValEscape(falseExpr, currentScope);
Binder\Binder_Statements.cs (3)
1584leftEscape = GetValEscape(op1, _localScopeDepth); 1585rightEscape = GetValEscape(op2, _localScopeDepth); 1624var leftEscape = GetValEscape(op1, _localScopeDepth);
Binder\RefSafetyAnalysis.cs (14)
411? GetValEscape(expr, _localScopeDepth) 456using var _2 = new PatternInput(this, GetValEscape(node.Expression, _localScopeDepth)); 465using var _ = new PatternInput(this, GetValEscape(node.Expression, _localScopeDepth)); 566valEscapeScope = GetValEscape(initializer, _localScopeDepth); 637using var _ = new PatternInput(this, GetValEscape(node.Expression, _localScopeDepth)); 899valEscapeScope = receiver.GetRefKind().IsWritableReference() ? GetRefEscape(receiver, _localScopeDepth) : GetValEscape(receiver, _localScopeDepth); 927valEscapeScope = GetValEscape(arguments[argIndex], _localScopeDepth); 1005var escapeFrom = GetValEscape(node.InitializerExpressionOpt, _localScopeDepth); 1025if (!escapeFrom.IsConvertibleTo(GetValEscape(argument, _localScopeDepth))) 1085GetAwaitableInstancePlaceholders(placeholders, node.AwaitableInfo, GetValEscape(node.Expression, _localScopeDepth)); 1153placeholders.Add((conversion.DeconstructionInfo.InputPlaceholder, SafeContextAndLocation.Create(GetValEscape(right, _localScopeDepth)))); 1166? GetValEscape(variable.Expression, _localScopeDepth) 1232: new DeconstructionVariable(expr, GetValEscape(expr, _localScopeDepth), null); 1278collectionEscape = GetValEscape(node.Expression, _localScopeDepth);