@Null Annotations, etc
This commit is contained in:
@@ -31,7 +31,7 @@ public class GoLangDoc extends BaseLangDoc {
|
||||
|
||||
@Override
|
||||
public @Nullable <T extends SettingsInfo> String resolveDocRaw(@NotNull T lineInfo, @NotNull PsiElement resolve) {
|
||||
List<PsiComment> comments = GoDocumentationProvider.getCommentsForElement(resolve);
|
||||
@NotNull List<PsiComment> comments = GoDocumentationProvider.getCommentsForElement(resolve);
|
||||
return GoDocumentationProvider.getCommentText(comments, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,12 +29,12 @@ public class JsLangDoc extends BaseLangDoc {
|
||||
|
||||
@Override
|
||||
public @Nullable <T extends SettingsInfo> String resolveDocRaw(@NotNull T lineInfo, @NotNull PsiElement resolve) {
|
||||
PsiComment psiComment = JSDocumentationUtils.findOwnDocCommentForImplicitElement(resolve);
|
||||
@Nullable PsiComment psiComment = JSDocumentationUtils.findOwnDocCommentForImplicitElement(resolve);
|
||||
if (psiComment == null) {
|
||||
return null;
|
||||
}
|
||||
String text = psiComment.getText();
|
||||
if (text!=null) {
|
||||
if (text != null) {
|
||||
return text;
|
||||
}
|
||||
if (!lineInfo.appSettings.jsDoc) {
|
||||
|
||||
@@ -25,7 +25,7 @@ public class JsonLangDoc extends BaseLangDoc {
|
||||
|
||||
@Override
|
||||
public @Nullable String findRefDoc(@NotNull LineInfo lineInfo, @NotNull PsiElement element) {
|
||||
PsiElement start = lineInfo.viewProvider.findElementAt(lineInfo.startOffset);
|
||||
@Nullable PsiElement start = lineInfo.viewProvider.findElementAt(lineInfo.startOffset);
|
||||
if (start == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -41,10 +41,10 @@ public class JsonLangDoc extends BaseLangDoc {
|
||||
if (!(ref instanceof JsonProperty)) {
|
||||
return null;
|
||||
}
|
||||
JsonProperty jsonProperty = (JsonProperty) ref;
|
||||
PsiReference[] references = jsonProperty.getNameElement().getReferences();
|
||||
for (PsiReference reference : references) {
|
||||
PsiElement resolve = null;
|
||||
@NotNull JsonProperty jsonProperty = (JsonProperty) ref;
|
||||
@NotNull PsiReference[] references = jsonProperty.getNameElement().getReferences();
|
||||
for (@NotNull PsiReference reference : references) {
|
||||
@Nullable PsiElement resolve = null;
|
||||
try {
|
||||
resolve = reference.resolve();
|
||||
} catch (Throwable ignore) {
|
||||
@@ -53,7 +53,7 @@ public class JsonLangDoc extends BaseLangDoc {
|
||||
if (resolve == null) {
|
||||
continue;
|
||||
}
|
||||
String doc = BaseLangDoc.resolveDoc(lineInfo, resolve);
|
||||
@Nullable String doc = BaseLangDoc.resolveDoc(lineInfo, resolve);
|
||||
if (doc != null) {
|
||||
return doc;
|
||||
}
|
||||
|
||||
@@ -39,8 +39,8 @@ public class SqlLangDoc extends BaseLangDoc {
|
||||
} catch (Throwable e) {
|
||||
return null;
|
||||
}
|
||||
for (DbElement dbElement : relatedDbElements) {
|
||||
String refDoc = dbElement.getComment();
|
||||
for (@NotNull DbElement dbElement : relatedDbElements) {
|
||||
@Nullable String refDoc = dbElement.getComment();
|
||||
if (refDoc != null && !DocSkip.skipDoc(lineInfo.appSettings, lineInfo.projectSettings, refDoc)) {
|
||||
return refDoc;
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
}
|
||||
|
||||
public static @Nullable String langDoc(@NotNull LineInfo lineInfo) {
|
||||
PsiElement element = lineInfo.viewProvider.findElementAt(lineInfo.endOffset);
|
||||
@Nullable PsiElement element = lineInfo.viewProvider.findElementAt(lineInfo.endOffset);
|
||||
if (element == null) {
|
||||
// file end
|
||||
element = lineInfo.viewProvider.findElementAt(lineInfo.endOffset - 1);
|
||||
@@ -49,7 +49,7 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Language language = PsiElementTo.language(element);
|
||||
@NotNull Language language = PsiElementTo.language(element);
|
||||
BaseLangDoc lineEnd = LANG_DOC_MAP.get(language.getID());
|
||||
if (lineEnd != null && lineEnd.show(lineInfo)) {
|
||||
return lineEnd.findRefDoc(lineInfo, element);
|
||||
@@ -64,15 +64,15 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
*/
|
||||
@Nullable
|
||||
public String findRefDoc(@NotNull LineInfo lineInfo, @NotNull PsiElement element) {
|
||||
Class<? extends PsiElement> refClass = getRefClass();
|
||||
@Nullable Class<? extends PsiElement> refClass = getRefClass();
|
||||
if (refClass == null) {
|
||||
return null;
|
||||
}
|
||||
String doc = null;
|
||||
PsiElement refElement = element;
|
||||
@Nullable String doc = null;
|
||||
@Nullable PsiElement refElement = element;
|
||||
while ((refElement = Prev.prevRefChild(lineInfo, refElement, refClass)) != null) {
|
||||
PsiElement parent = refElement.getParent();
|
||||
String filterDoc = refElementDoc(lineInfo, parent);
|
||||
@Nullable String filterDoc = refElementDoc(lineInfo, parent);
|
||||
if (filterDoc != null) {
|
||||
doc = filterDoc;
|
||||
refElement = parent;
|
||||
@@ -90,7 +90,7 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
String text = refElement.getText();
|
||||
boolean set = text.startsWith("set");
|
||||
PsiElement parent = refElement.getParent();
|
||||
String before = refElementDoc(lineInfo, parent);
|
||||
@Nullable String before = refElementDoc(lineInfo, parent);
|
||||
if (before != null) {
|
||||
doc = mergeDoc(set, lineInfo.appSettings.getToSet, before, doc);
|
||||
}
|
||||
@@ -115,9 +115,10 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
/**
|
||||
* Override like SQL
|
||||
*/
|
||||
@Nullable
|
||||
protected <T extends SettingsInfo> String refElementDoc(@NotNull T lineInfo,
|
||||
@NotNull PsiElement refElement) {
|
||||
String refDoc = refDoc(lineInfo, refElement);
|
||||
@Nullable String refDoc = refDoc(lineInfo, refElement);
|
||||
if (refDoc != null && !DocSkip.skipDoc(lineInfo.appSettings, lineInfo.projectSettings, refDoc)) {
|
||||
return refDoc;
|
||||
}
|
||||
@@ -130,22 +131,23 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
@Nullable
|
||||
protected <T extends SettingsInfo> String refDoc(@NotNull T lineInfo, @NotNull PsiElement ref) {
|
||||
// kotlin ref.getReference() == null but ref.getReferences().length == 2
|
||||
PsiReference[] references = ref.getReferences();
|
||||
@NotNull PsiReference[] references = ref.getReferences();
|
||||
if (references.length < 1) {
|
||||
return null;
|
||||
}
|
||||
for (PsiReference reference : references) {
|
||||
PsiElement resolve;
|
||||
for (@NotNull PsiReference reference : references) {
|
||||
@Nullable PsiElement resolve;
|
||||
try {
|
||||
resolve = reference.resolve();
|
||||
} catch (Throwable e) {
|
||||
// 2021.3: Slow operations are prohibited on EDT. See SlowOperations.assertSlowOperationsAreAllowed javadoc.
|
||||
// 2021.3: Slow operations are prohibited on EDT.
|
||||
// See SlowOperations.assertSlowOperationsAreAllowed javadoc.
|
||||
return null;
|
||||
}
|
||||
if (resolve == null) {
|
||||
return null;
|
||||
}
|
||||
String resolveDoc = resolveDoc(lineInfo, resolve);
|
||||
@Nullable String resolveDoc = resolveDoc(lineInfo, resolve);
|
||||
if (resolveDoc != null) {
|
||||
return resolveDoc;
|
||||
}
|
||||
@@ -153,9 +155,10 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static @Nullable <T extends SettingsInfo> String resolveDoc(T settingsInfo, PsiElement psiElement) {
|
||||
public static @Nullable <T extends SettingsInfo> String resolveDoc(@NotNull T settingsInfo,
|
||||
@NotNull PsiElement psiElement) {
|
||||
// support like java <-> kotlin
|
||||
Language language = PsiElementTo.language(psiElement);
|
||||
@NotNull Language language = PsiElementTo.language(psiElement);
|
||||
BaseLangDoc lineEnd = LANG_DOC_MAP.get(language.getID());
|
||||
if (lineEnd == null) {
|
||||
return null;
|
||||
@@ -168,12 +171,12 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
*/
|
||||
@Nullable
|
||||
protected <T extends SettingsInfo> String resolveDocPrint(@NotNull T lineInfo, @NotNull PsiElement resolve) {
|
||||
String s = resolveDocRaw(lineInfo, resolve);
|
||||
@Nullable String s = resolveDocRaw(lineInfo, resolve);
|
||||
if (s == null) {
|
||||
return null;
|
||||
}
|
||||
String cutDoc = DocFilter.cutDoc(s, lineInfo.appSettings, true);
|
||||
String filterDoc = DocFilter.filterDoc(cutDoc, lineInfo.appSettings, lineInfo.projectSettings);
|
||||
@NotNull String cutDoc = DocFilter.cutDoc(s, lineInfo.appSettings, true);
|
||||
@NotNull String filterDoc = DocFilter.filterDoc(cutDoc, lineInfo.appSettings, lineInfo.projectSettings);
|
||||
if (filterDoc.trim().length() == 0) {
|
||||
return null;
|
||||
}
|
||||
@@ -185,17 +188,18 @@ public abstract class BaseLangDoc extends EditorLinePainter {
|
||||
*/
|
||||
@Nullable
|
||||
protected <T extends SettingsInfo> String resolveDocRaw(@NotNull T lineInfo, @NotNull PsiElement resolve) {
|
||||
FileViewProvider viewProvider = PsiElementTo.viewProvider(resolve);
|
||||
@Nullable FileViewProvider viewProvider = PsiElementTo.viewProvider(resolve);
|
||||
if (viewProvider == null) {
|
||||
return null;
|
||||
}
|
||||
String doc = ResolveDoc.fromLineEnd(lineInfo, resolve, viewProvider);
|
||||
@Nullable String doc = ResolveDoc.fromLineEnd(lineInfo, resolve, viewProvider);
|
||||
if (doc != null) {
|
||||
return doc;
|
||||
}
|
||||
return ResolveDoc.fromLineUp(lineInfo, resolve, viewProvider, keywords());
|
||||
}
|
||||
|
||||
@NotNull
|
||||
protected List<String> keywords() {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ public abstract class BaseTagLangDoc<DocElement> extends BaseLangDoc {
|
||||
|
||||
@Override
|
||||
public @Nullable <T extends SettingsInfo> String resolveDocPrint(@NotNull T lineInfo, @NotNull PsiElement resolve) {
|
||||
DocElement docElement = toDocElement(resolve);
|
||||
@Nullable DocElement docElement = toDocElement(resolve);
|
||||
if (docElement == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -22,12 +22,12 @@ public abstract class BaseTagLangDoc<DocElement> extends BaseLangDoc {
|
||||
return null;
|
||||
}
|
||||
// desc
|
||||
String descDoc = descDoc(lineInfo, docElement).trim();
|
||||
String desc = DocFilter.filterDoc(descDoc, lineInfo.appSettings, lineInfo.projectSettings);
|
||||
@NotNull String descDoc = descDoc(lineInfo, docElement).trim();
|
||||
@NotNull String desc = DocFilter.filterDoc(descDoc, lineInfo.appSettings, lineInfo.projectSettings);
|
||||
// tag
|
||||
StringBuilder tagStrBuilder = new StringBuilder();
|
||||
String[] names = lineInfo.tagNames();
|
||||
for (String name : names) {
|
||||
@NotNull StringBuilder tagStrBuilder = new StringBuilder();
|
||||
@NotNull String[] names = lineInfo.tagNames();
|
||||
for (@NotNull String name : names) {
|
||||
appendTag(lineInfo, tagStrBuilder, docElement, name);
|
||||
}
|
||||
if (desc.length() > 0) {
|
||||
@@ -36,7 +36,7 @@ public abstract class BaseTagLangDoc<DocElement> extends BaseLangDoc {
|
||||
}
|
||||
tagStrBuilder.insert(0, desc);
|
||||
}
|
||||
String text = tagStrBuilder.toString().trim();
|
||||
@NotNull String text = tagStrBuilder.toString().trim();
|
||||
if (text.length() == 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package io.github.linwancen.plugin.show.lang.base;
|
||||
import io.github.linwancen.plugin.show.settings.AppSettingsState;
|
||||
import io.github.linwancen.plugin.show.settings.ProjectSettingsState;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
@@ -33,10 +32,10 @@ public class DocFilter {
|
||||
*/
|
||||
@NotNull
|
||||
public static String cutDoc(String text,
|
||||
AppSettingsState appSettings, boolean deletePrefix) {
|
||||
@NotNull AppSettingsState appSettings, boolean deletePrefix) {
|
||||
String[] split = LINE_SEPARATOR_PATTERN.split(text);
|
||||
int lineCount = 0;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
@NotNull StringBuilder sb = new StringBuilder();
|
||||
for (String s : split) {
|
||||
if (deletePrefix) {
|
||||
s = DOC_PATTERN.matcher(s).replaceAll("");
|
||||
@@ -64,8 +63,8 @@ public class DocFilter {
|
||||
*/
|
||||
@NotNull
|
||||
public static String filterDoc(@NotNull String text,
|
||||
AppSettingsState appSettings,
|
||||
ProjectSettingsState projectSettings) {
|
||||
@NotNull AppSettingsState appSettings,
|
||||
@NotNull ProjectSettingsState projectSettings) {
|
||||
// docGetEffect first because default false
|
||||
if (projectSettings.docGetEffect && projectSettings.projectFilterEffective) {
|
||||
return filterDoc(text, projectSettings.docGet);
|
||||
@@ -79,7 +78,7 @@ public class DocFilter {
|
||||
@NotNull
|
||||
public static String filterDoc(@NotNull String text, @NotNull Pattern docGet) {
|
||||
// if effect skip check empty
|
||||
Matcher m = docGet.matcher(text);
|
||||
@NotNull Matcher m = docGet.matcher(text);
|
||||
if (m.find()) {
|
||||
return m.group(m.groupCount());
|
||||
}
|
||||
@@ -93,7 +92,7 @@ public class DocFilter {
|
||||
* trim end with space
|
||||
*/
|
||||
public static void addHtml(@NotNull StringBuilder sb, @NotNull String s) {
|
||||
String deleteHtml = HTML_PATTERN.matcher(s).replaceAll("").trim();
|
||||
@NotNull String deleteHtml = HTML_PATTERN.matcher(s).replaceAll("").trim();
|
||||
if (deleteHtml.length() > 0) {
|
||||
sb.append(deleteHtml).append(" ");
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package io.github.linwancen.plugin.show.lang.base;
|
||||
import io.github.linwancen.plugin.show.settings.AppSettingsState;
|
||||
import io.github.linwancen.plugin.show.settings.ProjectSettingsState;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@@ -10,7 +11,8 @@ public class DocSkip {
|
||||
|
||||
private DocSkip() {}
|
||||
|
||||
public static boolean skipSign(AppSettingsState appSettings, ProjectSettingsState projectSettings, String text) {
|
||||
public static boolean skipSign(@NotNull AppSettingsState appSettings,
|
||||
@NotNull ProjectSettingsState projectSettings, String text) {
|
||||
return skipText(text,
|
||||
projectSettings.globalFilterEffective, appSettings.lineInclude, appSettings.lineExclude,
|
||||
projectSettings.projectFilterEffective, projectSettings.lineInclude, projectSettings.lineExclude);
|
||||
@@ -18,7 +20,8 @@ public class DocSkip {
|
||||
|
||||
private static final Pattern NOT_ASCII_PATTERN = Pattern.compile("[^\u0000-\u007f]");
|
||||
|
||||
public static boolean skipDoc(AppSettingsState appSettings, ProjectSettingsState projectSettings, String text) {
|
||||
public static boolean skipDoc(@NotNull AppSettingsState appSettings,
|
||||
@NotNull ProjectSettingsState projectSettings, @NotNull String text) {
|
||||
if (appSettings.skipAscii && !NOT_ASCII_PATTERN.matcher(text).find()) {
|
||||
return true;
|
||||
}
|
||||
@@ -27,9 +30,10 @@ public class DocSkip {
|
||||
projectSettings.projectFilterEffective, projectSettings.docInclude, projectSettings.docExclude);
|
||||
}
|
||||
|
||||
static boolean skipText(String text,
|
||||
boolean appFilterEffective, Pattern appDocInclude, Pattern appDocExclude,
|
||||
boolean projectFilterEffective, Pattern projectDocInclude, Pattern projectDocExclude
|
||||
static boolean skipText(@Nullable String text,
|
||||
boolean appFilterEffective, @NotNull Pattern appDocInclude, @NotNull Pattern appDocExclude,
|
||||
boolean projectFilterEffective, @NotNull Pattern projectDocInclude,
|
||||
@NotNull Pattern projectDocExclude
|
||||
) {
|
||||
if (text == null) {
|
||||
return true;
|
||||
@@ -44,21 +48,21 @@ public class DocSkip {
|
||||
return false;
|
||||
}
|
||||
|
||||
static boolean skipText(@NotNull String text, Pattern include, Pattern exclude) {
|
||||
static boolean skipText(@NotNull String text, @NotNull Pattern include, @NotNull Pattern exclude) {
|
||||
if (exclude(text, exclude)) {
|
||||
return true;
|
||||
}
|
||||
return !include(text, include);
|
||||
}
|
||||
|
||||
static boolean include(@NotNull String text, Pattern include) {
|
||||
static boolean include(@NotNull String text, @NotNull Pattern include) {
|
||||
if (include.pattern().length() == 0) {
|
||||
return true;
|
||||
}
|
||||
return include.matcher(text).find();
|
||||
}
|
||||
|
||||
static boolean exclude(@NotNull String text, Pattern exclude) {
|
||||
static boolean exclude(@NotNull String text, @NotNull Pattern exclude) {
|
||||
if (exclude.pattern().length() == 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ public class Prev {
|
||||
|
||||
private Prev() {}
|
||||
|
||||
@Nullable
|
||||
public static PsiElement prevRefChild(@NotNull LineInfo lineInfo, @NotNull PsiElement element,
|
||||
@NotNull Class<? extends PsiElement> refClass) {
|
||||
PsiElement prevParent = element.getParent();
|
||||
@@ -22,7 +23,7 @@ public class Prev {
|
||||
if (element.getTextRange().getEndOffset() < lineInfo.startOffset) {
|
||||
return null;
|
||||
}
|
||||
PsiElement parent = refClassParent(element, refClass);
|
||||
@Nullable PsiElement parent = refClassParent(element, refClass);
|
||||
if (parent != null) {
|
||||
// skip b in a.b.c
|
||||
if (prevParent.getTextRange().getEndOffset() < lineInfo.endOffset
|
||||
@@ -42,6 +43,7 @@ public class Prev {
|
||||
"{-~" +
|
||||
"]++");
|
||||
|
||||
@Nullable
|
||||
private static PsiElement refClassParent(@NotNull PsiElement element,
|
||||
@NotNull Class<? extends PsiElement> refClass) {
|
||||
String text = element.getText();
|
||||
@@ -67,7 +69,7 @@ public class Prev {
|
||||
|
||||
public static @Nullable <T extends SettingsInfo> PsiElement prevCompactElement(
|
||||
@SuppressWarnings("unused") @NotNull T lineInfo, @NotNull PsiElement resolve, @NotNull Document document) {
|
||||
PsiElement element = PsiTreeUtil.prevVisibleLeaf(resolve);
|
||||
@Nullable PsiElement element = PsiTreeUtil.prevVisibleLeaf(resolve);
|
||||
if (element == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -79,7 +81,7 @@ public class Prev {
|
||||
} catch (Exception e) {
|
||||
return null;
|
||||
}
|
||||
String replace = spaceText.replace("\n", "");
|
||||
@NotNull String replace = spaceText.replace("\n", "");
|
||||
if (spaceText.length() - replace.length() > 1) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ public class PsiElementTo {
|
||||
|
||||
private PsiElementTo() {}
|
||||
|
||||
public static @Nullable FileViewProvider viewProvider(PsiElement resolve) {
|
||||
public static @Nullable FileViewProvider viewProvider(@NotNull PsiElement resolve) {
|
||||
PsiFile psiFile = resolve.getContainingFile();
|
||||
if (psiFile == null) {
|
||||
return null;
|
||||
@@ -26,8 +26,8 @@ public class PsiElementTo {
|
||||
}
|
||||
|
||||
public static @NotNull Language language(@NotNull PsiElement element) {
|
||||
Language lang = element.getLanguage();
|
||||
Language base = lang.getBaseLanguage();
|
||||
@NotNull Language lang = element.getLanguage();
|
||||
@Nullable Language base = lang.getBaseLanguage();
|
||||
if (base != null) {
|
||||
return base;
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ public class ResolveDoc {
|
||||
public static <T extends SettingsInfo> String fromLineEnd(@SuppressWarnings("unused") @NotNull T lineInfo,
|
||||
@NotNull PsiElement resolve,
|
||||
@NotNull FileViewProvider resolveViewProvider) {
|
||||
Document document = resolveViewProvider.getDocument();
|
||||
@Nullable Document document = resolveViewProvider.getDocument();
|
||||
if (document == null) {
|
||||
return null;
|
||||
}
|
||||
@@ -33,11 +33,11 @@ public class ResolveDoc {
|
||||
return null;
|
||||
}
|
||||
// end over will return last
|
||||
PsiElement psiElement = resolveViewProvider.findElementAt(resolveEndOffset);
|
||||
@Nullable PsiElement psiElement = resolveViewProvider.findElementAt(resolveEndOffset);
|
||||
if (psiElement == null) {
|
||||
return null;
|
||||
}
|
||||
PsiElement docElement = PsiTreeUtil.prevVisibleLeaf(psiElement);
|
||||
@Nullable PsiElement docElement = PsiTreeUtil.prevVisibleLeaf(psiElement);
|
||||
if (!(docElement instanceof PsiComment)) {
|
||||
return null;
|
||||
}
|
||||
@@ -51,14 +51,14 @@ public class ResolveDoc {
|
||||
|
||||
@Nullable
|
||||
public static <T extends SettingsInfo> String fromLineUp(@NotNull T lineInfo,
|
||||
PsiElement resolve,
|
||||
@NotNull PsiElement resolve,
|
||||
@NotNull FileViewProvider resolveViewProvider,
|
||||
@NotNull List<String> keywords) {
|
||||
Document document = resolveViewProvider.getDocument();
|
||||
@Nullable Document document = resolveViewProvider.getDocument();
|
||||
if (document == null) {
|
||||
return null;
|
||||
}
|
||||
PsiElement psiElement = Prev.prevCompactElement(lineInfo, resolve, document);
|
||||
@Nullable PsiElement psiElement = Prev.prevCompactElement(lineInfo, resolve, document);
|
||||
if (!keywords.isEmpty()) {
|
||||
while (psiElement != null) {
|
||||
String text = psiElement.getText();
|
||||
@@ -69,7 +69,7 @@ public class ResolveDoc {
|
||||
}
|
||||
}
|
||||
}
|
||||
StringBuilder sb = new StringBuilder();
|
||||
@NotNull StringBuilder sb = new StringBuilder();
|
||||
while (psiElement instanceof PsiComment) {
|
||||
String text = psiElement.getText();
|
||||
if (text != null) {
|
||||
|
||||
Reference in New Issue
Block a user