26 references to SubstituteType
Microsoft.CodeAnalysis.CSharp (26)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (1)
547return typeMap.SubstituteType(delegateOrFunctionPointerType).Type;
Lowering\AsyncRewriter\AsyncMethodBuilderMemberCollection.cs (1)
263resultType = typeMap.SubstituteType(resultType).Type;
Lowering\ClosureConversion\ClosureConversion.cs (1)
1694var cacheVariableType = containerAsFrame.TypeMap.SubstituteType(node.Type).Type;
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
847_bound.Typeof(_typeMap.SubstituteType(p.Type).Type, _bound.WellKnownType(WellKnownType.System_Type)), _bound.Literal(p.Name));
Lowering\ClosureConversion\LambdaCapturedVariable.cs (1)
117return frame.TypeMap.SubstituteType(((object)local != null ? local.TypeWithAnnotations : ((ParameterSymbol)variable).TypeWithAnnotations).Type).Type;
Lowering\LocalRewriter\DelegateCacheContainer.cs (1)
69var fieldType = TypeParameters.IsEmpty ? delegateType : TypeMap.SubstituteType(delegateType).Type;
Lowering\MethodToClassRewriter.cs (6)
212return TypeMap.SubstituteType(type).Type; 626var newType = (NamedTypeSymbol)TypeMap.SubstituteType(method.ContainingType).AsTypeSymbolOnly(); 648.AsMember((NamedTypeSymbol)TypeMap.SubstituteType(method.ContainingType).AsTypeSymbolOnly()) 665.AsMember((NamedTypeSymbol)TypeMap.SubstituteType(property.ContainingType).AsTypeSymbolOnly()); 669var newType = (NamedTypeSymbol)TypeMap.SubstituteType(property.ContainingType).AsTypeSymbolOnly(); 692.AsMember((NamedTypeSymbol)TypeMap.SubstituteType(field.ContainingType).AsTypeSymbolOnly());
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (2)
324proxy = new CapturedToStateMachineFieldReplacement(GetOrAllocateReusableHoistedField(TypeMap.SubstituteType(local.Type).Type, out reused, local), isReusable: true); 557var type = TypeMap.SubstituteType(local.Type).Type;
Lowering\StateMachineRewriter\StateMachineRewriter.cs (3)
185var fieldType = typeMap.SubstituteType(local.Type).Type; 255var proxyField = F.StateMachineField(typeMap.SubstituteType(parameter.Type).Type, parameter.Name, isPublic: !PreserveInitialParameterValuesAndThreadId); 260var field = F.StateMachineField(typeMap.SubstituteType(parameter.Type).Type, GeneratedNames.StateMachineParameterProxyFieldName(parameter.Name), isPublic: true);
Lowering\SynthesizedMethodBaseSymbol.cs (1)
154builder.Add(SynthesizedParameterSymbol.Create(this, this.TypeMap.SubstituteType(extra), ordinal++, RefKind.Ref));
Symbols\AbstractTypeMap.cs (1)
298var substituted = SubstituteType(t).Type;
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.DelegateTemplateSymbol.cs (2)
202new SynthesizedDelegateInvokeMethod.ParameterDescription(typeMap.SubstituteType(field.Type), field.RefKind, field.Scope, field.DefaultValue, isParams: field.IsParams, hasUnscopedRefAttribute: field.HasUnscopedRefAttribute)); 206var returnType = typeMap.SubstituteType(returnParameter.Type);
Symbols\DynamicTypeEraser.cs (1)
26return SubstituteType(type).AsTypeSymbolOnly();
Symbols\ErrorTypeSymbol.cs (1)
37/// Called by <see cref="AbstractTypeMap.SubstituteType(TypeSymbol)"/> to perform substitution
Symbols\SubstitutedFieldSymbol.cs (1)
103return (NamedTypeSymbol)_containingType.TypeSubstitution.SubstituteType(OriginalDefinition.FixedImplementationType(emitModule)).Type;
Symbols\SubstitutedTypeParameterSymbol.cs (1)
182return _map.SubstituteType(_underlyingTypeParameter.GetDeducedBaseType(inProgress)).AsTypeSymbolOnly();
Symbols\TypeWithAnnotations.cs (1)
446var newTypeWithModifiers = typeMap.SubstituteType(typeSymbol);