1 write to Left
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
1831this.Left = left;
79 references to Left
Microsoft.CodeAnalysis.CSharp (79)
Binder\Binder.ValueChecks.cs (6)
1443return CheckValueKind(node, assignment.Left, valueKind, checkingReceiver: false, diagnostics); 3565return GetRefEscape(assignment.Left, scopeOfTheContainingExpression); 3926assignment.Left, 4589var left = (BoundObjectInitializerMember)assignment.Left; 5144return CheckValEscape(node, assignment.Left, escapeFrom, escapeTo, checkingReceiver: false, diagnostics: diagnostics); 5757var lhsRefKind = assignment.Left.GetRefKind();
Binder\Binder_Attributes.cs (3)
812switch (assignment.Left.Kind) 815var fa = (BoundFieldAccess)assignment.Left; 820var pa = (BoundPropertyAccess)assignment.Left;
Binder\Binder_Expressions.cs (1)
6022var memberSymbol = assignmentOperator.Left switch
Binder\RefSafetyAnalysis.cs (2)
550if (node.Left.Kind != BoundKind.DiscardExpression) 552ValidateAssignment(node.Syntax, node.Left, node.Right, node.IsRef, _diagnostics);
BoundTree\BoundNode_Source.cs (1)
257appendSource(assignment.Left);
CodeGen\EmitExpression.cs (6)
2582var left = assignmentOperator.Left; 2770var assignmentTarget = assignmentOperator.Left; 2990BoundExpression lhs = assignmentOperator.Left; 3050assignmentOperator.Left.Type, 3051assignmentOperator.Left.Syntax, 3061BoundExpression expression = assignment.Left;
CodeGen\Optimizer.cs (9)
788if (localUsedWalker.IsLocalUsedIn(assignment.Left)) 898var sequence = node.Left as BoundSequence; 921var left = VisitExpression(node.Left, isIndirectAssignment ? 974node.Left.Type.Equals(node.Right.Type, TypeCompareKind.AllIgnoreOptions) || 975IsFixedBufferAssignmentToRefLocal(node.Left, node.Right, node.IsRef), 1028var lhs = node.Left; 1073Debug.Assert(!IsIndirectAssignment(node.Update(((BoundSequence)node.Left).Value, node.Right, node.IsRef, node.Type)), 1099var lhs = node.Left; 2152var left = node.Left as BoundLocal;
FlowAnalysis\AbstractFlowPass.cs (5)
2045if (RegularPropertyAccess(node.Left)) 2047var left = (BoundPropertyAccess)node.Left; 2059VisitLvalue(node.Left); 2067var refKind = node.Left.Kind == BoundKind.BadExpression 2069: node.Left.GetRefKind();
FlowAnalysis\DefiniteAssignment.cs (1)
2447Assign(node.Left, node.Right, isRef: node.IsRef);
FlowAnalysis\LocalDataFlowPass.cs (1)
234return MakeSlot(((BoundAssignmentOperator)node).Left);
FlowAnalysis\NullableWalker.cs (5)
3979var left = node.Left; 3995var objectInitializer = (BoundObjectInitializerMember)node.Left; 4046var objectInitializer = (BoundObjectInitializerMember)node.Left; 4062Symbol? symbol = getTargetMember(containingType, (BoundObjectInitializerMember)node.Left); 9769var left = node.Left;
FlowAnalysis\NullableWalker.DebugVerifier.cs (2)
208if (node.Left is BoundObjectInitializerMember { MemberSymbol: null }) 211Visit(node.Left);
Generated\BoundNodes.xml.Generated.cs (5)
1846if (left != this.Left || right != this.Right || isRef != this.IsRef || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything)) 9930this.Visit(node.Left); 11049BoundExpression left = (BoundExpression)this.Visit(node.Left); 12786BoundExpression left = (BoundExpression)this.Visit(node.Left); 15345new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }),
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (1)
315return VisitAwaitExpression((BoundAwaitExpression)expression.Right, resultPlace: expression.Left);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
879var sym = ((BoundObjectInitializerMember)a.Left).MemberSymbol;
Lowering\DiagnosticsPass_ExpressionTrees.cs (2)
253if (_inExpressionLambda && node.Left.Kind != BoundKind.ObjectInitializerMember && node.Left.Kind != BoundKind.DynamicObjectInitializerMember)
Lowering\DiagnosticsPass_Warnings.cs (1)
879if (!node.HasAnyErrors && IsSameLocalOrField(node.Left, node.Right))
Lowering\Instrumentation\Instrumenter.cs (1)
222Debug.Assert(original.Left is BoundLocal { LocalSymbol.SynthesizedKind: SynthesizedLocalKind.UserDefined } or BoundParameter);
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (3)
358Debug.Assert(original.Left is BoundLocal { LocalSymbol.SynthesizedKind: SynthesizedLocalKind.UserDefined } or BoundParameter); 388if (!TryGetLocalOrParameterInfo(original.Left, out var targetSymbol, out var targetType, out var targetIndex)) 391throw ExceptionUtilities.UnexpectedValue(original.Left);
Lowering\LocalRewriter\LocalRewriter.cs (2)
922Debug.Assert(assignment.Left.Kind == BoundKind.FieldAccess); 924var lhsField = ((BoundFieldAccess)assignment.Left).FieldSymbol;
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
25BoundExpression left = node.Left;
Lowering\LocalRewriter\LocalRewriter_Call.cs (3)
961assignmentToTemp.Left, 982assignmentToTemp.Left, 1471temporariesBuilder.Add(((BoundLocal)s.Left).LocalSymbol);
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
381temps.Add(((BoundLocal)tempAssignment.Left).LocalSymbol);
Lowering\LocalRewriter\LocalRewriter_ObjectCreationExpression.cs (1)
208var left = (BoundObjectInitializerMember)assignment.Left;
Lowering\LocalRewriter\LocalRewriter_ObjectOrCollectionInitializerExpression.cs (3)
279BoundExpression left = assignment.Left; 523if (assignment.Left is BoundObjectInitializerMember 538var lhs = assignment.Left;
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (1)
245} when constructorLocal == assignment.Left &&
Lowering\MethodToClassRewriter.cs (1)
482BoundExpression originalLeft = node.Left;
Lowering\SpillSequenceSpiller.cs (5)
352assignment is not { Left.Kind: BoundKind.Local, Right.Kind: BoundKind.ArrayAccess }) // Optimize for some known to be safe scenarios. 370var left = Spill(builder, assignment.Left, RefKind.Ref); 538Left: BoundLocal { LocalSymbol: { SynthesizedKind: SynthesizedLocalKind.LoweringTemp, RefKind: RefKind.Ref } receiverRefLocal }, 550Left: BoundLocal { LocalSymbol: { SynthesizedKind: SynthesizedLocalKind.LoweringTemp, RefKind: RefKind.None } referenceTypeClone }, 862BoundExpression left = node.Left;
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
341if (node is { IsRef: true, Left: BoundLocal { LocalSymbol: LocalSymbol { IsCompilerGenerated: true } local } })
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (2)
810if (node.Left.Kind != BoundKind.Local) 815var leftLocal = ((BoundLocal)node.Left).LocalSymbol;
Operations\CSharpOperationFactory.cs (2)
1334IOperation target = Create(boundAssignmentOperator.Left); 1347IOperation initializedMember = CreateMemberInitializerInitializedMember(boundAssignmentOperator.Left);