43 references to ValueTupleRestPosition
Microsoft.CodeAnalysis.CSharp (43)
FlowAnalysis\NullableWalker.cs (4)
9448Debug.Assert(values.Length == (useRestField ? Math.Min(tupleType.TupleElements.Length, NamedTypeSymbol.ValueTupleRestPosition) : tupleType.TupleElements.Length)); 9456n = Math.Min(n, NamedTypeSymbol.ValueTupleRestPosition - 1); 9464values.Length == NamedTypeSymbol.ValueTupleRestPosition && 9467var argOrdinal = getArgumentOrdinalFromParameterOrdinal(NamedTypeSymbol.ValueTupleRestPosition - 1);
Lowering\LocalRewriter\LocalRewriter_Field.cs (3)
74WellKnownMember wellKnownTupleRest = NamedTypeSymbol.GetTupleTypeMember(NamedTypeSymbol.ValueTupleRestPosition, NamedTypeSymbol.ValueTupleRestPosition); 89currentLinkType = (NamedTypeSymbol)currentLinkType.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[NamedTypeSymbol.ValueTupleRestPosition - 1].Type;
Lowering\LocalRewriter\LocalRewriter_TupleCreationExpression.cs (4)
55underlyingTupleTypeChain.Count * (NamedTypeSymbol.ValueTupleRestPosition - 1), 75NamedTypeSymbol.GetTupleCtor(NamedTypeSymbol.ValueTupleRestPosition), 89(underlyingTupleTypeChain.Count - 1) * (NamedTypeSymbol.ValueTupleRestPosition - 1), 90NamedTypeSymbol.ValueTupleRestPosition - 1)
SymbolDisplay\SymbolDisplayVisitor.Types.cs (2)
542while (currentUnderlying.Arity == NamedTypeSymbol.ValueTupleRestPosition) 544tupleSymbol = (INamedTypeSymbol)currentUnderlying.TypeArguments[NamedTypeSymbol.ValueTupleRestPosition - 1];
Symbols\FieldSymbol.cs (1)
491Debug.Assert(tupleElementPosition < NamedTypeSymbol.ValueTupleRestPosition);
Symbols\NamedTypeSymbol.cs (6)
2908if (arity >= 0 && arity < ValueTupleRestPosition) 2913else if (arity == ValueTupleRestPosition && !IsDefinition) 2922typeToCheck = ((NamedTypeSymbol)typeToCheck).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[ValueTupleRestPosition - 1].Type; 2928if (arity > 0 && arity < ValueTupleRestPosition && ((NamedTypeSymbol)typeToCheck).IsTupleTypeOfCardinality(out tupleCardinality)) 2930Debug.Assert(tupleCardinality < ValueTupleRestPosition); 2931tupleCardinality += (ValueTupleRestPosition - 1) * levelsOfNesting;
Symbols\Tuples\TupleTypeSymbol.cs (23)
20internal const int ValueTupleRestIndex = ValueTupleRestPosition - 1; 91chainedTupleType = compilation.GetWellKnownType(GetTupleType(ValueTupleRestPosition)); 136if (Arity < NamedTypeSymbol.ValueTupleRestPosition) 149while (underlyingType.Arity >= NamedTypeSymbol.ValueTupleRestPosition); 213if (currentType.Arity == NamedTypeSymbol.ValueTupleRestPosition) 215currentType = (NamedTypeSymbol)currentType.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[NamedTypeSymbol.ValueTupleRestPosition - 1].Type; 230remainder = (numElements - 1) % (ValueTupleRestPosition - 1) + 1; 231return (numElements - 1) / (ValueTupleRestPosition - 1) + 1; 236Debug.Assert(chainedTupleTypeOpt is null == elementTypes.Length < ValueTupleRestPosition); 242NamedTypeSymbol currentSymbol = firstTupleType.Construct(ImmutableArray.Create(elementTypes, (chainLength - 1) * (ValueTupleRestPosition - 1), remainder)); 246var chainedTypes = ImmutableArray.Create(elementTypes, (loop - 1) * (ValueTupleRestPosition - 1), ValueTupleRestPosition - 1).Add(TypeWithAnnotations.Create(currentSymbol)); 275NamedTypeSymbol chainedTupleType = compilation.GetWellKnownType(GetTupleType(ValueTupleRestPosition)); 314if (arity > ValueTupleRestPosition) 624tupleFieldIndex += (ValueTupleRestPosition - 1) * currentNestingLevel; 712if (currentValueTuple.Arity != ValueTupleRestPosition) 721if (currentValueTuple.Arity != ValueTupleRestPosition) 799found = (NamedTypeSymbol)found.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[ValueTupleRestPosition - 1].Type; 807int fieldsPerType = Math.Min(arity, ValueTupleRestPosition - 1); 988if (tuple.Arity == ValueTupleRestPosition) 991var extensionTupleElementTypes = tuple.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[ValueTupleRestPosition - 1].Type.TupleElementTypesWithAnnotations; 992var typesBuilder = ArrayBuilder<TypeWithAnnotations>.GetInstance(ValueTupleRestPosition - 1 + extensionTupleElementTypes.Length); 993typesBuilder.AddRange(tuple.TypeArgumentsWithAnnotationsNoUseSiteDiagnostics, ValueTupleRestPosition - 1);