mapstruct / mapstruct/mapstruct-idea
Support passing custom annotations to generated code
未关闭
还没有人认领这个 Issue。
feature
- 主要语言
- Java
- 星标
- 168
- 派生
- 41
- PR 合并指标
- 30 天内没有已合并 PR
描述
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
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先阅读 PR #2792 和 issue #1574,了解新的 AnnotateWith API,然后检查 IntelliJ 插件现有的生成注解支持。完成标准是实现并验证列出的补全和错误检查,包括目标兼容性、重复名称、值类型和数组。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- devtools
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 30/100