1 write to Left
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
1832this.Left = left;
79 references to Left
Microsoft.CodeAnalysis.CSharp (79)
Binder\Binder.ValueChecks.cs (5)
1462return CheckValueKind(node, assignment.Left, valueKind, checkingReceiver: false, diagnostics); 3579return GetRefEscape(assignment.Left, scopeOfTheContainingExpression); 3940assignment.Left, 4602var left = (BoundObjectInitializerMember)assignment.Left; 5157return CheckValEscape(node, assignment.Left, escapeFrom, escapeTo, checkingReceiver: false, diagnostics: diagnostics);
Binder\Binder_Attributes.cs (3)
812switch (assignment.Left.Kind) 815var fa = (BoundFieldAccess)assignment.Left; 820var pa = (BoundPropertyAccess)assignment.Left;
Binder\Binder_Expressions.cs (1)
6121var memberSymbol = assignmentOperator.Left switch
Binder\RefSafetyAnalysis.cs (2)
541if (node.Left.Kind != BoundKind.DiscardExpression) 543ValidateAssignment(node.Syntax, node.Left, node.Right, node.IsRef, _diagnostics);
BoundTree\BoundNode_Source.cs (1)
257appendSource(assignment.Left);
CodeGen\CodeGenerator_HasHome.cs (1)
120var lhsRefKind = assignment.Left.GetRefKind();
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)
2135if (RegularPropertyAccess(node.Left)) 2137var left = (BoundPropertyAccess)node.Left; 2149VisitLvalue(node.Left); 2157var refKind = node.Left.Kind == BoundKind.BadExpression 2159: node.Left.GetRefKind();
FlowAnalysis\DefiniteAssignment.cs (1)
2492Assign(node.Left, node.Right, isRef: node.IsRef);
FlowAnalysis\LocalDataFlowPass.cs (1)
234return MakeSlot(((BoundAssignmentOperator)node).Left);
FlowAnalysis\NullableWalker.cs (5)
4095var left = node.Left; 4111var objectInitializer = (BoundObjectInitializerMember)node.Left; 4162var objectInitializer = (BoundObjectInitializerMember)node.Left; 4178Symbol? symbol = getTargetMember(containingType, (BoundObjectInitializerMember)node.Left); 9935var left = node.Left;
FlowAnalysis\NullableWalker.DebugVerifier.cs (2)
267if (node.Left is BoundObjectInitializerMember { MemberSymbol: null }) 270Visit(node.Left);
Generated\BoundNodes.xml.Generated.cs (5)
1847if (left != this.Left || right != this.Right || isRef != this.IsRef || !TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything)) 9933this.Visit(node.Left); 11052BoundExpression left = (BoundExpression)this.Visit(node.Left); 12789BoundExpression left = (BoundExpression)this.Visit(node.Left); 15348new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }),
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (1)
319return VisitAwaitExpression((BoundAwaitExpression)expression.Right, resultPlace: expression.Left);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
951var 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)
960assignmentToTemp.Left, 981assignmentToTemp.Left, 1470temporariesBuilder.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)
829if (node.Left.Kind != BoundKind.Local) 834var leftLocal = ((BoundLocal)node.Left).LocalSymbol;
Operations\CSharpOperationFactory.cs (2)
1334IOperation target = Create(boundAssignmentOperator.Left); 1347IOperation initializedMember = CreateMemberInitializerInitializedMember(boundAssignmentOperator.Left);