252 references to BindValueKind
Microsoft.CodeAnalysis.CSharp (252)
Binder\Binder_Attributes.cs (1)
569
BoundExpression namedArgumentValue = this.BindValue(namedArgument.Expression, diagnostics,
BindValueKind
.RValue);
Binder\Binder_Await.cs (1)
656
qualified = CheckValue(qualified,
BindValueKind
.RValue, diagnostics);
Binder\Binder_Conversions.cs (3)
532
if (CheckValueKind(syntax, source,
BindValueKind
.RefersToLocation, checkingReceiver: false, BindingDiagnosticBag.Discarded))
547
if (CheckValueKind(syntax, source,
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
Binder\Binder_Deconstruct.cs (3)
99
BoundExpression boundRight = rightPlaceholder ?? BindValue(right, deconstructionDiagnostics,
BindValueKind
.RValue);
660
memberAccess = CheckValue(memberAccess,
BindValueKind
.RValueOrMethodGroup, diagnostics);
794
var checkedVariable = CheckValue(boundVariable,
BindValueKind
.Assignable, diagnostics);
Binder\Binder_Expressions.cs (55)
260
internal BoundExpression BindValue(ExpressionSyntax node, BindingDiagnosticBag diagnostics,
BindValueKind
valueKind)
268
return BindToNaturalType(BindValue(node, diagnostics,
BindValueKind
.RValue), diagnostics, reportNoTargetType);
285
return CheckValue(valueOrType,
BindValueKind
.RValue, diagnostics);
467
internal BoundExpression BindValueAllowArgList(ExpressionSyntax node, BindingDiagnosticBag diagnostics,
BindValueKind
valueKind)
512
BindValueKind
valueKind;
545
valueBeforeConversion = defaultValueBinder.BindValue(defaultValueSyntax.Value, diagnostics,
BindValueKind
.RValue);
563
var initializer = initializerBinder.BindValue(equalsValueSyntax.Value, diagnostics,
BindValueKind
.RValue);
896
node, LookupResultKind.Empty, ImmutableArray<Symbol>.Empty, ImmutableArray.Create<BoundExpression>(BindToTypeForErrorRecovery(BindValue(node.Expression, BindingDiagnosticBag.Discarded,
BindValueKind
.RefersToLocation))),
1048
ImmutableArray.Create(BindValue(arguments[0].Expression, diagnostics,
BindValueKind
.RValue)) :
1078
BoundExpression boundArgument = BindValue(argumentSyntax.Expression, diagnostics,
BindValueKind
.RValue);
1259
BoundExpression argument = BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
1282
BoundExpression argument = this.BindValue(node.Expression, diagnostics,
BindValueKind
.RefOrOut);
1307
BoundExpression argument = BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
2663
BoundExpression operand = this.BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
2688
BoundExpression boundOperand = BindValue(node.Operand, diagnostics,
BindValueKind
.RValue);
2796
BoundExpression boundOperand = BindValue(operand, diagnostics,
BindValueKind
.RValue);
3199
var
requiredValueKind = origRefKind == RefKind.In ?
BindValueKind
.ReadonlyRef :
BindValueKind
.RefOrOut;
3480
BindValueKind
valueKind =
3482
BindValueKind
.RValue :
3484
BindValueKind
.ReadonlyRef :
3485
BindValueKind
.RefOrOut;
4018
if (!this.CheckValueKind(argument.Syntax, argument,
BindValueKind
.RefersToLocation, checkingReceiver: false, BindingDiagnosticBag.Discarded))
4030
if (this.CheckValueKind(argument.Syntax, argument,
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
4183
var size = BindValue(dimension, diagnostics,
BindValueKind
.RValue);
4299
var boundExpression = BindValue(expression, diagnostics,
BindValueKind
.RValue);
4316
var boundExpression = BindValue(expression, diagnostics,
BindValueKind
.RValue);
4645
count = BindValue(countSyntax, diagnostics,
BindValueKind
.RValue);
5388
ExpressionElementSyntax expressionElementSyntax => @this.BindValue(expressionElementSyntax.Expression, diagnostics,
BindValueKind
.RValue),
5829
BindValueKind
rhsValueKind,
5841
Debug.Assert(rhsValueKind ==
BindValueKind
.RValue);
5910
var
rhsKind = isRef ? GetRequiredRHSValueKindForRefAssignment(boundLeft) :
BindValueKind
.RValue;
5956
var boundExpression = BindValue(memberInitializer, diagnostics,
BindValueKind
.RValue);
5971
BindValueKind
valueKind = isRhsNestedInitializer ?
BindValueKind
.RValue : (isRef ?
BindValueKind
.RefAssignable :
BindValueKind
.Assignable);
5984
leftSyntax, implicitReceiver,
BindValueKind
.Assignable, false, diagnostics);
5991
BindValueKind
valueKind,
6232
BindValueKind
valueKind,
6266
return ToBadExpression(boundMember, (valueKind ==
BindValueKind
.RValue) ? LookupResultKind.NotAValue : LookupResultKind.NotAVariable);
6520
var boundElementInitializer = BindInitializerExpressionOrValue(elementInitializer, initializerType,
BindValueKind
.RValue, implicitReceiver.Syntax, diagnostics);
6549
exprBuilder.Add(BindValue(childElementInitializer, diagnostics,
BindValueKind
.RValue));
7927
boundLeft = CheckValue(boundLeft,
BindValueKind
.RValue, diagnostics);
8037
boundLeft = CheckValue(boundLeft,
BindValueKind
.RValue, diagnostics);
9408
lengthOrCountAccess = binder.CheckValue(lengthOrCountAccess,
BindValueKind
.RValue, diagnostics);
9864
hasError = !CheckValueKind(node, receiver,
BindValueKind
.FixedReceiver, checkingReceiver: false, diagnostics: diagnostics);
10320
receiver = CheckValue(receiver,
BindValueKind
.RValue, diagnostics);
10450
if (CheckValueKind(node, expr,
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
10462
if (!CheckValueKind(node, expr,
BindValueKind
.RefersToLocation, checkingReceiver: false, BindingDiagnosticBag.Discarded))
11504
lengthOrCountAccess = CheckValue(lengthOrCountAccess,
BindValueKind
.RValue, diagnostics);
12344
var access = conditionalAccessBinder.BindValue(node.WhenNotNull, diagnostics,
BindValueKind
.RValue);
Binder\Binder_InterpolatedString.cs (2)
90
var value = BindValue(interpolation.Expression, diagnostics,
BindValueKind
.RValue);
101
alignment = GenerateConversionForAssignment(intType, BindValue(interpolation.AlignmentClause.Value, diagnostics, Binder.
BindValueKind
.RValue), diagnostics);
Binder\Binder_Invocation.cs (11)
126
boundExpression = CheckValue(boundExpression,
BindValueKind
.RValueOrMethodGroup, diagnostics);
246
boundExpression = CheckValue(boundExpression,
BindValueKind
.RValueOrMethodGroup, diagnostics);
761
extensionMemberAccess = CheckValue(extensionMemberAccess,
BindValueKind
.RValue, diagnostics);
1300
receiverArgument = CheckValue(receiverArgument,
BindValueKind
.RefOrOut, diagnostics);
1404
receiver = CheckValue(receiver,
BindValueKind
.RefOrOut, diagnostics);
1443
var
valueKind = method.IsEffectivelyReadOnly
1444
?
BindValueKind
.RefersToLocation
1445
:
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable;
2024
return CheckValue(boundValue,
BindValueKind
.RValue, diagnostics);
2466
boundArgument = CheckValue(boundArgument,
BindValueKind
.RValue, diagnostics);
Binder\Binder_Operators.cs (25)
35
BoundExpression left = BindValue(node.Left, diagnostics,
BindValueKind
.CompoundAssignment);
37
BoundExpression right = BindValue(node.Right, diagnostics,
BindValueKind
.RValue);
111
if (left.Kind == BoundKind.EventAccess && !CheckEventValueKind((BoundEventAccess)left,
BindValueKind
.Assignable, diagnostics))
353
if (!CheckValueKind(node, left,
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
926
BoundExpression left = CheckValue(result,
BindValueKind
.RValue, diagnostics);
927
BoundExpression right = BindValue(syntaxNode.Right, diagnostics,
BindValueKind
.RValue);
3274
BoundExpression operand = BindToNaturalType(BindValue(operandSyntax, diagnostics,
BindValueKind
.IncrementDecrement), diagnostics);
3469
!CheckValueKind(node, operand,
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
4135
BoundExpression operand = BindToNaturalType(BindValue(node.Operand, diagnostics,
BindValueKind
.AddressOf), diagnostics);
4225
bool receiverIsLValue = CheckValueKind(receiver.Syntax, receiver,
BindValueKind
.AddressOf, checkingReceiver: false, diagnostics: BindingDiagnosticBag.Discarded);
4655
private static
BindValueKind
GetUnaryAssignmentKind(SyntaxKind kind)
4663
return
BindValueKind
.IncrementDecrement;
4668
return
BindValueKind
.RValue;
5662
var leftOperand = BindValue(node.Left, diagnostics,
BindValueKind
.RValue);
5664
var rightOperand = BindValue(node.Right, diagnostics,
BindValueKind
.RValue);
5851
BoundExpression leftOperand = BindValue(node.Left, diagnostics,
BindValueKind
.NullCoalescingAssignment);
5853
BoundExpression rightOperand = BindValue(node.Right, diagnostics,
BindValueKind
.RValue);
5978
BoundExpression trueExpr = BindValue(whenTrue, diagnostics,
BindValueKind
.RValue);
5979
BoundExpression falseExpr = BindValue(whenFalse, diagnostics,
BindValueKind
.RValue);
6019
BoundExpression trueExpr = BindValue(whenTrue, diagnostics,
BindValueKind
.RValue |
BindValueKind
.RefersToLocation);
6020
BoundExpression falseExpr = BindValue(whenFalse, diagnostics,
BindValueKind
.RValue |
BindValueKind
.RefersToLocation);
Binder\Binder_Patterns.cs (5)
302
indexerAccess = CheckValue(indexerAccess,
BindValueKind
.RValue, diagnostics);
459
indexerAccess = CheckValue(indexerAccess,
BindValueKind
.RValue, diagnostics);
627
originalExpression = CheckValue(originalExpression,
BindValueKind
.RValue, diagnostics);
1874
boundMember = CheckValue(boundMember,
BindValueKind
.RValue, diagnostics);
1887
if (!hasErrors && !CheckValueKind(node: memberName.Parent, expr: boundMember, valueKind:
BindValueKind
.RValue,
Binder\Binder_Query.cs (3)
842
BoundExpression boundExpression = lambdaBodyBinder.BindValue(expression, diagnostics,
BindValueKind
.RValue);
852
BoundExpression boundExpression = lambdaBodyBinder.BindValue(expression, diagnostics,
BindValueKind
.RValue);
990
var checkedUltimateReceiver = CheckValue(ultimateReceiver,
BindValueKind
.RValue, diagnostics);
Binder\Binder_Statements.cs (28)
240
: BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
395
var boundExpr = BindValue(exprSyntax, diagnostics,
BindValueKind
.RValue);
871
BindValueKind
valueKind;
878
protected BoundExpression BindInferredVariableInitializer(BindingDiagnosticBag diagnostics, ExpressionSyntax initializer,
BindValueKind
valueKind, CSharpSyntaxNode errorSyntax)
919
out
BindValueKind
valueKind,
926
valueKind =
BindValueKind
.RValue;
936
?
BindValueKind
.ReadonlyRef
937
:
BindValueKind
.RefOrOut;
1012
BindValueKind
valueKind;
1423
var
lhsKind = isRef ?
BindValueKind
.RefAssignable :
BindValueKind
.Assignable;
1431
var
rhsKind = isRef ? GetRequiredRHSValueKindForRefAssignment(op1) :
BindValueKind
.RValue;
1444
private static
BindValueKind
GetRequiredRHSValueKindForRefAssignment(BoundExpression boundLeft)
1446
var
rhsKind =
BindValueKind
.RefersToLocation;
1456
rhsKind |=
BindValueKind
.Assignable;
1869
BindValueKind
valueKind,
2686
var expr = BindValue(node, diagnostics,
BindValueKind
.RValue);
3068
BindValueKind
requiredValueKind = GetRequiredReturnValueKind(refKind);
3667
BindValueKind
requiredValueKind = bodyBinder.GetRequiredReturnValueKind(refKind);
3683
BindValueKind
requiredValueKind = GetRequiredReturnValueKind(refKind);
3697
private
BindValueKind
GetRequiredReturnValueKind(RefKind refKind)
3699
BindValueKind
requiredValueKind =
BindValueKind
.RValue;
3704
BindValueKind
.RefReturn :
3705
BindValueKind
.ReadonlyRef;
Binder\Binder.ValueChecks.cs (102)
465
private const
BindValueKind
ValueKindSignificantBitsMask = unchecked((
BindValueKind
)~((1 << ValueKindInsignificantBits) - 1));
570
private static bool RequiresRValueOnly(
BindValueKind
kind)
572
return (kind & ValueKindSignificantBitsMask) ==
BindValueKind
.RValue;
575
private static bool RequiresAssignmentOnly(
BindValueKind
kind)
577
return (kind & ValueKindSignificantBitsMask) ==
BindValueKind
.Assignable;
580
private static bool RequiresVariable(
BindValueKind
kind)
585
private static bool RequiresReferenceToLocation(
BindValueKind
kind)
587
return (kind &
BindValueKind
.RefersToLocation) != 0;
590
private static bool RequiresAssignableVariable(
BindValueKind
kind)
592
return (kind &
BindValueKind
.Assignable) != 0;
595
private static bool RequiresRefAssignableVariable(
BindValueKind
kind)
597
return (kind &
BindValueKind
.RefAssignable) != 0;
600
private static bool RequiresRefOrOut(
BindValueKind
kind)
602
return (kind &
BindValueKind
.RefOrOut) ==
BindValueKind
.RefOrOut;
607
private static AccessorKind GetIndexerAccessorKind(BoundIndexerAccess indexerAccess,
BindValueKind
valueKind)
617
private static AccessorKind GetAccessorKind(
BindValueKind
valueKind)
619
var
coreValueKind = valueKind & ValueKindSignificantBitsMask;
622
BindValueKind
.CompoundAssignment => AccessorKind.Both,
623
BindValueKind
.Assignable => AccessorKind.Set,
628
private BoundIndexerAccess BindIndexerDefaultArgumentsAndParamsCollection(BoundIndexerAccess indexerAccess,
BindValueKind
valueKind, BindingDiagnosticBag diagnostics)
630
var
coreValueKind = valueKind & ValueKindSignificantBitsMask;
633
var useSetAccessor = coreValueKind ==
BindValueKind
.Assignable && indexer.RefKind != RefKind.Ref;
729
private BoundExpression CheckValue(BoundExpression expr,
BindValueKind
valueKind, BindingDiagnosticBag diagnostics)
744
Debug.Assert(expr.Syntax.Kind() != SyntaxKind.Argument || valueKind ==
BindValueKind
.RefOrOut);
749
Debug.Assert(valueKind ==
BindValueKind
.RefOrOut);
753
Debug.Assert(valueKind is (
BindValueKind
.Assignable or
BindValueKind
.RefOrOut or
BindValueKind
.RefAssignable) || diagnostics.DiagnosticBag is null || diagnostics.HasAnyResolvedErrors());
821
if (valueKind ==
BindValueKind
.RValue)
834
if (expr.Kind == BoundKind.MethodGroup && valueKind !=
BindValueKind
.RValueOrMethodGroup)
884
expr.HasAnyErrors && valueKind ==
BindValueKind
.RValueOrMethodGroup)
889
var resultKind = (valueKind ==
BindValueKind
.RValue || valueKind ==
BindValueKind
.RValueOrMethodGroup) ?
921
internal bool CheckValueKind(SyntaxNode node, BoundExpression expr,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
979
case BoundKind.MethodGroup when valueKind ==
BindValueKind
.AddressOf:
1205
bool checkArrayAccessValueKind(SyntaxNode node,
BindValueKind
valueKind, ImmutableArray<BoundExpression> indices, BindingDiagnosticBag diagnostics)
1227
private static void ReportThisLvalueError(SyntaxNode node,
BindValueKind
valueKind, bool isValueType, bool isPrimaryConstructorParameter, BindingDiagnosticBag diagnostics)
1282
private void CheckAddressOfInAsyncOrIteratorMethod(SyntaxNode node,
BindValueKind
valueKind, BindingDiagnosticBag diagnostics)
1284
if (valueKind ==
BindValueKind
.AddressOf)
1297
private bool CheckLocalValueKind(SyntaxNode node, BoundLocal local,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
1387
private bool CheckParameterValueKind(SyntaxNode node, BoundParameter parameter,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
1389
Debug.Assert(!RequiresAssignableVariable(
BindValueKind
.AddressOf));
1450
static void reportReadOnlyParameterError(ParameterSymbol parameterSymbol, SyntaxNode node,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
1454
Debug.Assert(valueKind !=
BindValueKind
.AddressOf); // If this assert fails, we probably should report ErrorCode.ERR_InvalidAddrOp
1460
if (valueKind ==
BindValueKind
.RefReturn)
1479
if (valueKind ==
BindValueKind
.RefReturn)
1595
private bool CheckFieldValueKind(SyntaxNode node, BoundFieldAccess fieldAccess,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
1640
Debug.Assert(valueKind ==
BindValueKind
.RefAssignable);
1657
return CheckIsValidReceiverForVariable(node, fieldAccess.ReceiverOpt,
BindValueKind
.Assignable, diagnostics);
1743
private bool CheckSimpleAssignmentValueKind(SyntaxNode node, BoundAssignmentOperator assignment,
BindValueKind
valueKind, BindingDiagnosticBag diagnostics)
1822
private bool CheckEventValueKind(BoundEventAccess boundEvent,
BindValueKind
valueKind, BindingDiagnosticBag diagnostics)
1834
if (valueKind ==
BindValueKind
.CompoundAssignment)
1863
if (!CheckIsValidReceiverForVariable(eventSyntax, receiver,
BindValueKind
.Assignable, diagnostics))
1870
if (eventSymbol.IsWindowsRuntimeEvent && valueKind !=
BindValueKind
.Assignable)
1874
if (valueKind ==
BindValueKind
.RefOrOut)
1895
private bool CheckIsValidReceiverForVariable(SyntaxNode node, BoundExpression receiver,
BindValueKind
kind, BindingDiagnosticBag diagnostics)
1930
BindValueKind
valueKind,
1971
private bool CheckPropertyValueKind(SyntaxNode node, BoundExpression expr,
BindValueKind
valueKind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
1998
else if (valueKind ==
BindValueKind
.RefOrOut)
2070
var
setValueKind = setMethod.IsEffectivelyReadOnly ?
BindValueKind
.RValue :
BindValueKind
.Assignable;
3419
private static void ReportReadonlyLocalError(SyntaxNode node, LocalSymbol local,
BindValueKind
kind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
3422
Debug.Assert(kind !=
BindValueKind
.RValue);
3457
private static ErrorCode GetThisLvalueError(
BindValueKind
kind, bool isValueType, bool isPrimaryConstructorParameter)
3461
case
BindValueKind
.CompoundAssignment:
3462
case
BindValueKind
.NullCoalescingAssignment:
3463
case
BindValueKind
.Assignable:
3466
case
BindValueKind
.RefOrOut:
3469
case
BindValueKind
.AddressOf:
3472
case
BindValueKind
.IncrementDecrement:
3475
case
BindValueKind
.RefReturn:
3476
case
BindValueKind
.ReadonlyRef:
3479
case
BindValueKind
.RefAssignable:
3491
private static ErrorCode GetRangeLvalueError(
BindValueKind
kind)
3495
case
BindValueKind
.Assignable:
3496
case
BindValueKind
.CompoundAssignment:
3497
case
BindValueKind
.IncrementDecrement:
3498
case
BindValueKind
.NullCoalescingAssignment:
3501
case
BindValueKind
.AddressOf:
3504
case
BindValueKind
.RefReturn:
3505
case
BindValueKind
.ReadonlyRef:
3508
case
BindValueKind
.RefAssignable:
3520
private static ErrorCode GetMethodGroupOrFunctionPointerLvalueError(
BindValueKind
valueKind)
3531
private static ErrorCode GetStandardLvalueError(
BindValueKind
kind)
3535
case
BindValueKind
.CompoundAssignment:
3536
case
BindValueKind
.NullCoalescingAssignment:
3537
case
BindValueKind
.Assignable:
3540
case
BindValueKind
.AddressOf:
3543
case
BindValueKind
.IncrementDecrement:
3546
case
BindValueKind
.FixedReceiver:
3549
case
BindValueKind
.RefReturn:
3550
case
BindValueKind
.ReadonlyRef:
3553
case
BindValueKind
.RefAssignable:
3581
private static void ReportReadOnlyFieldError(FieldSymbol field, SyntaxNode node,
BindValueKind
kind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
3589
Debug.Assert(kind !=
BindValueKind
.AddressOf); // If this assert fails, we probably should report ErrorCode.ERR_InvalidAddrOp
3606
int index = (checkingReceiver ? 6 : 0) + (field.IsStatic ? 3 : 0) + (kind ==
BindValueKind
.RefReturn ? 0 : (RequiresRefOrOut(kind) ? 1 : 2));
3617
private static void ReportReadOnlyError(Symbol symbol, SyntaxNode node,
BindValueKind
kind, bool checkingReceiver, BindingDiagnosticBag diagnostics)
3624
if (kind ==
BindValueKind
.AddressOf)
3642
int index = (checkingReceiver ? 3 : 0) + (kind ==
BindValueKind
.RefReturn ? 0 : (RequiresRefOrOut(kind) ? 1 : 2));
Binder\ForEachLoopBinder.cs (9)
343
BindValueKind
requiredCurrentKind;
347
requiredCurrentKind =
BindValueKind
.RValue;
350
requiredCurrentKind =
BindValueKind
.Assignable |
BindValueKind
.RefersToLocation;
353
requiredCurrentKind =
BindValueKind
.RefersToLocation;
631
BoundExpression collectionExpr = this.GetBinder(collectionSyntax).BindValue(collectionSyntax, diagnostics,
BindValueKind
.RValue);
849
if (CheckValueKind(collectionExpr.Syntax, collectionExpr,
BindValueKind
.RefersToLocation |
BindValueKind
.Assignable, checkingReceiver: false, BindingDiagnosticBag.Discarded))
857
if (!CheckValueKind(collectionExpr.Syntax, collectionExpr,
BindValueKind
.RefersToLocation, checkingReceiver: false, BindingDiagnosticBag.Discarded))
Binder\LockOrUsingBinder.cs (1)
84
BoundExpression boundExpression = originalBinder.BindValue(TargetExpressionSyntax, expressionDiagnostics, Binder.
BindValueKind
.RValueOrMethodGroup);
Binder\SwitchBinder.cs (1)
519
gotoCaseExpressionOpt = gotoBinder.BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
Binder\SwitchExpressionArmBinder.cs (1)
47
BoundExpression armResult = armBinder.BindValue(node.Expression, diagnostics,
BindValueKind
.RValue);
Symbols\Source\SourceFixedFieldSymbol.cs (1)
93
binder.BindValue(sizeExpression, diagnostics, Binder.
BindValueKind
.RValue),