aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/squareup/javapoet/ParameterSpec.java
diff options
context:
space:
mode:
authorShaishav Gandhi <shaishgandhi@gmail.com>2018-10-03 19:59:30 -0700
committerJesse Wilson <jesse@swank.ca>2018-10-03 22:59:30 -0400
commitea7a02ee88f8a3aa9afd3a9268390f4f9fee4b59 (patch)
tree765d380c3383e3f8b49398eec2b75a819f7219eb /src/main/java/com/squareup/javapoet/ParameterSpec.java
parentc93bfa88c30940d4f9bda88cac322ebbb83703a6 (diff)
downloadjavapoet-ea7a02ee88f8a3aa9afd3a9268390f4f9fee4b59.tar.gz
Add Javadoc to ParameterSpec (#676)
* Add Javadoc to ParameterSpec Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com> * Move emission to same CodeBlock Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com> * Remove eager javadoc addition and fallback to adding doc when emitting Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com> * Fix formatting Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com> * Add new line before emitting parameter javadoc Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com> * Emit new line before @param only if method javadoc is present Signed-off-by: shaishavgandhi05 <shaishgandhi@gmail.com>
Diffstat (limited to 'src/main/java/com/squareup/javapoet/ParameterSpec.java')
-rw-r--r--src/main/java/com/squareup/javapoet/ParameterSpec.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/java/com/squareup/javapoet/ParameterSpec.java b/src/main/java/com/squareup/javapoet/ParameterSpec.java
index e30cb0f..e98b99e 100644
--- a/src/main/java/com/squareup/javapoet/ParameterSpec.java
+++ b/src/main/java/com/squareup/javapoet/ParameterSpec.java
@@ -35,12 +35,14 @@ public final class ParameterSpec {
public final List<AnnotationSpec> annotations;
public final Set<Modifier> modifiers;
public final TypeName type;
+ public final CodeBlock javadoc;
private ParameterSpec(Builder builder) {
this.name = checkNotNull(builder.name, "name == null");
this.annotations = Util.immutableList(builder.annotations);
this.modifiers = Util.immutableSet(builder.modifiers);
this.type = checkNotNull(builder.type, "type == null");
+ this.javadoc = builder.javadoc.build();
}
public boolean hasModifier(Modifier modifier) {
@@ -121,6 +123,7 @@ public final class ParameterSpec {
public static final class Builder {
private final TypeName type;
private final String name;
+ private final CodeBlock.Builder javadoc = CodeBlock.builder();
private final List<AnnotationSpec> annotations = new ArrayList<>();
private final List<Modifier> modifiers = new ArrayList<>();
@@ -130,6 +133,16 @@ public final class ParameterSpec {
this.name = name;
}
+ public Builder addJavadoc(String format, Object... args) {
+ javadoc.add(format, args);
+ return this;
+ }
+
+ public Builder addJavadoc(CodeBlock block) {
+ javadoc.add(block);
+ return this;
+ }
+
public Builder addAnnotations(Iterable<AnnotationSpec> annotationSpecs) {
checkArgument(annotationSpecs != null, "annotationSpecs == null");
for (AnnotationSpec annotationSpec : annotationSpecs) {