43 references to ValueTupleRestPosition
Microsoft.CodeAnalysis.CSharp (43)
FlowAnalysis\NullableWalker.cs (4)
8765
Debug.Assert(values.Length == (useRestField ? Math.Min(tupleType.TupleElements.Length, NamedTypeSymbol.
ValueTupleRestPosition
) : tupleType.TupleElements.Length));
8773
n = Math.Min(n, NamedTypeSymbol.
ValueTupleRestPosition
- 1);
8781
values.Length == NamedTypeSymbol.
ValueTupleRestPosition
&&
8784
var argOrdinal = getArgumentOrdinalFromParameterOrdinal(NamedTypeSymbol.
ValueTupleRestPosition
- 1);
Lowering\LocalRewriter\LocalRewriter_Field.cs (3)
74
WellKnownMember wellKnownTupleRest = NamedTypeSymbol.GetTupleTypeMember(NamedTypeSymbol.
ValueTupleRestPosition
, NamedTypeSymbol.
ValueTupleRestPosition
);
89
currentLinkType = (NamedTypeSymbol)currentLinkType.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[NamedTypeSymbol.
ValueTupleRestPosition
- 1].Type;
Lowering\LocalRewriter\LocalRewriter_TupleCreationExpression.cs (4)
55
underlyingTupleTypeChain.Count * (NamedTypeSymbol.
ValueTupleRestPosition
- 1),
75
NamedTypeSymbol.GetTupleCtor(NamedTypeSymbol.
ValueTupleRestPosition
),
89
(underlyingTupleTypeChain.Count - 1) * (NamedTypeSymbol.
ValueTupleRestPosition
- 1),
90
NamedTypeSymbol.
ValueTupleRestPosition
- 1)
SymbolDisplay\SymbolDisplayVisitor.Types.cs (2)
542
while (currentUnderlying.Arity == NamedTypeSymbol.
ValueTupleRestPosition
)
544
tupleSymbol = (INamedTypeSymbol)currentUnderlying.TypeArguments[NamedTypeSymbol.
ValueTupleRestPosition
- 1];
Symbols\FieldSymbol.cs (1)
491
Debug.Assert(tupleElementPosition < NamedTypeSymbol.
ValueTupleRestPosition
);
Symbols\NamedTypeSymbol.cs (6)
1657
if (arity >= 0 && arity <
ValueTupleRestPosition
)
1662
else if (arity ==
ValueTupleRestPosition
&& !IsDefinition)
1671
typeToCheck = ((NamedTypeSymbol)typeToCheck).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[
ValueTupleRestPosition
- 1].Type;
1677
if (arity > 0 && arity <
ValueTupleRestPosition
&& ((NamedTypeSymbol)typeToCheck).IsTupleTypeOfCardinality(out tupleCardinality))
1679
Debug.Assert(tupleCardinality <
ValueTupleRestPosition
);
1680
tupleCardinality += (
ValueTupleRestPosition
- 1) * levelsOfNesting;
Symbols\Tuples\TupleTypeSymbol.cs (23)
20
internal const int ValueTupleRestIndex =
ValueTupleRestPosition
- 1;
88
chainedTupleType = compilation.GetWellKnownType(GetTupleType(
ValueTupleRestPosition
));
133
if (Arity < NamedTypeSymbol.
ValueTupleRestPosition
)
146
while (underlyingType.Arity >= NamedTypeSymbol.
ValueTupleRestPosition
);
210
if (currentType.Arity == NamedTypeSymbol.
ValueTupleRestPosition
)
212
currentType = (NamedTypeSymbol)currentType.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[NamedTypeSymbol.
ValueTupleRestPosition
- 1].Type;
227
remainder = (numElements - 1) % (
ValueTupleRestPosition
- 1) + 1;
228
return (numElements - 1) / (
ValueTupleRestPosition
- 1) + 1;
233
Debug.Assert(chainedTupleTypeOpt is null == elementTypes.Length <
ValueTupleRestPosition
);
239
NamedTypeSymbol currentSymbol = firstTupleType.Construct(ImmutableArray.Create(elementTypes, (chainLength - 1) * (
ValueTupleRestPosition
- 1), remainder));
243
var chainedTypes = ImmutableArray.Create(elementTypes, (loop - 1) * (
ValueTupleRestPosition
- 1),
ValueTupleRestPosition
- 1).Add(TypeWithAnnotations.Create(currentSymbol));
272
NamedTypeSymbol chainedTupleType = compilation.GetWellKnownType(GetTupleType(
ValueTupleRestPosition
));
311
if (arity >
ValueTupleRestPosition
)
617
tupleFieldIndex += (
ValueTupleRestPosition
- 1) * currentNestingLevel;
705
if (currentValueTuple.Arity !=
ValueTupleRestPosition
)
714
if (currentValueTuple.Arity !=
ValueTupleRestPosition
)
792
found = (NamedTypeSymbol)found.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[
ValueTupleRestPosition
- 1].Type;
800
int fieldsPerType = Math.Min(arity,
ValueTupleRestPosition
- 1);
981
if (tuple.Arity ==
ValueTupleRestPosition
)
984
var extensionTupleElementTypes = tuple.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[
ValueTupleRestPosition
- 1].Type.TupleElementTypesWithAnnotations;
985
var typesBuilder = ArrayBuilder<TypeWithAnnotations>.GetInstance(
ValueTupleRestPosition
- 1 + extensionTupleElementTypes.Length);
986
typesBuilder.AddRange(tuple.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics,
ValueTupleRestPosition
- 1);