Skip to content
Snippets Groups Projects
Commit bf03d7c2 authored by Johannes Mey's avatar Johannes Mey
Browse files

align with master

parent 89cba244
Branches
Tags
No related merge requests found
Pipeline #9968 passed
Showing
with 73 additions and 69 deletions
import io.gitlab.arturbosch.detekt.Detekt import io.gitlab.arturbosch.detekt.Detekt
import org.jetbrains.changelog.markdownToHTML import org.jetbrains.changelog.markdownToHTML
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import org.jetbrains.grammarkit.tasks.GenerateLexer import org.jetbrains.grammarkit.tasks.GenerateLexer
import org.jetbrains.grammarkit.tasks.GenerateParser import org.jetbrains.grammarkit.tasks.GenerateParser
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
fun properties(key: String) = project.findProperty(key).toString() fun properties(key: String) = project.findProperty(key).toString()
...@@ -119,7 +119,6 @@ tasks { ...@@ -119,7 +119,6 @@ tasks {
purgeOldFiles = true purgeOldFiles = true
} }
compileJava { compileJava {
dependsOn(generateGrammarLexer) dependsOn(generateGrammarLexer)
dependsOn(generateGrammarParser) dependsOn(generateGrammarParser)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
extends="com.intellij.extapi.psi.ASTWrapperPsiElement" extends="com.intellij.extapi.psi.ASTWrapperPsiElement"
psiClassPrefix="RelAstGrammar" psiClassPrefix="Grammar"
psiImplClassSuffix="Impl" psiImplClassSuffix="Impl"
psiPackage="org.jastadd.tooling.grammar.psi" psiPackage="org.jastadd.tooling.grammar.psi"
psiImplPackage="org.jastadd.tooling.grammar.psi.impl" psiImplPackage="org.jastadd.tooling.grammar.psi.impl"
...@@ -12,10 +12,10 @@ ...@@ -12,10 +12,10 @@
elementTypeClass="org.jastadd.tooling.grammar.psi.GrammarElementType" elementTypeClass="org.jastadd.tooling.grammar.psi.GrammarElementType"
tokenTypeClass="org.jastadd.tooling.grammar.psi.GrammarTokenType" tokenTypeClass="org.jastadd.tooling.grammar.psi.GrammarTokenType"
psiImplUtilClass="org.jastadd.tooling.grammar.psi.impl.RelAstGrammarPsiImplUtil" psiImplUtilClass="org.jastadd.tooling.grammar.psi.impl.GrammarPsiImplUtil"
} }
relAstGrammarFile ::= comment* ((type_decl | relation) comment*)* GrammarFile ::= comment* ((type_decl | relation) comment*)*
comment ::= (WHITESPACE | MULTILINECOMMENT | DOCCOMMENT | SINGLELINECOMMENT) comment ::= (WHITESPACE | MULTILINECOMMENT | DOCCOMMENT | SINGLELINECOMMENT)
......
...@@ -12,8 +12,8 @@ import com.intellij.psi.TokenType; ...@@ -12,8 +12,8 @@ import com.intellij.psi.TokenType;
import com.intellij.psi.tree.IFileElementType; import com.intellij.psi.tree.IFileElementType;
import com.intellij.psi.tree.TokenSet; import com.intellij.psi.tree.TokenSet;
import org.jastadd.tooling.aspect.Aspect; import org.jastadd.tooling.aspect.Aspect;
import org.jastadd.tooling.aspect.psi.AspectFile;
import org.jastadd.tooling.aspect.lexer.AspectLexerAdapter; import org.jastadd.tooling.aspect.lexer.AspectLexerAdapter;
import org.jastadd.tooling.aspect.psi.AspectFile;
import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.AspectTypes;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
......
package org.jastadd.tooling.grammar; package org.jastadd.tooling.grammar;
public class Grammar extends com.intellij.lang.Language { import com.intellij.lang.Language;
public class Grammar extends Language {
public static final Grammar INSTANCE = new Grammar(); public static final Grammar INSTANCE = new Grammar();
......
...@@ -3,20 +3,21 @@ package org.jastadd.tooling.grammar; ...@@ -3,20 +3,21 @@ package org.jastadd.tooling.grammar;
import com.intellij.codeInspection.ProblemHighlightType; import com.intellij.codeInspection.ProblemHighlightType;
import com.intellij.lang.annotation.AnnotationHolder; import com.intellij.lang.annotation.AnnotationHolder;
import com.intellij.lang.annotation.Annotator;
import com.intellij.lang.annotation.HighlightSeverity; import com.intellij.lang.annotation.HighlightSeverity;
import com.intellij.openapi.editor.DefaultLanguageHighlighterColors; import com.intellij.openapi.editor.DefaultLanguageHighlighterColors;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jastadd.tooling.grammar.psi.RelAstGrammarComponent; import org.jastadd.tooling.grammar.psi.GrammarComponent;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeReference; import org.jastadd.tooling.grammar.psi.GrammarTypeReference;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public class GrammarAnnotator implements com.intellij.lang.annotation.Annotator { public class GrammarAnnotator implements Annotator {
@Override @Override
public void annotate(@NotNull final PsiElement element, @NotNull AnnotationHolder holder) { public void annotate(@NotNull final PsiElement element, @NotNull AnnotationHolder holder) {
if (element instanceof RelAstGrammarComponent) { if (element instanceof GrammarComponent) {
RelAstGrammarComponent component = (RelAstGrammarComponent) element; GrammarComponent component = (GrammarComponent) element;
if (component.getTypeReference() != null && component.getDeclaredName() != null) { if (component.getTypeReference() != null && component.getDeclaredName() != null) {
String name = component.getDeclaredName().getText(); String name = component.getDeclaredName().getText();
if (name != null && !name.equals("") && name.equals(component.getTypeReference().getName())) { if (name != null && !name.equals("") && name.equals(component.getTypeReference().getName())) {
...@@ -29,8 +30,8 @@ public class GrammarAnnotator implements com.intellij.lang.annotation.Annotator ...@@ -29,8 +30,8 @@ public class GrammarAnnotator implements com.intellij.lang.annotation.Annotator
.create(); .create();
} }
} }
} else if (element instanceof RelAstGrammarTypeReference) { } else if (element instanceof GrammarTypeReference) {
RelAstGrammarTypeReference reference = (RelAstGrammarTypeReference) element; GrammarTypeReference reference = (GrammarTypeReference) element;
if (GrammarUtil.findTypeDecl(element.getProject(), reference.getName()).isEmpty()) { if (GrammarUtil.findTypeDecl(element.getProject(), reference.getName()).isEmpty()) {
holder.newAnnotation(HighlightSeverity.ERROR, "Undefined reference") holder.newAnnotation(HighlightSeverity.ERROR, "Undefined reference")
.range(element.getTextRange()) .range(element.getTextRange())
......
...@@ -22,12 +22,12 @@ public class GrammarBlock extends AbstractBlock { ...@@ -22,12 +22,12 @@ public class GrammarBlock extends AbstractBlock {
} }
@Override @Override
protected List<com.intellij.formatting.Block> buildChildren() { protected List<Block> buildChildren() {
List<com.intellij.formatting.Block> blocks = new ArrayList<>(); List<Block> blocks = new ArrayList<>();
ASTNode child = myNode.getFirstChildNode(); ASTNode child = myNode.getFirstChildNode();
while (child != null) { while (child != null) {
if (child.getElementType() != TokenType.WHITE_SPACE) { if (child.getElementType() != TokenType.WHITE_SPACE) {
com.intellij.formatting.Block block = new GrammarBlock(child, Wrap.createWrap(WrapType.NONE, false), Alignment.createAlignment(), Block block = new GrammarBlock(child, Wrap.createWrap(WrapType.NONE, false), Alignment.createAlignment(),
spacingBuilder); spacingBuilder);
blocks.add(block); blocks.add(block);
} }
...@@ -43,7 +43,7 @@ public class GrammarBlock extends AbstractBlock { ...@@ -43,7 +43,7 @@ public class GrammarBlock extends AbstractBlock {
@Nullable @Nullable
@Override @Override
public Spacing getSpacing(@Nullable com.intellij.formatting.Block child1, @NotNull com.intellij.formatting.Block child2) { public Spacing getSpacing(@Nullable Block child1, @NotNull Block child2) {
return spacingBuilder.getSpacing(this, child1, child2); return spacingBuilder.getSpacing(this, child1, child2);
} }
......
package org.jastadd.tooling.grammar; package org.jastadd.tooling.grammar;
import com.intellij.navigation.ChooseByNameContributor;
import com.intellij.navigation.NavigationItem; import com.intellij.navigation.NavigationItem;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl; import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
public class GrammarChooseByNameContributor implements com.intellij.navigation.ChooseByNameContributor { public class GrammarChooseByNameContributor implements ChooseByNameContributor {
@NotNull @NotNull
@Override @Override
public String @NotNull [] getNames(Project project, boolean includeNonProjectItems) { public String @NotNull [] getNames(Project project, boolean includeNonProjectItems) {
List<RelAstGrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project); List<GrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project);
List<String> names = new ArrayList<>(typeDecls.size()); List<String> names = new ArrayList<>(typeDecls.size());
for (RelAstGrammarTypeDecl typeDecl : typeDecls) { for (GrammarTypeDecl typeDecl : typeDecls) {
if (typeDecl.getName() != null && typeDecl.getName().length() > 0) { if (typeDecl.getName() != null && typeDecl.getName().length() > 0) {
names.add(typeDecl.getName()); names.add(typeDecl.getName());
} }
...@@ -27,7 +28,7 @@ public class GrammarChooseByNameContributor implements com.intellij.navigation.C ...@@ -27,7 +28,7 @@ public class GrammarChooseByNameContributor implements com.intellij.navigation.C
@Override @Override
public NavigationItem @NotNull [] getItemsByName(String name, String pattern, Project project, boolean includeNonProjectItems) { public NavigationItem @NotNull [] getItemsByName(String name, String pattern, Project project, boolean includeNonProjectItems) {
// TODO: include non project items // TODO: include non project items
List<RelAstGrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project, name); List<GrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project, name);
return typeDecls.toArray(new NavigationItem[0]); return typeDecls.toArray(new NavigationItem[0]);
} }
......
...@@ -6,7 +6,7 @@ import com.intellij.psi.codeStyle.CodeStyleSettings; ...@@ -6,7 +6,7 @@ import com.intellij.psi.codeStyle.CodeStyleSettings;
public class GrammarCodeStyleSettings extends CustomCodeStyleSettings { public class GrammarCodeStyleSettings extends CustomCodeStyleSettings {
public GrammarCodeStyleSettings(CodeStyleSettings settings) { public GrammarCodeStyleSettings(CodeStyleSettings settings) {
super("RelAstGrammarCodeStyleSettings", settings); super("GrammarCodeStyleSettings", settings);
} }
} }
...@@ -4,11 +4,11 @@ import com.intellij.codeInsight.completion.*; ...@@ -4,11 +4,11 @@ import com.intellij.codeInsight.completion.*;
import com.intellij.codeInsight.lookup.LookupElementBuilder; import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.patterns.PlatformPatterns; import com.intellij.patterns.PlatformPatterns;
import com.intellij.util.ProcessingContext; import com.intellij.util.ProcessingContext;
import org.jastadd.tooling.util.JastAddIcons;
import org.jastadd.tooling.grammar.parser.GrammarTypes; import org.jastadd.tooling.grammar.parser.GrammarTypes;
import org.jastadd.tooling.grammar.psi.GrammarElementFactory; import org.jastadd.tooling.grammar.psi.GrammarElementFactory;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl; import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeReference; import org.jastadd.tooling.grammar.psi.GrammarTypeReference;
import org.jastadd.tooling.util.JastAddIcons;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public class GrammarCompletionContributor extends CompletionContributor { public class GrammarCompletionContributor extends CompletionContributor {
...@@ -23,8 +23,8 @@ public class GrammarCompletionContributor extends CompletionContributor { ...@@ -23,8 +23,8 @@ public class GrammarCompletionContributor extends CompletionContributor {
public void addCompletions(@NotNull CompletionParameters parameters, public void addCompletions(@NotNull CompletionParameters parameters,
@NotNull ProcessingContext context, @NotNull ProcessingContext context,
@NotNull CompletionResultSet resultSet) { @NotNull CompletionResultSet resultSet) {
for (RelAstGrammarTypeDecl decl : GrammarUtil.findTypeDecl(parameters.getPosition().getProject())) { for (GrammarTypeDecl decl : GrammarUtil.findTypeDecl(parameters.getPosition().getProject())) {
RelAstGrammarTypeReference ref = GrammarElementFactory.createTypeReference(parameters.getPosition().getProject(), decl.getName()); GrammarTypeReference ref = GrammarElementFactory.createTypeReference(parameters.getPosition().getProject(), decl.getName());
resultSet.addElement(LookupElementBuilder.create(ref).withIcon(JastAddIcons.FILE).withTypeText(decl.getContainingFile().getName())); resultSet.addElement(LookupElementBuilder.create(ref).withIcon(JastAddIcons.FILE).withTypeText(decl.getContainingFile().getName()));
} }
} }
......
...@@ -7,7 +7,7 @@ import com.intellij.psi.PsiElement; ...@@ -7,7 +7,7 @@ import com.intellij.psi.PsiElement;
import com.intellij.psi.tree.TokenSet; import com.intellij.psi.tree.TokenSet;
import org.jastadd.tooling.grammar.lexer.GrammarLexerAdapter; import org.jastadd.tooling.grammar.lexer.GrammarLexerAdapter;
import org.jastadd.tooling.grammar.parser.GrammarTypes; import org.jastadd.tooling.grammar.parser.GrammarTypes;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl; import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
...@@ -25,7 +25,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider { ...@@ -25,7 +25,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider {
@Override @Override
public boolean canFindUsagesFor(@NotNull PsiElement psiElement) { public boolean canFindUsagesFor(@NotNull PsiElement psiElement) {
return psiElement instanceof RelAstGrammarTypeDecl; // was: PsiNamedElement return psiElement instanceof GrammarTypeDecl; // was: PsiNamedElement
} }
@Nullable @Nullable
...@@ -37,7 +37,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider { ...@@ -37,7 +37,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider {
@NotNull @NotNull
@Override @Override
public String getType(@NotNull PsiElement element) { public String getType(@NotNull PsiElement element) {
if (element instanceof RelAstGrammarTypeDecl) { if (element instanceof GrammarTypeDecl) {
return "JastAdd Nonterminal Type"; return "JastAdd Nonterminal Type";
} else { } else {
return ""; return "";
...@@ -47,8 +47,8 @@ public class GrammarFindUsageProvider implements FindUsagesProvider { ...@@ -47,8 +47,8 @@ public class GrammarFindUsageProvider implements FindUsagesProvider {
@NotNull @NotNull
@Override @Override
public String getDescriptiveName(@NotNull PsiElement element) { public String getDescriptiveName(@NotNull PsiElement element) {
if (element instanceof RelAstGrammarTypeDecl) { if (element instanceof GrammarTypeDecl) {
RelAstGrammarTypeDecl decl = (RelAstGrammarTypeDecl) element; GrammarTypeDecl decl = (GrammarTypeDecl) element;
if (decl.getName() != null) { if (decl.getName() != null) {
return decl.getName(); return decl.getName();
} }
...@@ -59,7 +59,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider { ...@@ -59,7 +59,7 @@ public class GrammarFindUsageProvider implements FindUsagesProvider {
@NotNull @NotNull
@Override @Override
public String getNodeText(@NotNull PsiElement element, boolean useFullName) { public String getNodeText(@NotNull PsiElement element, boolean useFullName) {
if (element instanceof RelAstGrammarTypeDecl) { if (element instanceof GrammarTypeDecl) {
return element.getText(); return element.getText();
} else { } else {
return ""; return "";
......
package org.jastadd.tooling.grammar; package org.jastadd.tooling.grammar;
import com.intellij.lang.Language;
import com.intellij.psi.codeStyle.CodeStyleSettingsCustomizable; import com.intellij.psi.codeStyle.CodeStyleSettingsCustomizable;
import com.intellij.psi.codeStyle.LanguageCodeStyleSettingsProvider; import com.intellij.psi.codeStyle.LanguageCodeStyleSettingsProvider;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
...@@ -8,7 +9,7 @@ public class GrammarLanguageCodeStyleSettingsProvider extends LanguageCodeStyleS ...@@ -8,7 +9,7 @@ public class GrammarLanguageCodeStyleSettingsProvider extends LanguageCodeStyleS
@NotNull @NotNull
@Override @Override
public com.intellij.lang.Language getLanguage() { public Language getLanguage() {
return Grammar.INSTANCE; return Grammar.INSTANCE;
} }
......
...@@ -6,8 +6,8 @@ import com.intellij.codeInsight.navigation.NavigationGutterIconBuilder; ...@@ -6,8 +6,8 @@ import com.intellij.codeInsight.navigation.NavigationGutterIconBuilder;
import com.intellij.psi.PsiClass; import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiIdentifier; import com.intellij.psi.PsiIdentifier;
import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jastadd.tooling.util.JastAddIcons; import org.jastadd.tooling.util.JastAddIcons;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.Collection; import java.util.Collection;
...@@ -33,7 +33,7 @@ public class GrammarLineMarkerProvider extends RelatedItemLineMarkerProvider { ...@@ -33,7 +33,7 @@ public class GrammarLineMarkerProvider extends RelatedItemLineMarkerProvider {
} }
// Get the list of typeDecls for given key // Get the list of typeDecls for given key
List<RelAstGrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(element.getProject(), classOptional.get().getName()); List<GrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(element.getProject(), classOptional.get().getName());
if (!typeDecls.isEmpty()) { if (!typeDecls.isEmpty()) {
NavigationGutterIconBuilder<PsiElement> builder = NavigationGutterIconBuilder<PsiElement> builder =
NavigationGutterIconBuilder.create(JastAddIcons.FILE) NavigationGutterIconBuilder.create(JastAddIcons.FILE)
......
...@@ -3,8 +3,8 @@ package org.jastadd.tooling.grammar; ...@@ -3,8 +3,8 @@ package org.jastadd.tooling.grammar;
import com.intellij.lang.refactoring.RefactoringSupportProvider; import com.intellij.lang.refactoring.RefactoringSupportProvider;
import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElement;
import org.jastadd.tooling.grammar.psi.RelAstGrammarDeclaredName; import org.jastadd.tooling.grammar.psi.GrammarDeclaredName;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeReference; import org.jastadd.tooling.grammar.psi.GrammarTypeReference;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
...@@ -14,7 +14,7 @@ public class GrammarRefactoringSupportProvider extends RefactoringSupportProvide ...@@ -14,7 +14,7 @@ public class GrammarRefactoringSupportProvider extends RefactoringSupportProvide
public boolean isMemberInplaceRenameAvailable(@NotNull PsiElement elementToRename, @Nullable PsiElement context) { public boolean isMemberInplaceRenameAvailable(@NotNull PsiElement elementToRename, @Nullable PsiElement context) {
// in-place rename is still not available since not all requirements are met // in-place rename is still not available since not all requirements are met
// see https://intellij-support.jetbrains.com/hc/en-us/community/posts/360006918740-How-do-I-enable-in-place-rename-Renaming-via-dialog-works-fine- // see https://intellij-support.jetbrains.com/hc/en-us/community/posts/360006918740-How-do-I-enable-in-place-rename-Renaming-via-dialog-works-fine-
return (elementToRename instanceof RelAstGrammarDeclaredName) || (elementToRename instanceof RelAstGrammarTypeReference); return (elementToRename instanceof GrammarDeclaredName) || (elementToRename instanceof GrammarTypeReference);
} }
} }
...@@ -5,8 +5,8 @@ import com.intellij.codeInsight.lookup.LookupElementBuilder; ...@@ -5,8 +5,8 @@ import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.TextRange; import com.intellij.openapi.util.TextRange;
import com.intellij.psi.*; import com.intellij.psi.*;
import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jastadd.tooling.util.JastAddIcons; import org.jastadd.tooling.util.JastAddIcons;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
...@@ -26,9 +26,9 @@ public class GrammarReference extends PsiReferenceBase<PsiElement> implements Ps ...@@ -26,9 +26,9 @@ public class GrammarReference extends PsiReferenceBase<PsiElement> implements Ps
@Override @Override
public ResolveResult @NotNull [] multiResolve(boolean incompleteCode) { public ResolveResult @NotNull [] multiResolve(boolean incompleteCode) {
Project project = myElement.getProject(); Project project = myElement.getProject();
final List<RelAstGrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project, key); final List<GrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project, key);
List<ResolveResult> results = new ArrayList<>(); List<ResolveResult> results = new ArrayList<>();
for (RelAstGrammarTypeDecl typeDecl : typeDecls) { for (GrammarTypeDecl typeDecl : typeDecls) {
results.add(new PsiElementResolveResult(typeDecl)); results.add(new PsiElementResolveResult(typeDecl));
} }
return results.toArray(new ResolveResult[0]); return results.toArray(new ResolveResult[0]);
...@@ -45,9 +45,9 @@ public class GrammarReference extends PsiReferenceBase<PsiElement> implements Ps ...@@ -45,9 +45,9 @@ public class GrammarReference extends PsiReferenceBase<PsiElement> implements Ps
@Override @Override
public Object @NotNull [] getVariants() { public Object @NotNull [] getVariants() {
Project project = myElement.getProject(); Project project = myElement.getProject();
List<RelAstGrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project); List<GrammarTypeDecl> typeDecls = GrammarUtil.findTypeDecl(project);
List<LookupElement> variants = new ArrayList<>(); List<LookupElement> variants = new ArrayList<>();
for (final RelAstGrammarTypeDecl typeDecl : typeDecls) { for (final GrammarTypeDecl typeDecl : typeDecls) {
if (typeDecl.getName() != null && typeDecl.getName().length() > 0) { if (typeDecl.getName() != null && typeDecl.getName().length() > 0) {
variants.add(LookupElementBuilder variants.add(LookupElementBuilder
.create(typeDecl).withIcon(JastAddIcons.FILE) .create(typeDecl).withIcon(JastAddIcons.FILE)
......
...@@ -4,21 +4,21 @@ import com.intellij.openapi.util.TextRange; ...@@ -4,21 +4,21 @@ import com.intellij.openapi.util.TextRange;
import com.intellij.patterns.PlatformPatterns; import com.intellij.patterns.PlatformPatterns;
import com.intellij.psi.*; import com.intellij.psi.*;
import com.intellij.util.ProcessingContext; import com.intellij.util.ProcessingContext;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeReference; import org.jastadd.tooling.grammar.psi.GrammarTypeReference;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public class GrammarReferenceContributor extends PsiReferenceContributor { public class GrammarReferenceContributor extends PsiReferenceContributor {
@Override @Override
public void registerReferenceProviders(@NotNull PsiReferenceRegistrar registrar) { public void registerReferenceProviders(@NotNull PsiReferenceRegistrar registrar) {
registrar.registerReferenceProvider(PlatformPatterns.psiElement(RelAstGrammarTypeReference.class), registrar.registerReferenceProvider(PlatformPatterns.psiElement(GrammarTypeReference.class),
new PsiReferenceProvider() { new PsiReferenceProvider() {
@NotNull @NotNull
@Override @Override
public PsiReference @NotNull [] getReferencesByElement(@NotNull PsiElement element, public PsiReference @NotNull [] getReferencesByElement(@NotNull PsiElement element,
@NotNull ProcessingContext context) { @NotNull ProcessingContext context) {
RelAstGrammarTypeReference typeReference = (RelAstGrammarTypeReference) element; GrammarTypeReference typeReference = (GrammarTypeReference) element;
String value = typeReference.getText(); String value = typeReference.getText();
if (value != null) { if (value != null) {
TextRange range = new TextRange(0, value.length()); TextRange range = new TextRange(0, value.length());
......
...@@ -7,14 +7,14 @@ import com.intellij.psi.PsiElement; ...@@ -7,14 +7,14 @@ import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile; import com.intellij.psi.PsiFile;
import com.intellij.util.IncorrectOperationException; import com.intellij.util.IncorrectOperationException;
import org.jastadd.tooling.grammar.parser.GrammarTypes; import org.jastadd.tooling.grammar.parser.GrammarTypes;
import org.jastadd.tooling.grammar.psi.RelAstGrammarComponent; import org.jastadd.tooling.grammar.psi.GrammarComponent;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public class GrammarRemoveRedundantComponentNameFix extends BaseIntentionAction { public class GrammarRemoveRedundantComponentNameFix extends BaseIntentionAction {
private final RelAstGrammarComponent component; private final GrammarComponent component;
public GrammarRemoveRedundantComponentNameFix(RelAstGrammarComponent component) { public GrammarRemoveRedundantComponentNameFix(GrammarComponent component) {
this.component = component; this.component = component;
} }
......
...@@ -8,8 +8,8 @@ import com.intellij.navigation.ItemPresentation; ...@@ -8,8 +8,8 @@ import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.NavigatablePsiElement; import com.intellij.psi.NavigatablePsiElement;
import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiTreeUtil;
import org.jastadd.tooling.grammar.psi.GrammarFile; import org.jastadd.tooling.grammar.psi.GrammarFile;
import org.jastadd.tooling.grammar.psi.RelAstGrammarTypeDecl; import org.jastadd.tooling.grammar.psi.GrammarTypeDecl;
import org.jastadd.tooling.grammar.psi.impl.RelAstGrammarTypeDeclImpl; import org.jastadd.tooling.grammar.psi.impl.GrammarTypeDeclImpl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -61,10 +61,10 @@ public class GrammarStructureViewElement implements StructureViewTreeElement, So ...@@ -61,10 +61,10 @@ public class GrammarStructureViewElement implements StructureViewTreeElement, So
@Override @Override
public TreeElement @NotNull [] getChildren() { public TreeElement @NotNull [] getChildren() {
if (myElement instanceof GrammarFile) { if (myElement instanceof GrammarFile) {
List<RelAstGrammarTypeDecl> properties = PsiTreeUtil.getChildrenOfTypeAsList(myElement, RelAstGrammarTypeDecl.class); List<GrammarTypeDecl> properties = PsiTreeUtil.getChildrenOfTypeAsList(myElement, GrammarTypeDecl.class);
List<TreeElement> treeElements = new ArrayList<>(properties.size()); List<TreeElement> treeElements = new ArrayList<>(properties.size());
for (RelAstGrammarTypeDecl property : properties) { for (GrammarTypeDecl property : properties) {
treeElements.add(new GrammarStructureViewElement((RelAstGrammarTypeDeclImpl) property)); treeElements.add(new GrammarStructureViewElement((GrammarTypeDeclImpl) property));
} }
return treeElements.toArray(new TreeElement[0]); return treeElements.toArray(new TreeElement[0]);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment