2 instantiations of BoundTupleLiteral
Microsoft.CodeAnalysis.CSharp (2)
Binder\Binder_Deconstruct.cs (1)
591
return (BoundTupleExpression)BindToNaturalType(new
BoundTupleLiteral
(syntax, arguments, tupleNames, inferredPositions, type), diagnostics);
Generated\BoundNodes.xml.Generated.cs (1)
6581
var result = new
BoundTupleLiteral
(this.Syntax, arguments, argumentNamesOpt, inferredNamesOpt, type, this.HasErrors);
50 references to BoundTupleLiteral
Microsoft.CodeAnalysis.CSharp (50)
Binder\Binder_Conversions.cs (2)
112
if (source is
BoundTupleLiteral
sourceTuple)
156
return CreateTupleLiteralConversion(syntax, (
BoundTupleLiteral
)source, conversion, isCast: isCast, conversionGroupOpt, destination, diagnostics);
Binder\Binder_Deconstruct.cs (3)
220
TypeSymbol? mergedTupleType = MakeMergedTupleType(checkedVariables, (
BoundTupleLiteral
)boundRHS, syntax, hadErrors ? null : diagnostics);
471
private TypeSymbol? MakeMergedTupleType(ArrayBuilder<DeconstructionVariable> lhsVariables,
BoundTupleLiteral
rhsLiteral, CSharpSyntaxNode syntax, BindingDiagnosticBag? diagnostics)
491
mergedType = MakeMergedTupleType(variable.NestedVariables, (
BoundTupleLiteral
)element, syntax, diagnostics);
Binder\Binder_Expressions.cs (4)
330
case
BoundTupleLiteral
sourceTuple:
2785
var
tuple = (
BoundTupleLiteral
)operand;
3542
if (argument is
BoundTupleLiteral
)
Binder\Binder_Invocation.cs (1)
1154
case
BoundTupleLiteral
_:
Binder\Binder_Statements.cs (2)
2330
var
tuple = (
BoundTupleLiteral
)operand;
Binder\Binder_TupleOperators.cs (1)
45
if (@operator.InfoKind == TupleBinaryOperatorInfoKind.Multiple && expr is
BoundTupleLiteral
tuple)
Binder\Semantics\Conversions\ConversionsBase.cs (8)
1083
var tupleConversion = ClassifyImplicitTupleLiteralConversion((
BoundTupleLiteral
)sourceExpression, destination, ref useSiteInfo);
1293
private Conversion ClassifyImplicitTupleLiteralConversion(
BoundTupleLiteral
source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
1319
private Conversion ClassifyExplicitTupleLiteralConversion(
BoundTupleLiteral
source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast)
1412
Conversion tupleConversion = ClassifyExplicitTupleLiteralConversion((
BoundTupleLiteral
)sourceExpression, destination, isChecked: isChecked, ref useSiteInfo, forCast);
1957
(
BoundTupleLiteral
)sourceExpressionOpt,
2284
private Conversion GetImplicitTupleLiteralConversion(
BoundTupleLiteral
source, TypeSymbol destination, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
2302
private Conversion GetExplicitTupleLiteralConversion(
BoundTupleLiteral
source, TypeSymbol destination, bool isChecked, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, bool forCast)
2321
BoundTupleLiteral
source,
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (4)
619
!MakeExplicitParameterTypeInferences(binder, (
BoundTupleLiteral
)argument, target, kind, ref useSiteInfo))
693
private bool MakeExplicitParameterTypeInferences(Binder binder,
BoundTupleLiteral
argument, TypeWithAnnotations target, ExactOrBoundsKind kind, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
853
MakeOutputTypeInferences(binder, (
BoundTupleLiteral
)argument, formalType, ref useSiteInfo);
893
private void MakeOutputTypeInferences(Binder binder,
BoundTupleLiteral
argument, TypeWithAnnotations formalType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (2)
3222
return ExpressionMatchExactly((
BoundTupleLiteral
)node, t, ref useSiteInfo);
3321
private bool ExpressionMatchExactly(
BoundTupleLiteral
tupleSource, TypeSymbol targetType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Compilation\CSharpSemanticModel.cs (1)
2072
case BoundConvertedTupleLiteral { SourceTuple:
BoundTupleLiteral
original }:
FlowAnalysis\AbstractFlowPass.cs (1)
1120
public override BoundNode VisitTupleLiteral(
BoundTupleLiteral
node)
FlowAnalysis\NullableWalker.cs (1)
8400
public override BoundNode? VisitTupleLiteral(
BoundTupleLiteral
node)
Generated\BoundNodes.xml.Generated.cs (16)
6577
public
BoundTupleLiteral
Update(ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<bool> inferredNamesOpt, TypeSymbol? type)
6581
var
result = new BoundTupleLiteral(this.Syntax, arguments, argumentNamesOpt, inferredNamesOpt, type, this.HasErrors);
6591
public BoundConvertedTupleLiteral(SyntaxNode syntax,
BoundTupleLiteral
? sourceTuple, bool wasTargetTyped, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<bool> inferredNamesOpt, TypeSymbol? type, bool hasErrors = false)
6601
public
BoundTupleLiteral
? SourceTuple { get; }
6607
public BoundConvertedTupleLiteral Update(
BoundTupleLiteral
? sourceTuple, bool wasTargetTyped, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<bool> inferredNamesOpt, TypeSymbol? type)
9175
return VisitTupleLiteral((
BoundTupleLiteral
)node, arg);
9475
public virtual R VisitTupleLiteral(
BoundTupleLiteral
node, A arg) => this.DefaultVisit(node, arg);
9711
public virtual BoundNode? VisitTupleLiteral(
BoundTupleLiteral
node) => this.DefaultVisit(node);
10503
public override BoundNode? VisitTupleLiteral(
BoundTupleLiteral
node)
11803
public override BoundNode? VisitTupleLiteral(
BoundTupleLiteral
node)
11811
BoundTupleLiteral
? sourceTuple = node.SourceTuple;
14075
public override BoundNode? VisitTupleLiteral(
BoundTupleLiteral
node)
14078
BoundTupleLiteral
updatedNode;
14094
BoundTupleLiteral
? sourceTuple = (
BoundTupleLiteral
?)this.Visit(node.SourceTuple);
16503
public override TreeDumperNode VisitTupleLiteral(
BoundTupleLiteral
node, object? arg) => new TreeDumperNode("tupleLiteral", null, new TreeDumperNode[]
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
1007
public override BoundNode VisitTupleLiteral(
BoundTupleLiteral
node)
Lowering\LocalRewriter\LocalRewriter_TupleCreationExpression.cs (1)
15
public override BoundNode VisitTupleLiteral(
BoundTupleLiteral
node)
Operations\CSharpOperationFactory.cs (1)
2244
BoundTupleLiteral
{ Type: var t } => t,
Symbols\Tuples\TupleTypeSymbol.cs (1)
278
internal static void ReportTupleNamesMismatchesIfAny(TypeSymbol destination,
BoundTupleLiteral
literal, BindingDiagnosticBag diagnostics)