Annotate all method of StructuredDocString that return collections as @NotNull
authorMikhail Golubev <mikhail.golubev@jetbrains.com>
Wed, 2 Sep 2015 17:07:26 +0000 (20:07 +0300)
committerMikhail Golubev <mikhail.golubev@jetbrains.com>
Wed, 2 Sep 2015 17:07:26 +0000 (20:07 +0300)
PlainDocString returns empty lists for each of them.

python/psi-api/src/com/jetbrains/python/psi/StructuredDocString.java
python/src/com/jetbrains/python/documentation/EpydocString.java
python/src/com/jetbrains/python/documentation/PlainDocString.java
python/src/com/jetbrains/python/documentation/SectionBasedDocString.java
python/src/com/jetbrains/python/documentation/SphinxDocString.java
python/src/com/jetbrains/python/documentation/TagBasedDocString.java

index e32327d4577ad861157407210716c372850f80b0..423689ae2056bba0ab1e9aa3ea05407d5444fe3b 100644 (file)
@@ -37,11 +37,13 @@ public interface StructuredDocString {
   String getSummary();
   String getDescription(); // for formatter
 
+  @NotNull
   List<String> getParameters();
 
   /**
    * @return all names of parameters mentioned in the docstring as substrings.
    */
+  @NotNull
   List<Substring> getParameterSubstrings();
 
   /**
@@ -65,7 +67,9 @@ public interface StructuredDocString {
    * Keyword arguments are those arguments that usually don't exist in function signature, 
    * but are passed e.g. via {@code **kwargs} mechanism. 
    */
+  @NotNull
   List<String> getKeywordArguments();
+  @NotNull
   List<Substring> getKeywordArgumentSubstrings();
 
   // getKeywordArgumentType(name)
@@ -79,6 +83,7 @@ public interface StructuredDocString {
 
   @Nullable
   String getReturnDescription(); // for formatter
+  @NotNull
   List<String> getRaisedExceptions(); // for formatter
 
   @Nullable
index 9e351ab6c65610a83e57df37a474d742f7d9da5e..386af6c9c7fc876b39c3f5849d88a5e5222690d0 100644 (file)
@@ -57,11 +57,13 @@ public class EpydocString extends TagBasedDocString {
     return html;
   }
 
+  @NotNull
   @Override
   public List<String> getParameters() {
     return toUniqueStrings(getParameterSubstrings());
   }
 
+  @NotNull
   @Override
   public List<String> getKeywordArguments() {
     return toUniqueStrings(getKeywordArgumentSubstrings());
@@ -109,6 +111,7 @@ public class EpydocString extends TagBasedDocString {
     return inlineMarkupToHTML(getTagValue(KEYWORD_ARGUMENT_TAGS, paramName));
   }
 
+  @NotNull
   @Override
   public List<String> getRaisedExceptions() {
     return toUniqueStrings(getTagArguments(RAISES_TAGS));
@@ -298,6 +301,7 @@ public class EpydocString extends TagBasedDocString {
     return list;
   }
 
+  @NotNull
   @Override
   public List<Substring> getKeywordArgumentSubstrings() {
     return getTagArguments(KEYWORD_ARGUMENT_TAGS);
index c0b85ba0fb748c0ca437f1e52e38d9c4865bcba4..cda8b25c8dfda830b20a7b81c2f04543adb7ff71 100644 (file)
@@ -21,6 +21,7 @@ import com.jetbrains.python.toolbox.Substring;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+import java.util.Collections;
 import java.util.List;
 
 /**
@@ -71,14 +72,16 @@ public class PlainDocString extends DocStringLineParser implements StructuredDoc
     return "";
   }
 
+  @NotNull
   @Override
   public List<String> getParameters() {
-    return null;
+    return Collections.emptyList();
   }
 
+  @NotNull
   @Override
   public List<Substring> getParameterSubstrings() {
-    return null;
+    return Collections.emptyList();
   }
 
   @Nullable
@@ -99,14 +102,16 @@ public class PlainDocString extends DocStringLineParser implements StructuredDoc
     return null;
   }
 
+  @NotNull
   @Override
   public List<String> getKeywordArguments() {
-    return null;
+    return Collections.emptyList();
   }
 
+  @NotNull
   @Override
   public List<Substring> getKeywordArgumentSubstrings() {
-    return null;
+    return Collections.emptyList();
   }
 
   @Nullable
@@ -133,9 +138,10 @@ public class PlainDocString extends DocStringLineParser implements StructuredDoc
     return null;
   }
 
+  @NotNull
   @Override
   public List<String> getRaisedExceptions() {
-    return null;
+    return Collections.emptyList();
   }
 
   @Nullable
index a166191d2cc09deca5163329634394b70a9cfcb6..0db5cf1999b35ce642ff555759ea18617e9e14a5 100644 (file)
@@ -279,6 +279,7 @@ public abstract class SectionBasedDocString extends DocStringLineParser implemen
     return null;
   }
 
+  @NotNull
   @Override
   public List<String> getParameters() {
     return ContainerUtil.map(getParameterSubstrings(), new Function<Substring, String>() {
@@ -289,6 +290,7 @@ public abstract class SectionBasedDocString extends DocStringLineParser implemen
     });
   }
 
+  @NotNull
   @Override
   public List<Substring> getParameterSubstrings() {
     return ContainerUtil.mapNotNull(getParameterFields(), new Function<SectionField, Substring>() {
@@ -359,6 +361,7 @@ public abstract class SectionBasedDocString extends DocStringLineParser implemen
     return getSectionsWithNormalizedTitle(PARAMETERS_SECTION);
   }
 
+  @NotNull
   @Override
   public List<String> getKeywordArguments() {
     return ContainerUtil.mapNotNull(getKeywordArgumentFields(), new Function<SectionField, String>() {
@@ -369,6 +372,7 @@ public abstract class SectionBasedDocString extends DocStringLineParser implemen
     });
   }
 
+  @NotNull
   @Override
   public List<Substring> getKeywordArgumentSubstrings() {
     return ContainerUtil.mapNotNull(getKeywordArgumentFields(), new Function<SectionField, Substring>() {
@@ -446,6 +450,7 @@ public abstract class SectionBasedDocString extends DocStringLineParser implemen
     return ContainerUtil.getFirstItem(getReturnFields());
   }
 
+  @NotNull
   @Override
   public List<String> getRaisedExceptions() {
     return ContainerUtil.mapNotNull(getExceptionFields(), new Function<SectionField, String>() {
index 1ab7068e35acbaf07cc4a37136fbd7eb8278dbfb..68ebe3728977bbd34a7c9a1388e46aa1515ee2ef 100644 (file)
@@ -40,11 +40,13 @@ public class SphinxDocString extends TagBasedDocString {
     return s != null ? s.concatTrimmedLines(" ") : null;
   }
 
+  @NotNull
   @Override
   public List<String> getParameters() {
     return toUniqueStrings(getParameterSubstrings());
   }
 
+  @NotNull
   @Override
   public List<String> getKeywordArguments() {
     return toUniqueStrings(getKeywordArgumentSubstrings());
@@ -80,6 +82,7 @@ public class SphinxDocString extends TagBasedDocString {
     return concatTrimmedLines(getTagValue(RETURN_TAGS));
   }
 
+  @NotNull
   @Override
   public List<String> getRaisedExceptions() {
     return toUniqueStrings(getTagArguments(RAISES_TAGS));
@@ -104,6 +107,7 @@ public class SphinxDocString extends TagBasedDocString {
     return Collections.emptyList();
   }
 
+  @NotNull
   @Override
   public List<Substring> getKeywordArgumentSubstrings() {
     return getTagArguments(KEYWORD_ARGUMENT_TAGS);
index 663bb6bb5497b602d31b0d4667c9c7c9d173223c..7d5b513023d82b483eebe4d5b9915e861a3d20a3 100644 (file)
@@ -210,6 +210,7 @@ public abstract class TagBasedDocString extends DocStringLineParser implements S
     return Collections.emptyList();
   }
 
+  @NotNull
   @Override
   public List<Substring> getParameterSubstrings() {
     final List<Substring> results = new ArrayList<Substring>();