internal ImmutableArray <ITypeSymbol> GetParameterTypes( TService service, SemanticDocument document, CancellationToken cancellationToken) { var allTypeParameters = this.TypeToGenerateIn.GetAllTypeParameters(); var semanticModel = document.SemanticModel; var allTypes = this.AttributeArguments != null ? this.AttributeArguments.Select(a => service.GetAttributeArgumentType(semanticModel, a, cancellationToken)) : this.Arguments.Select(a => service.GetArgumentType(semanticModel, a, cancellationToken)); return(allTypes.Select(t => FixType(t, semanticModel, allTypeParameters)).ToImmutableArray()); }