11 instantiations of DeconstructionVariable
Microsoft.CodeAnalysis.CSharp (11)
Binder\Binder_Deconstruct.cs (8)
364variables[i] = new DeconstructionVariable(SetInferredType(pending, foundTypes[i], diagnostics), variable.Syntax); 410variables[i] = new DeconstructionVariable(errorLocal, errorLocal.Syntax); 417variables[i] = new DeconstructionVariable(pending.FailInference(this, diagnostics), pending.Syntax); 790return new DeconstructionVariable(builder, node); 800return new DeconstructionVariable(checkedVariable, node); 815return new DeconstructionVariable(BindDeconstructionVariable(declTypeWithAnnotations, single, syntax, diagnostics), syntax); 837return new DeconstructionVariable(BindDiscardExpression(syntax, declTypeWithAnnotations), syntax); 847return new DeconstructionVariable(builder, syntax);
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (3)
452assignmentTargets.Add(new Binder.DeconstructionVariable(variable, variable.Syntax)); 458assignmentTargets.Add(new Binder.DeconstructionVariable(GetAssignmentTargetsAndSideEffects(tuple, temps, effects), tuple.Syntax)); 465assignmentTargets.Add(new Binder.DeconstructionVariable(temp, variable.Syntax));
30 references to DeconstructionVariable
Microsoft.CodeAnalysis.CSharp (30)
Binder\Binder_Deconstruct.cs (22)
95DeconstructionVariable locals = BindDeconstructionVariables(left, diagnostics, ref declaration, ref expression); 106DeconstructionVariable.FreeDeconstructionVariables(locals.NestedVariables); 116ArrayBuilder<DeconstructionVariable> checkedVariables, 209private BoundExpression FixTupleLiteral(ArrayBuilder<DeconstructionVariable> checkedVariables, BoundExpression boundRHS, CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics) 248ArrayBuilder<DeconstructionVariable> variables, 299var variable = variables[i]; 351private void SetInferredTypes(ArrayBuilder<DeconstructionVariable> variables, ImmutableArray<TypeSymbol> foundTypes, BindingDiagnosticBag diagnostics) 356var variable = variables[i]; 393private void FailRemainingInferences(ArrayBuilder<DeconstructionVariable> variables, BindingDiagnosticBag diagnostics) 398var variable = variables[i]; 435internal readonly ArrayBuilder<DeconstructionVariable>? NestedVariables; 445internal DeconstructionVariable(ArrayBuilder<DeconstructionVariable> variables, SyntaxNode syntax) 452internal static void FreeDeconstructionVariables(ArrayBuilder<DeconstructionVariable> variables) 473private TypeSymbol? MakeMergedTupleType(ArrayBuilder<DeconstructionVariable> lhsVariables, BoundTupleLiteral rhsLiteral, CSharpSyntaxNode syntax, BindingDiagnosticBag? diagnostics) 487var variable = lhsVariables[i]; 547private BoundTupleExpression DeconstructionVariablesAsTuple(CSharpSyntaxNode syntax, ArrayBuilder<DeconstructionVariable> variables, 556foreach (var variable in variables) 620ArrayBuilder<DeconstructionVariable>? variablesOpt = null) 735private DeconstructionVariable BindDeconstructionVariables( 779var builder = ArrayBuilder<DeconstructionVariable>.GetInstance(component.Arguments.Count); 804private DeconstructionVariable BindDeconstructionVariables( 842var builder = ArrayBuilder<DeconstructionVariable>.GetInstance();
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (8)
41ArrayBuilder<Binder.DeconstructionVariable> lhsTargets = GetAssignmentTargetsAndSideEffects(left, lhsTemps, lhsEffects); 44Binder.DeconstructionVariable.FreeDeconstructionVariables(lhsTargets); 56ArrayBuilder<Binder.DeconstructionVariable> lhsTargets, 152static bool canReorderTargetAssignments(ArrayBuilder<Binder.DeconstructionVariable> targets, ref PooledHashSet<Symbol>? visitedSymbols) 160foreach (var target in targets) 211ArrayBuilder<Binder.DeconstructionVariable> leftTargets, 443private ArrayBuilder<Binder.DeconstructionVariable> GetAssignmentTargetsAndSideEffects(BoundTupleExpression variables, ArrayBuilder<LocalSymbol> temps, ArrayBuilder<BoundExpression> effects) 445var assignmentTargets = ArrayBuilder<Binder.DeconstructionVariable>.GetInstance(variables.Arguments.Length);