mapstruct / mapstruct/mapstruct-idea
Support passing custom annotations to generated code
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 168
- Forks
- 41
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
With the work in PR https://github.com/mapstruct/mapstruct/pull/2792 being done for https://github.com/mapstruct/mapstruct/issues/1574 it would be good to provide some support for the new API in the IntelliJ plugin as well.
Some things that we should do:
- Auto completion support for
AnnotateWith.Element#nameand error whennamedoes not exist in target enum. - Smart auto completion for
AnnotateWith.Element#classes(pick the class type based on the one in the annotation - Auto completion for
AnnotateWith.Element#enumsand error when enum value does not exist - Annotation cannot annotated the generated class / method (it doesn't have the right target element type)
- Error when more than one value type is provided, eg.
shorts()andstrings() - Error when duplicated
AnnotateWith.Element#name(more than one having the same name - Error when value does not match target annotation value type
- Error when using array value, but target value is not an array
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza leyendo PR #2792 y el issue #1574 para entender la nueva AnnotateWith API; después, inspecciona el soporte existente del plugin de IntelliJ para anotaciones generadas. Se considera terminado implementar y validar las comprobaciones de finalización y de errores enumeradas, incluida la compatibilidad de destino, los nombres duplicados, los tipos de valores y los arrays.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- devtools
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 30/100