From ebc7a58c69999062a4a52cc502e70c74a44af7e4 Mon Sep 17 00:00:00 2001 From: Danny van Bruggen Date: Thu, 22 Feb 2018 21:59:23 +0100 Subject: [PATCH] Some small improvements --- .../ast/nodeTypes/NodeWithJavadoc.java | 9 ++++++--- .../ast/nodeTypes/NodeWithSimpleName.java | 3 +++ .../ast/nodeTypes/NodeWithType.java | 3 +++ .../github/javaparser/javadoc/Javadoc.java | 19 ++++++++++++++++++- 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithJavadoc.java b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithJavadoc.java index f4a7013b03..592947e07c 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithJavadoc.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithJavadoc.java @@ -64,7 +64,7 @@ default Optional getJavadoc() { */ @SuppressWarnings("unchecked") default N setJavadocComment(String comment) { - return setJavadocComment(new JavadocComment(comment)); + return setJavadocComment(new JavadocComment(" " + comment)); } default N setJavadocComment(JavadocComment comment) { @@ -73,8 +73,11 @@ default N setJavadocComment(JavadocComment comment) { } default N setJavadocComment(String indentation, Javadoc javadoc) { - JavadocComment comment = javadoc.toComment(indentation); - return setJavadocComment(comment); + return setJavadocComment(javadoc.toComment(indentation)); + } + + default N setJavadocComment(Javadoc javadoc) { + return setJavadocComment(javadoc.toComment()); } default boolean removeJavaDocComment() { diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithSimpleName.java b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithSimpleName.java index a979e7bdf9..3f2fa116f8 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithSimpleName.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithSimpleName.java @@ -22,6 +22,7 @@ package com.github.javaparser.ast.nodeTypes; import com.github.javaparser.ast.Node; +import com.github.javaparser.ast.expr.NameExpr; import com.github.javaparser.ast.expr.SimpleName; import static com.github.javaparser.utils.Utils.assertNonEmpty; @@ -45,4 +46,6 @@ default N setName(String name) { default String getNameAsString() { return getName().getIdentifier(); } + + default NameExpr getNameExpr() {return new NameExpr(getName()); } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithType.java b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithType.java index d97030cd75..06e66fb91f 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithType.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/nodeTypes/NodeWithType.java @@ -72,4 +72,7 @@ default N setType(final String typeString) { return setType((T) parseType(typeString)); } + default String getTypeAsString() { + return getType().asString(); + } } diff --git a/javaparser-core/src/main/java/com/github/javaparser/javadoc/Javadoc.java b/javaparser-core/src/main/java/com/github/javaparser/javadoc/Javadoc.java index 62e1957cca..1c56b14759 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/javadoc/Javadoc.java +++ b/javaparser-core/src/main/java/com/github/javaparser/javadoc/Javadoc.java @@ -56,6 +56,16 @@ public Javadoc addBlockTag(String tagName, String content) { return addBlockTag(new JavadocBlockTag(tagName, content)); } + /** + * for tags like "@param abc this is a parameter" where + * tagName is "param", + * parameter is "abc" + * and the rest is content. + */ + public Javadoc addBlockTag(String tagName, String parameter, String content) { + return addBlockTag(tagName, parameter + " " + content); + } + public Javadoc addBlockTag(String tagName) { return addBlockTag(tagName, ""); } @@ -81,7 +91,14 @@ public String toText() { } /** - * Create a JavadocComment, by formatting the text of the Javadoc using the given indentation/ + * Create a JavadocComment, by formatting the text of the Javadoc using no indentation (expecting the pretty printer to do the formatting.) + */ + public JavadocComment toComment() { + return toComment(""); + } + + /** + * Create a JavadocComment, by formatting the text of the Javadoc using the given indentation. */ public JavadocComment toComment(String indentation) { for (char c : indentation.toCharArray()) {