mapstruct / mapstruct/mapstruct-idea

Report error for result types with wildcard extends bound

Offen
#266 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature hack.commit.push
Vorherrschende Sprache
Java
Sterne
168
Forks
41
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

MapStruct does not support result types with an extends bound. For example
```
import java.util.List;
import org.mapstruct.Mapper;

@Mapper
public interface BoundMapper {
List toExtends(List in);
}
```
is invalide, because of the wildcard extends bound `? extends `. MapStruct reports this as

> Can't generate mapping method for a wildcard extends bound result.

Currently the plugin doesn't report this as an error.

One possible QuickFix could be removing the wildcard extends bound `? extends `.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginnen Sie damit, das Problem mit dem BoundMapper-Beispiel in IntelliJ zu reproduzieren, und untersuchen Sie, wie das Plugin Ergebnistypen mit Wildcard-extends-Grenzen verarbeitet. Als erledigt gilt die Aufgabe, wenn das Plugin für diesen Fall einen Fehler meldet und das Entfernen der `? extends`-Grenze als möglicher QuickFix angeboten wird; das Payload nennt keine Quelldatei und keinen Test.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
tooling
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
55/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.