mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
sorry, *ElementTypes classes register their (stub) element types as a side effect, which is then used by stub serializer
This commit is contained in:
@@ -26,12 +26,11 @@ import com.intellij.openapi.roots.LanguageLevelProjectExtension;
|
||||
import com.intellij.pom.java.LanguageLevel;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementType;
|
||||
import com.intellij.psi.impl.source.JavaFileElementType;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.impl.source.PsiJavaFileImpl;
|
||||
import com.intellij.psi.impl.source.tree.JavaElementType;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.psi.tree.IFileElementType;
|
||||
import com.intellij.psi.tree.IStubFileElementType;
|
||||
import com.intellij.psi.tree.TokenSet;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -41,8 +40,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
*/
|
||||
public class JavaParserDefinition implements ParserDefinition {
|
||||
|
||||
public static final IStubFileElementType JAVA_FILE = new JavaFileElementType();
|
||||
|
||||
@NotNull
|
||||
public Lexer createLexer(Project project) {
|
||||
return new JavaLexer(LanguageLevelProjectExtension.getInstance(project).getLanguageLevel());
|
||||
@@ -54,7 +51,7 @@ public class JavaParserDefinition implements ParserDefinition {
|
||||
}
|
||||
|
||||
public IFileElementType getFileNodeType() {
|
||||
return JAVA_FILE;
|
||||
return JavaStubElementTypes.JAVA_FILE;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
package com.intellij.psi.impl.java.stubs;
|
||||
|
||||
import com.intellij.psi.impl.source.JavaFileElementType;
|
||||
import com.intellij.psi.tree.IStubFileElementType;
|
||||
|
||||
public class JavaStubElementTypes {
|
||||
public static final JavaClassElementType CLASS = new JavaClassElementType("CLASS");
|
||||
@@ -46,4 +47,5 @@ public class JavaStubElementTypes {
|
||||
public static final JavaImportListElementType IMPORT_LIST = new JavaImportListElementType();
|
||||
public static final JavaImportStatementElementType IMPORT_STATEMENT = new JavaImportStatementElementType("IMPORT_STATEMENT");
|
||||
public static final JavaImportStatementElementType IMPORT_STATIC_STATEMENT = new JavaImportStatementElementType("IMPORT_STATIC_STATEMENT");
|
||||
public static final IStubFileElementType JAVA_FILE = new JavaFileElementType();
|
||||
}
|
||||
@@ -19,7 +19,6 @@
|
||||
*/
|
||||
package com.intellij.psi.impl.java.stubs.impl;
|
||||
|
||||
import com.intellij.lang.java.JavaParserDefinition;
|
||||
import com.intellij.psi.PsiJavaFile;
|
||||
import com.intellij.psi.PsiClass;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
@@ -61,7 +60,7 @@ public class PsiJavaFileStubImpl extends PsiFileStubImpl<PsiJavaFile> implements
|
||||
}
|
||||
|
||||
public IStubFileElementType getType() {
|
||||
return JavaParserDefinition.JAVA_FILE;
|
||||
return JavaStubElementTypes.JAVA_FILE;
|
||||
}
|
||||
|
||||
@SuppressWarnings({"HardCodedStringLiteral"})
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package com.intellij.psi.impl.source;
|
||||
|
||||
import com.intellij.lang.java.JavaParserDefinition;
|
||||
import com.intellij.lexer.JavaLexer;
|
||||
import com.intellij.lexer.Lexer;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
@@ -27,6 +26,7 @@ import com.intellij.psi.FileViewProvider;
|
||||
import com.intellij.psi.JavaPsiFacade;
|
||||
import com.intellij.psi.PsiElementFactory;
|
||||
import com.intellij.psi.PsiPackageStatement;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.util.IncorrectOperationException;
|
||||
import com.intellij.testFramework.LightVirtualFile;
|
||||
@@ -34,7 +34,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PsiJavaFileImpl extends PsiJavaFileBaseImpl {
|
||||
public PsiJavaFileImpl(FileViewProvider file) {
|
||||
super(JavaParserDefinition.JAVA_FILE, JavaParserDefinition.JAVA_FILE, file);
|
||||
super(JavaStubElementTypes.JAVA_FILE, JavaStubElementTypes.JAVA_FILE, file);
|
||||
}
|
||||
|
||||
public String toString(){
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
package com.intellij.psi.impl.source.tree;
|
||||
|
||||
import com.intellij.lang.ASTFactory;
|
||||
import com.intellij.lang.java.JavaParserDefinition;
|
||||
import com.intellij.psi.PlainTextTokenTypes;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.impl.source.*;
|
||||
import com.intellij.psi.impl.source.javadoc.*;
|
||||
import com.intellij.psi.impl.source.tree.java.*;
|
||||
@@ -35,7 +35,7 @@ public class JavaASTFactory extends ASTFactory implements Constants {
|
||||
|
||||
@Override
|
||||
public LazyParseableElement createLazy(ILazyParseableElementType type, CharSequence text) {
|
||||
if (type == JavaParserDefinition.JAVA_FILE) {
|
||||
if (type == JavaStubElementTypes.JAVA_FILE) {
|
||||
return new JavaFileElement(text);
|
||||
}
|
||||
else if (type == PlainTextTokenTypes.PLAIN_TEXT_FILE) {
|
||||
|
||||
@@ -24,15 +24,12 @@ import com.intellij.pom.java.LanguageLevel;
|
||||
import com.intellij.psi.JavaTokenType;
|
||||
import com.intellij.psi.PsiManager;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.impl.source.JavaFileElementType;
|
||||
import com.intellij.psi.impl.source.parsing.JavaParsingContext;
|
||||
import com.intellij.psi.impl.source.parsing.Parsing;
|
||||
import com.intellij.psi.impl.source.tree.java.PsiCodeBlockImpl;
|
||||
import com.intellij.psi.text.BlockSupport;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.psi.tree.IErrorCounterReparseableElementType;
|
||||
import com.intellij.psi.tree.IFileElementType;
|
||||
import com.intellij.psi.tree.ILazyParseableElementType;
|
||||
import com.intellij.psi.tree.TokenSet;
|
||||
import com.intellij.psi.tree.*;
|
||||
import com.intellij.psi.tree.java.IJavaElementType;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.util.CharTable;
|
||||
|
||||
@@ -16,9 +16,9 @@
|
||||
package com.intellij.psi.impl.source.tree.java;
|
||||
|
||||
import com.intellij.lang.ASTNode;
|
||||
import com.intellij.lang.java.JavaParserDefinition;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.psi.PsiJavaFile;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.impl.source.Constants;
|
||||
import com.intellij.psi.impl.source.SourceTreeToPsiMap;
|
||||
import com.intellij.psi.impl.source.tree.ChildRole;
|
||||
@@ -34,7 +34,7 @@ public class JavaFileElement extends FileElement implements Constants {
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.psi.impl.source.tree.java.JavaFileElement");
|
||||
|
||||
public JavaFileElement(CharSequence text) {
|
||||
super(JavaParserDefinition.JAVA_FILE, text);
|
||||
super(JavaStubElementTypes.JAVA_FILE, text);
|
||||
}
|
||||
|
||||
public TreeElement addInternal(TreeElement first, ASTNode last, ASTNode anchor, Boolean before) {
|
||||
|
||||
Reference in New Issue
Block a user