From b1556e64daf5358bebf4844c816467c866376dcd Mon Sep 17 00:00:00 2001 From: Pavel Vojtechovsky Date: Thu, 7 Sep 2017 21:39:26 +0200 Subject: [PATCH] refactor: DefaultJavaPrettyPrinter uses CommentHelper --- .../visitor/DefaultJavaPrettyPrinter.java | 86 ++----------------- 1 file changed, 8 insertions(+), 78 deletions(-) diff --git a/src/main/java/spoon/reflect/visitor/DefaultJavaPrettyPrinter.java b/src/main/java/spoon/reflect/visitor/DefaultJavaPrettyPrinter.java index 5eff88bd297..cd8c1b9a51c 100644 --- a/src/main/java/spoon/reflect/visitor/DefaultJavaPrettyPrinter.java +++ b/src/main/java/spoon/reflect/visitor/DefaultJavaPrettyPrinter.java @@ -109,6 +109,7 @@ import spoon.reflect.reference.CtWildcardReference; import spoon.reflect.visitor.PrintingContext.Writable; import spoon.reflect.visitor.filter.PotentialVariableDeclarationFunction; +import spoon.reflect.visitor.printer.CommentHelper; import spoon.reflect.visitor.printer.CommentOffset; import spoon.reflect.visitor.printer.ElementPrinterHelper; import spoon.reflect.visitor.printer.ListPrinter; @@ -911,25 +912,12 @@ public void visitCtJavaDoc(CtJavaDoc comment) { @Override public void visitCtJavaDocTag(CtJavaDocTag docTag) { - printer.write(COMMENT_STAR); - printer.write(CtJavaDocTag.JAVADOC_TAG_PREFIX); - printer.write(docTag.getType().name().toLowerCase()); - printer.write(" "); - if (docTag.getType().hasParam()) { - printer.write(docTag.getParam()).writeln().writeTabs(); - } - - String[] tagLines = docTag.getContent().split(CtComment.LINE_SEPARATOR); - for (int i = 0; i < tagLines.length; i++) { - String com = tagLines[i]; - if (i > 0 || docTag.getType().hasParam()) { - printer.write(COMMENT_STAR); - } - if (docTag.getType().hasParam()) { - printer.write("\t\t"); - } - printer.write(com.trim()).writeln().writeTabs(); - } + /* + * is not called during normal printing of java sources. + * It can be called only when CtJavaDocTag has to be printed directly. + * E.g. from CtJavaDocTag#toString + */ + CommentHelper.printJavaDocTag(printer, docTag); } @Override @@ -937,65 +925,7 @@ public void visitCtComment(CtComment comment) { if (!env.isCommentsEnabled() && context.elementStack.size() > 1) { return; } - switch (comment.getCommentType()) { - case FILE: - printer.write(JAVADOC_START).writeln(); - break; - case JAVADOC: - printer.write(JAVADOC_START).writeln().writeTabs(); - break; - case INLINE: - printer.write(INLINE_COMMENT_START); - break; - case BLOCK: - printer.write(BLOCK_COMMENT_START); - break; - } - String content = comment.getContent(); - switch (comment.getCommentType()) { - case INLINE: - printer.write(content); - break; - default: - String[] lines = content.split(CtComment.LINE_SEPARATOR); - for (int i = 0; i < lines.length; i++) { - String com = lines[i]; - if (comment.getCommentType() == CtComment.CommentType.BLOCK) { - printer.write(com); - if (lines.length > 1) { - printer.writeln().writeTabs(); - } - } else { - if (com.length() > 0) { - printer.write(COMMENT_STAR + com).writeln().writeTabs(); - } else { - printer.write(" *" /* no trailing space */ + com).writeln().writeTabs(); - } - } - - } - if (comment instanceof CtJavaDoc) { - if (!((CtJavaDoc) comment).getTags().isEmpty()) { - printer.write(" *").writeln().writeTabs(); - } - for (CtJavaDocTag docTag : ((CtJavaDoc) comment).getTags()) { - scan(docTag); - } - } - break; - } - - switch (comment.getCommentType()) { - case BLOCK: - printer.write(BLOCK_COMMENT_END); - break; - case FILE: - printer.write(BLOCK_COMMENT_END); - break; - case JAVADOC: - printer.write(BLOCK_COMMENT_END); - break; - } + CommentHelper.printComment(printer, comment); } @Override