From f70d284f9a9f690a1a6840368c291bab53a1fa81 Mon Sep 17 00:00:00 2001 From: Semyon Proshev Date: Fri, 15 Jul 2016 17:33:51 +0300 Subject: [PATCH] Specify nullability annotations in PyClassStub and PyClassStubImpl --- .../python/psi/stubs/PyClassStub.java | 11 +++++++- .../psi/impl/stubs/PyClassStubImpl.java | 26 ++++++++++++++++--- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/python/psi-api/src/com/jetbrains/python/psi/stubs/PyClassStub.java b/python/psi-api/src/com/jetbrains/python/psi/stubs/PyClassStub.java index b14307af1cd1..49935b62b20f 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/stubs/PyClassStub.java +++ b/python/psi-api/src/com/jetbrains/python/psi/stubs/PyClassStub.java @@ -22,17 +22,26 @@ package com.jetbrains.python.psi.stubs; import com.intellij.psi.stubs.NamedStub; import com.intellij.psi.util.QualifiedName; import com.jetbrains.python.psi.PyClass; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Map; public interface PyClassStub extends NamedStub { + /** * @return a {@code Map} which contains imported class names as keys and their original names as values */ + @NotNull Map getSuperClasses(); - @Nullable QualifiedName getMetaClass(); + + @Nullable + QualifiedName getMetaClass(); + + @Nullable List getSlots(); + + @Nullable String getDocString(); } \ No newline at end of file diff --git a/python/src/com/jetbrains/python/psi/impl/stubs/PyClassStubImpl.java b/python/src/com/jetbrains/python/psi/impl/stubs/PyClassStubImpl.java index 934db36edb90..5a8e4d413dde 100644 --- a/python/src/com/jetbrains/python/psi/impl/stubs/PyClassStubImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/stubs/PyClassStubImpl.java @@ -21,6 +21,7 @@ import com.intellij.psi.stubs.StubElement; import com.intellij.psi.util.QualifiedName; import com.jetbrains.python.psi.PyClass; import com.jetbrains.python.psi.stubs.PyClassStub; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; @@ -30,14 +31,29 @@ import java.util.Map; * @author max */ public class PyClassStubImpl extends StubBase implements PyClassStub { + + @Nullable private final String myName; + + @NotNull private final Map mySuperClasses; - @Nullable private final QualifiedName myMetaClass; + + @Nullable + private final QualifiedName myMetaClass; + + @Nullable private final List mySlots; + + @Nullable private final String myDocString; - public PyClassStubImpl(final String name, StubElement parentStub, final Map superClasses, - @Nullable QualifiedName metaClass, final List slots, String docString, IStubElementType stubElementType) { + public PyClassStubImpl(@Nullable String name, + @Nullable StubElement parentStub, + @NotNull Map superClasses, + @Nullable QualifiedName metaClass, + @Nullable List slots, + @Nullable String docString, + @NotNull IStubElementType stubElementType) { super(parentStub, stubElementType); myName = name; mySuperClasses = superClasses; @@ -46,10 +62,12 @@ public class PyClassStubImpl extends StubBase implements PyClassStub { myDocString = docString; } + @Nullable public String getName() { return myName; } + @NotNull public Map getSuperClasses() { return mySuperClasses; } @@ -60,11 +78,13 @@ public class PyClassStubImpl extends StubBase implements PyClassStub { return myMetaClass; } + @Nullable @Override public List getSlots() { return mySlots; } + @Nullable @Override public String getDocString() { return myDocString;