DocumentationProvider @NotNull

This commit is contained in:
peter
2018-10-23 15:29:56 +02:00
parent c2d34d3352
commit 413cee78ca
22 changed files with 32 additions and 22 deletions
@@ -177,7 +177,7 @@ public class JsonSchemaDocumentationProvider implements DocumentationProvider {
@Nullable @Nullable
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if ((element instanceof JsonProperty || isWhitespaceOrComment(element) && element.getParent() instanceof JsonObject) && object instanceof String) { if ((element instanceof JsonProperty || isWhitespaceOrComment(element) && element.getParent() instanceof JsonObject) && object instanceof String) {
return new FakeDocElement(element instanceof JsonProperty ? ((JsonProperty)element).getNameElement() : element, StringUtil.unquoteString((String)object)); return new FakeDocElement(element instanceof JsonProperty ? ((JsonProperty)element).getNameElement() : element, StringUtil.unquoteString((String)object));
} }
@@ -143,7 +143,7 @@ public class CompositeDocumentationProvider extends DocumentationProviderEx impl
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
for (DocumentationProvider provider : getAllProviders()) { for (DocumentationProvider provider : getAllProviders()) {
PsiElement result = provider.getDocumentationElementForLookupItem(psiManager, object, element); PsiElement result = provider.getDocumentationElementForLookupItem(psiManager, object, element);
if (result != null) { if (result != null) {
@@ -22,6 +22,7 @@ import com.intellij.openapi.extensions.ExtensionPointName;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiManager; import com.intellij.psi.PsiManager;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.util.List; import java.util.List;
@@ -90,7 +91,7 @@ public interface DocumentationProvider {
String generateDoc(PsiElement element, @Nullable PsiElement originalElement); String generateDoc(PsiElement element, @Nullable PsiElement originalElement);
@Nullable @Nullable
PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element); PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element);
/** /**
* Returns the target element for a link in a documentation comment. The link needs to use the * Returns the target element for a link in a documentation comment. The link needs to use the
@@ -46,7 +46,7 @@ public class DocumentationProviderEx implements DocumentationProvider {
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -17,7 +17,7 @@ import javax.swing.*;
public class LiveTemplateDocumentationProvider extends AbstractDocumentationProvider { public class LiveTemplateDocumentationProvider extends AbstractDocumentationProvider {
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if (object instanceof LiveTemplateLookupElementImpl) { if (object instanceof LiveTemplateLookupElementImpl) {
TemplateImpl template = ((LiveTemplateLookupElementImpl)object).getTemplate(); TemplateImpl template = ((LiveTemplateLookupElementImpl)object).getTemplate();
final TemplateImpl templateFromSettings = TemplateSettings.getInstance().getTemplate(template.getKey(), template.getGroupName()); final TemplateImpl templateFromSettings = TemplateSettings.getInstance().getTemplate(template.getKey(), template.getGroupName());
@@ -17,7 +17,7 @@ import javax.swing.*;
public class StructuralSearchTemplateDocumentationProvider extends AbstractDocumentationProvider { public class StructuralSearchTemplateDocumentationProvider extends AbstractDocumentationProvider {
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if (object instanceof Configuration) { if (object instanceof Configuration) {
return new ConfigurationElement((Configuration)object, psiManager); return new ConfigurationElement((Configuration)object, psiManager);
} }
@@ -37,6 +37,7 @@ import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.DomTarget; import com.intellij.util.xml.DomTarget;
import com.intellij.util.xml.reflect.DomChildrenDescription; import com.intellij.util.xml.reflect.DomChildrenDescription;
import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.io.File; import java.io.File;
@@ -253,7 +254,7 @@ public class AntDomDocumentationProvider implements DocumentationProvider {
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -24,6 +24,7 @@ import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager; import com.intellij.psi.PsiManager;
import com.intellij.psi.PsiMethod; import com.intellij.psi.PsiMethod;
import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiTreeUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.plugins.gradle.util.GradleConstants; import org.jetbrains.plugins.gradle.util.GradleConstants;
import org.jetbrains.plugins.gradle.util.GradleDocumentationBundle; import org.jetbrains.plugins.gradle.util.GradleDocumentationBundle;
@@ -74,7 +75,7 @@ public class GradleDocumentationProvider implements DocumentationProvider {
@Nullable @Nullable
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
final PsiFile file = element.getContainingFile(); final PsiFile file = element.getContainingFile();
if (file == null || !FileUtilRt.extensionEquals(file.getName(), GradleConstants.EXTENSION)) return null; if (file == null || !FileUtilRt.extensionEquals(file.getName(), GradleConstants.EXTENSION)) return null;
final String doc = findDoc(element, object); final String doc = findDoc(element, object);
@@ -426,7 +426,7 @@ public class GroovyDocumentationProvider implements CodeDocumentationProvider, E
@Override @Override
@Nullable @Nullable
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if (object instanceof GroovyResolveResult) { if (object instanceof GroovyResolveResult) {
return ((GroovyResolveResult)object).getElement(); return ((GroovyResolveResult)object).getElement();
} }
@@ -56,7 +56,7 @@ public class MavenModelDocumentationProvider implements DocumentationProvider, E
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -18,6 +18,7 @@ package org.jetbrains.idea.maven.dom;
import com.intellij.lang.documentation.DocumentationProvider; import com.intellij.lang.documentation.DocumentationProvider;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiManager; import com.intellij.psi.PsiManager;
import org.jetbrains.annotations.NotNull;
import java.util.List; import java.util.List;
@@ -38,7 +39,7 @@ public class MavenPluginModelDocumentationProvider implements DocumentationProvi
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -21,6 +21,7 @@ import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile; import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiManager; import com.intellij.psi.PsiManager;
import com.intellij.xml.util.documentation.XmlDocumentationProvider; import com.intellij.xml.util.documentation.XmlDocumentationProvider;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.util.List; import java.util.List;
@@ -75,7 +76,7 @@ public class MavenPomXmlDocumentationProvider implements DocumentationProvider {
@Nullable @Nullable
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if (!isFromPomXml(element)) return null; if (!isFromPomXml(element)) return null;
return myDelegate.getDocumentationElementForLookupItem(psiManager, object, element); return myDelegate.getDocumentationElementForLookupItem(psiManager, object, element);
@@ -24,6 +24,7 @@ import com.intellij.tasks.Comment;
import com.intellij.tasks.Task; import com.intellij.tasks.Task;
import com.intellij.xml.util.XmlStringUtil; import com.intellij.xml.util.XmlStringUtil;
import com.petebevin.markdown.MarkdownProcessor; import com.petebevin.markdown.MarkdownProcessor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.util.Collections; import java.util.Collections;
@@ -70,7 +71,7 @@ public class TaskDocumentationProvider extends AbstractDocumentationProvider imp
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return object instanceof Task ? new TaskPsiElement(psiManager, (Task)object): null; return object instanceof Task ? new TaskPsiElement(psiManager, (Task)object): null;
} }
@@ -195,7 +195,7 @@ public class XsltDocumentationProvider implements DocumentationProvider {
@Override @Override
@Nullable @Nullable
public PsiElement getDocumentationElementForLookupItem(PsiManager mgr, Object object, PsiElement psiElement) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager mgr, @NotNull Object object, @NotNull PsiElement psiElement) {
if (object instanceof String) { if (object instanceof String) {
if (psiElement instanceof XmlElement) { if (psiElement instanceof XmlElement) {
final XmlTag tag = PsiTreeUtil.getParentOfType(psiElement, XmlTag.class); final XmlTag tag = PsiTreeUtil.getParentOfType(psiElement, XmlTag.class);
@@ -56,7 +56,7 @@ public abstract class YamlDocumentationProviderBase extends AbstractDocumentatio
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement contextElement) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement contextElement) {
if (object instanceof ForcedCompletionPath) { // deep completion if (object instanceof ForcedCompletionPath) { // deep completion
return createFromCompletionPath((ForcedCompletionPath)object, contextElement); return createFromCompletionPath((ForcedCompletionPath)object, contextElement);
} }
@@ -48,7 +48,7 @@ public class YamlJsonSchemaDocumentationProvider extends DocumentationProviderEx
@Nullable @Nullable
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -25,6 +25,7 @@ import com.jetbrains.python.documentation.PyDocumentationBuilder;
import com.jetbrains.python.psi.PyElement; import com.jetbrains.python.psi.PyElement;
import com.jetbrains.python.psi.PyReferenceExpression; import com.jetbrains.python.psi.PyReferenceExpression;
import com.jetbrains.python.psi.PyUtil; import com.jetbrains.python.psi.PyUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
/** /**
@@ -33,7 +34,7 @@ import org.jetbrains.annotations.Nullable;
public class PydevDocumentationProvider extends AbstractDocumentationProvider { public class PydevDocumentationProvider extends AbstractDocumentationProvider {
@Override @Override
public PsiElement getDocumentationElementForLookupItem(final PsiManager psiManager, final Object object, final PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull final PsiManager psiManager, @NotNull final Object object, @NotNull final PsiElement element) {
if (object instanceof PydevConsoleElement){ if (object instanceof PydevConsoleElement){
return (PydevConsoleElement) object; return (PydevConsoleElement) object;
} }
@@ -21,6 +21,7 @@ import com.intellij.pom.PomTargetPsiElement;
import com.intellij.psi.DelegatePsiTarget; import com.intellij.psi.DelegatePsiTarget;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiManager; import com.intellij.psi.PsiManager;
import org.jetbrains.annotations.NotNull;
import java.util.List; import java.util.List;
@@ -60,7 +61,7 @@ public class DomDocumentationProvider implements DocumentationProvider {
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(final PsiManager psiManager, final Object object, final PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull final PsiManager psiManager, @NotNull final Object object, @NotNull final PsiElement element) {
return null; return null;
} }
@@ -37,6 +37,7 @@ import com.intellij.xml.XmlElementDescriptor;
import com.intellij.xml.util.ColorSampleLookupValue; import com.intellij.xml.util.ColorSampleLookupValue;
import com.intellij.xml.util.XmlUtil; import com.intellij.xml.util.XmlUtil;
import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.util.Collections; import java.util.Collections;
@@ -261,7 +262,7 @@ public class HtmlDocumentationProvider implements DocumentationProvider {
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
PsiElement result = createNavigationElementHTML(psiManager, object.toString(),element); PsiElement result = createNavigationElementHTML(psiManager, object.toString(),element);
DocumentationProvider styleProvider = getStyleProvider(); DocumentationProvider styleProvider = getStyleProvider();
@@ -316,7 +316,7 @@ public class XmlDocumentationProvider implements DocumentationProvider {
} }
@Override @Override
public PsiElement getDocumentationElementForLookupItem(final PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull final PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
if (object instanceof XmlExtension.TagInfo) { if (object instanceof XmlExtension.TagInfo) {
return ((XmlExtension.TagInfo)object).getDeclaration(); return ((XmlExtension.TagInfo)object).getDeclaration();
@@ -33,6 +33,7 @@ import org.intellij.plugins.relaxNG.model.descriptors.CompositeDescriptor;
import org.intellij.plugins.relaxNG.model.descriptors.RngElementDescriptor; import org.intellij.plugins.relaxNG.model.descriptors.RngElementDescriptor;
import org.intellij.plugins.relaxNG.model.descriptors.RngXmlAttributeDescriptor; import org.intellij.plugins.relaxNG.model.descriptors.RngXmlAttributeDescriptor;
import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.kohsuke.rngom.digested.DElementPattern; import org.kohsuke.rngom.digested.DElementPattern;
@@ -138,7 +139,7 @@ public class RngDocumentationProvider implements DocumentationProvider {
@Override @Override
@Nullable @Nullable
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }
@@ -154,7 +154,7 @@ public class RngCompactLanguage extends Language {
@Override @Override
@Nullable @Nullable
public PsiElement getDocumentationElementForLookupItem(PsiManager psiManager, Object object, PsiElement element) { public PsiElement getDocumentationElementForLookupItem(@NotNull PsiManager psiManager, @NotNull Object object, @NotNull PsiElement element) {
return null; return null;
} }