扩展 JDT 实现自动代码注释与格式化
2010-07-30 00:00:00 来源:WEB开发网清单 12. 处理 Javadoc
// 跟据元素类型不同得到不同的注释模板内容
for (IMember member : getAllMember(type)) {
String comment = null;
switch (member.getElementType()) {
// 方法
case IJavaElement.METHOD:
comment = getMethodComment((IMethod) member, lineDelimiter);
break;
// 字段
case IJavaElement.FIELD:
comment = getFiledComment((IField) member, lineDelimiter);
break;
// 其他情况,返回类注释
default:
comment = CodeGeneration.getTypeComment(parentCU,
type.getElementName(), lineDelimiter);
}
// 元素是否含有 Javadoc,没有添加,有则替换
if (member.getJavadocRange() != null)
buffer.replace(member.getJavadocRange().getOffset(), member
.getJavadocRange().getLength(), comment);
else
buffer.replace(member.getSourceRange().getOffset(), 0, comment);
// 同步
JavaModelUtil.reconcile(copyCU);
}
清单 12利用 IJavaElement 的 getElementType() 方法得到类型属性值,判断与哪种类型常量(IJavaElement.METHOD、IJavaElement.FIELD)匹配,识别元素类型;若均不匹配,默认此元素类型是类。
getMethodComment()(清单 13)、getFiledComment()(清单 14)方法分别得到方法、字段的模板内容。
清单 13. 得到方法注释模板内容
更多精彩
赞助商链接