mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-rd] IDEA-322563 fix cases when highlighting get null in parents
- rename basic token sets to BASIC_ GitOrigin-RevId: 88cb12cf1eeff34651093507ba8865778c9089f9
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e2bf8301c0
commit
6a746407f8
+2
-2
@@ -26,12 +26,12 @@ public class JavaQuoteHandler extends SimpleTokenSetQuoteHandler implements Java
|
||||
private final BasicJavaTokenSet myConcatenableStrings = BasicJavaTokenSet.create(JavaTokenType.STRING_LITERAL);
|
||||
private final BasicJavaTokenSet myAppropriateElementTypeForLiteral = BasicJavaTokenSet.orSet(
|
||||
BasicJavaTokenSet.create(JavaDocTokenType.ALL_JAVADOC_TOKENS),
|
||||
BASIC_JAVA_COMMENT_OR_WHITESPACE_BIT_SET, BASIC_TEXT_LITERALS,
|
||||
BASIC_JAVA_COMMENT_OR_WHITESPACE_BIT_SET, BasicJavaTokenSet.create(BASIC_TEXT_LITERALS),
|
||||
BasicJavaTokenSet.create(JavaTokenType.SEMICOLON, JavaTokenType.COMMA, JavaTokenType.RPARENTH, JavaTokenType.RBRACKET,
|
||||
JavaTokenType.RBRACE));
|
||||
|
||||
public JavaQuoteHandler() {
|
||||
super(BasicJavaTokenSet.orSet(BASIC_TEXT_LITERALS, BasicJavaTokenSet.create(JavaDocTokenType.DOC_TAG_VALUE_QUOTE)).toTokenSet());
|
||||
super(BasicJavaTokenSet.orSet(BasicJavaTokenSet.create(BASIC_TEXT_LITERALS), BasicJavaTokenSet.create(JavaDocTokenType.DOC_TAG_VALUE_QUOTE)).toTokenSet());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ import static com.intellij.psi.impl.source.BasicJavaDocElementType.DOC_COMMENT;
|
||||
public class CommentBreakerEnterProcessor implements ASTNodeEnterProcessor {
|
||||
|
||||
private final BasicJavaTokenSet myCommentTypes = BasicJavaTokenSet.orSet(
|
||||
BasicElementTypes.BASIC_JAVA_PLAIN_COMMENT_BIT_SET, BasicJavaTokenSet.create(DOC_COMMENT)
|
||||
BasicJavaTokenSet.create(BasicElementTypes.BASIC_JAVA_PLAIN_COMMENT_BIT_SET), BasicJavaTokenSet.create(DOC_COMMENT)
|
||||
);
|
||||
|
||||
@Override
|
||||
|
||||
+3
-3
@@ -29,9 +29,9 @@ public abstract class AbstractBasicJavaFileHighlighter extends SyntaxHighlighter
|
||||
ourMap1 = new HashMap<>();
|
||||
ourMap2 = new HashMap<>();
|
||||
|
||||
fillMap(ourMap1, BASIC_KEYWORD_BIT_SET.toTokenSet(), JavaHighlightingColors.KEYWORD);
|
||||
fillMap(ourMap1, BASIC_LITERAL_BIT_SET.toTokenSet(), JavaHighlightingColors.KEYWORD);
|
||||
fillMap(ourMap1, BASIC_OPERATION_BIT_SET.toTokenSet(), JavaHighlightingColors.OPERATION_SIGN);
|
||||
fillMap(ourMap1, BASIC_KEYWORD_BIT_SET, JavaHighlightingColors.KEYWORD);
|
||||
fillMap(ourMap1, BASIC_LITERAL_BIT_SET, JavaHighlightingColors.KEYWORD);
|
||||
fillMap(ourMap1, BASIC_OPERATION_BIT_SET, JavaHighlightingColors.OPERATION_SIGN);
|
||||
|
||||
for (IElementType type : JavaDocTokenType.ALL_JAVADOC_TOKENS.getTypes()) {
|
||||
ourMap1.put(type, JavaHighlightingColors.DOC_COMMENT);
|
||||
|
||||
+23
-13
@@ -3,16 +3,18 @@ package com.intellij.psi.impl.source;
|
||||
|
||||
import com.intellij.psi.JavaDocTokenType;
|
||||
import com.intellij.psi.JavaTokenType;
|
||||
import com.intellij.psi.tree.TokenSet;
|
||||
|
||||
public interface BasicElementTypes extends JavaTokenType, JavaDocTokenType, BasicJavaElementType, BasicJavaDocElementType {
|
||||
|
||||
BasicJavaTokenSet BASIC_JAVA_PLAIN_COMMENT_BIT_SET = BasicJavaTokenSet.create(END_OF_LINE_COMMENT, C_STYLE_COMMENT);
|
||||
TokenSet BASIC_JAVA_PLAIN_COMMENT_BIT_SET = TokenSet.create(END_OF_LINE_COMMENT, C_STYLE_COMMENT);
|
||||
BasicJavaTokenSet BASIC_JAVA_COMMENT_BIT_SET =
|
||||
BasicJavaTokenSet.orSet(BASIC_JAVA_PLAIN_COMMENT_BIT_SET, BasicJavaTokenSet.create(DOC_COMMENT));
|
||||
BasicJavaTokenSet.orSet(BasicJavaTokenSet.create(BASIC_JAVA_PLAIN_COMMENT_BIT_SET), BasicJavaTokenSet.create(DOC_COMMENT));
|
||||
BasicJavaTokenSet BASIC_JAVA_COMMENT_OR_WHITESPACE_BIT_SET =
|
||||
BasicJavaTokenSet.orSet(BasicJavaTokenSet.create(WHITE_SPACE), BASIC_JAVA_COMMENT_BIT_SET);
|
||||
|
||||
BasicJavaTokenSet BASIC_KEYWORD_BIT_SET = BasicJavaTokenSet.create(
|
||||
//token set, because it is keywords
|
||||
TokenSet BASIC_KEYWORD_BIT_SET = TokenSet.create(
|
||||
ABSTRACT_KEYWORD, ASSERT_KEYWORD, BOOLEAN_KEYWORD, BREAK_KEYWORD, BYTE_KEYWORD, CASE_KEYWORD, CATCH_KEYWORD, CHAR_KEYWORD,
|
||||
CLASS_KEYWORD, CONST_KEYWORD, CONTINUE_KEYWORD, DEFAULT_KEYWORD, DO_KEYWORD, DOUBLE_KEYWORD, ELSE_KEYWORD, ENUM_KEYWORD,
|
||||
EXTENDS_KEYWORD, FINAL_KEYWORD, FINALLY_KEYWORD, FLOAT_KEYWORD, FOR_KEYWORD, GOTO_KEYWORD, IF_KEYWORD, IMPLEMENTS_KEYWORD,
|
||||
@@ -25,9 +27,11 @@ public interface BasicElementTypes extends JavaTokenType, JavaDocTokenType, Basi
|
||||
NON_SEALED_KEYWORD, WHEN_KEYWORD
|
||||
);
|
||||
|
||||
BasicJavaTokenSet BASIC_LITERAL_BIT_SET = BasicJavaTokenSet.create(TRUE_KEYWORD, FALSE_KEYWORD, NULL_KEYWORD);
|
||||
//token set, because it is keywords
|
||||
TokenSet BASIC_LITERAL_BIT_SET = TokenSet.create(TRUE_KEYWORD, FALSE_KEYWORD, NULL_KEYWORD);
|
||||
|
||||
BasicJavaTokenSet BASIC_OPERATION_BIT_SET = BasicJavaTokenSet.create(
|
||||
//token set, because it is keywords
|
||||
TokenSet BASIC_OPERATION_BIT_SET = TokenSet.create(
|
||||
EQ, GT, LT, EXCL, TILDE, QUEST, COLON, PLUS, MINUS, ASTERISK, DIV, AND, OR, XOR,
|
||||
PERC, EQEQ, LE, GE, NE, ANDAND, OROR, PLUSPLUS, MINUSMINUS, LTLT, GTGT, GTGTGT,
|
||||
PLUSEQ, MINUSEQ, ASTERISKEQ, DIVEQ, ANDEQ, OREQ, XOREQ, PERCEQ, LTLTEQ, GTGTEQ, GTGTGTEQ);
|
||||
@@ -92,15 +96,21 @@ public interface BasicElementTypes extends JavaTokenType, JavaDocTokenType, Basi
|
||||
BasicJavaTokenSet BASIC_FULL_MEMBER_BIT_SET = BasicJavaTokenSet.orSet(BASIC_MEMBER_BIT_SET, BasicJavaTokenSet.create(
|
||||
BASIC_CLASS_INITIALIZER));
|
||||
|
||||
BasicJavaTokenSet BASIC_INTEGER_LITERALS = BasicJavaTokenSet.create(INTEGER_LITERAL, LONG_LITERAL);
|
||||
BasicJavaTokenSet BASIC_REAL_LITERALS = BasicJavaTokenSet.create(FLOAT_LITERAL, DOUBLE_LITERAL);
|
||||
BasicJavaTokenSet BASIC_STRING_LITERALS = BasicJavaTokenSet.create(STRING_LITERAL, TEXT_BLOCK_LITERAL);
|
||||
BasicJavaTokenSet BASIC_TEXT_LITERALS = BasicJavaTokenSet.create(STRING_LITERAL, TEXT_BLOCK_LITERAL, CHARACTER_LITERAL);
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_INTEGER_LITERALS = TokenSet.create(INTEGER_LITERAL, LONG_LITERAL);
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_REAL_LITERALS = TokenSet.create(FLOAT_LITERAL, DOUBLE_LITERAL);
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_STRING_LITERALS = TokenSet.create(STRING_LITERAL, TEXT_BLOCK_LITERAL);
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_TEXT_LITERALS = TokenSet.create(STRING_LITERAL, TEXT_BLOCK_LITERAL, CHARACTER_LITERAL);
|
||||
|
||||
BasicJavaTokenSet BASIC_STRING_TEMPLATE_FRAGMENTS =
|
||||
BasicJavaTokenSet.create(STRING_TEMPLATE_BEGIN, STRING_TEMPLATE_MID, STRING_TEMPLATE_END,
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_STRING_TEMPLATE_FRAGMENTS =
|
||||
TokenSet.create(STRING_TEMPLATE_BEGIN, STRING_TEMPLATE_MID, STRING_TEMPLATE_END,
|
||||
TEXT_BLOCK_TEMPLATE_BEGIN, TEXT_BLOCK_TEMPLATE_MID, TEXT_BLOCK_TEMPLATE_END);
|
||||
|
||||
BasicJavaTokenSet BASIC_ALL_LITERALS =
|
||||
BasicJavaTokenSet.orSet(BASIC_INTEGER_LITERALS, BASIC_REAL_LITERALS, BASIC_TEXT_LITERALS, BASIC_LITERAL_BIT_SET);
|
||||
//token set, because it is literals
|
||||
TokenSet BASIC_ALL_LITERALS =
|
||||
TokenSet.orSet(BASIC_INTEGER_LITERALS, BASIC_REAL_LITERALS, BASIC_TEXT_LITERALS, BASIC_LITERAL_BIT_SET);
|
||||
}
|
||||
|
||||
+3
-3
@@ -47,7 +47,7 @@ public final class BasicJavaAstTreeUtil {
|
||||
}
|
||||
if (source instanceof ParentProviderElementType) {
|
||||
Set<IElementType> parents = ((ParentProviderElementType)source).getParents();
|
||||
return ContainerUtil.exists(parents, parent -> is(parent, target));
|
||||
return ContainerUtil.exists(parents, parent -> parent != null && is(parent, target));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -85,7 +85,7 @@ public final class BasicJavaAstTreeUtil {
|
||||
}
|
||||
if (source instanceof ParentProviderElementType) {
|
||||
Set<IElementType> parents = ((ParentProviderElementType)source).getParents();
|
||||
return ContainerUtil.exists(parents, parent -> is(parent, tokenSet));
|
||||
return ContainerUtil.exists(parents, parent -> parent != null && is(parent, tokenSet));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -104,7 +104,7 @@ public final class BasicJavaAstTreeUtil {
|
||||
}
|
||||
if (source instanceof ParentProviderElementType) {
|
||||
Set<IElementType> parents = ((ParentProviderElementType)source).getParents();
|
||||
return ContainerUtil.exists(parents, parent -> is(parent, tokenSet));
|
||||
return ContainerUtil.exists(parents, parent -> parent != null && is(parent, tokenSet));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -7,15 +7,15 @@ import com.intellij.psi.impl.source.BasicElementTypes;
|
||||
import com.intellij.psi.tree.TokenSet;
|
||||
|
||||
public interface ElementType extends JavaTokenType, JavaDocTokenType, JavaElementType, JavaDocElementType {
|
||||
TokenSet JAVA_PLAIN_COMMENT_BIT_SET = BasicElementTypes.BASIC_JAVA_PLAIN_COMMENT_BIT_SET.toTokenSet();
|
||||
TokenSet JAVA_PLAIN_COMMENT_BIT_SET = BasicElementTypes.BASIC_JAVA_PLAIN_COMMENT_BIT_SET;
|
||||
TokenSet JAVA_COMMENT_BIT_SET = BasicElementTypes.BASIC_JAVA_COMMENT_BIT_SET.toTokenSet();
|
||||
TokenSet JAVA_COMMENT_OR_WHITESPACE_BIT_SET = BasicElementTypes.BASIC_JAVA_COMMENT_OR_WHITESPACE_BIT_SET.toTokenSet();
|
||||
|
||||
TokenSet KEYWORD_BIT_SET = BasicElementTypes.BASIC_KEYWORD_BIT_SET.toTokenSet();
|
||||
TokenSet KEYWORD_BIT_SET = BasicElementTypes.BASIC_KEYWORD_BIT_SET;
|
||||
|
||||
TokenSet LITERAL_BIT_SET = BasicElementTypes.BASIC_LITERAL_BIT_SET.toTokenSet();
|
||||
TokenSet LITERAL_BIT_SET = BasicElementTypes.BASIC_LITERAL_BIT_SET;
|
||||
|
||||
TokenSet OPERATION_BIT_SET = BasicElementTypes.BASIC_OPERATION_BIT_SET.toTokenSet();
|
||||
TokenSet OPERATION_BIT_SET = BasicElementTypes.BASIC_OPERATION_BIT_SET;
|
||||
|
||||
TokenSet MODIFIER_BIT_SET = BasicElementTypes.BASIC_MODIFIER_BIT_SET.toTokenSet();
|
||||
|
||||
@@ -39,12 +39,12 @@ public interface ElementType extends JavaTokenType, JavaDocTokenType, JavaElemen
|
||||
TokenSet MEMBER_BIT_SET = BasicElementTypes.BASIC_MEMBER_BIT_SET.toTokenSet();
|
||||
TokenSet FULL_MEMBER_BIT_SET = BasicElementTypes.BASIC_FULL_MEMBER_BIT_SET.toTokenSet();
|
||||
|
||||
TokenSet INTEGER_LITERALS = BasicElementTypes.BASIC_INTEGER_LITERALS.toTokenSet();
|
||||
TokenSet REAL_LITERALS = BasicElementTypes.BASIC_REAL_LITERALS.toTokenSet();
|
||||
TokenSet STRING_LITERALS = BasicElementTypes.BASIC_STRING_LITERALS.toTokenSet();
|
||||
TokenSet TEXT_LITERALS = BasicElementTypes.BASIC_TEXT_LITERALS.toTokenSet();
|
||||
TokenSet INTEGER_LITERALS = BasicElementTypes.BASIC_INTEGER_LITERALS;
|
||||
TokenSet REAL_LITERALS = BasicElementTypes.BASIC_REAL_LITERALS;
|
||||
TokenSet STRING_LITERALS = BasicElementTypes.BASIC_STRING_LITERALS;
|
||||
TokenSet TEXT_LITERALS = BasicElementTypes.BASIC_TEXT_LITERALS;
|
||||
|
||||
TokenSet STRING_TEMPLATE_FRAGMENTS = BasicElementTypes.BASIC_STRING_TEMPLATE_FRAGMENTS.toTokenSet();
|
||||
TokenSet STRING_TEMPLATE_FRAGMENTS = BasicElementTypes.BASIC_STRING_TEMPLATE_FRAGMENTS;
|
||||
|
||||
TokenSet ALL_LITERALS = BasicElementTypes.BASIC_ALL_LITERALS.toTokenSet();
|
||||
TokenSet ALL_LITERALS = BasicElementTypes.BASIC_ALL_LITERALS;
|
||||
}
|
||||
Reference in New Issue
Block a user