From 703f8a95c1cc0532fc0148df5c3f3105f76e0637 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Thu, 2 Dec 2021 01:05:49 +0100 Subject: [PATCH] move common code into common package --- src/main/grammar/Aspect.bnf | 6 +++--- src/main/grammar/Grammar.bnf | 6 +++--- .../tooling/aspect/psi/JastAddAspectAttribute.java | 4 ++-- .../impl/JastAddAspectAspectDeclarationImplExtension.java | 8 +++----- ...dAspectAspectInhAttributeDeclarationImplExtension.java | 7 ++----- ...dAspectAspectSynAttributeDeclarationImplExtension.java | 6 ++---- .../psi/impl/JastAddAspectAstTypeNameImplExtension.java | 6 +++--- .../JastAddAspectClassOrInterfaceTypeImplExtension.java | 6 +++--- .../JastAddAspectCollectionAttributeImplExtension.java | 4 ++-- .../java/org/jastadd/tooling/common/psi/NamedElement.java | 7 +++++++ .../psi/impl/NamedElementImpl.java} | 8 ++++---- .../jastadd/tooling/grammar/psi/GrammarNamedElement.java | 7 ------- .../psi/impl/GrammarComponentNameImplExtension.java | 5 +++-- .../grammar/psi/impl/GrammarTypeDeclImplExtension.java | 5 +++-- .../grammar/psi/impl/GrammarTypeNameImplExtension.java | 5 +++-- 15 files changed, 43 insertions(+), 47 deletions(-) create mode 100644 src/main/java/org/jastadd/tooling/common/psi/NamedElement.java rename src/main/java/org/jastadd/tooling/{grammar/psi/impl/GrammarNamedElementImpl.java => common/psi/impl/NamedElementImpl.java} (79%) delete mode 100644 src/main/java/org/jastadd/tooling/grammar/psi/GrammarNamedElement.java diff --git a/src/main/grammar/Aspect.bnf b/src/main/grammar/Aspect.bnf index 65e0e18..e8bdb09 100644 --- a/src/main/grammar/Aspect.bnf +++ b/src/main/grammar/Aspect.bnf @@ -37,7 +37,7 @@ type_declaration ::= SEMICOLON | (modifiers ( class_declaration | interface_decl aspect_declaration ::= ASPECT aspect_name aspect_body { extends="org.jastadd.tooling.aspect.psi.impl.JastAddAspectAspectDeclarationImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } aspect_body ::= LBRACE aspect_body_declaration* RBRACE @@ -221,7 +221,7 @@ reference_type ::= ( primitive_type (LBRACKET RBRACKET)+ ) | ( class_or_interfac class_or_interface_type ::= java_identifier type_arguments? (DOT java_identifier type_arguments? )* { extends="org.jastadd.tooling.aspect.psi.impl.JastAddAspectClassOrInterfaceTypeImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } type_arguments ::= LT (type_argument (COMMA type_argument)* )? GT @@ -397,7 +397,7 @@ attribute_name ::= IDENTIFIER ast_type_name ::= IDENTIFIER { extends="org.jastadd.tooling.aspect.psi.impl.JastAddAspectAstTypeNameImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } aspect_name ::= IDENTIFIER diff --git a/src/main/grammar/Grammar.bnf b/src/main/grammar/Grammar.bnf index df4ab34..34db53b 100644 --- a/src/main/grammar/Grammar.bnf +++ b/src/main/grammar/Grammar.bnf @@ -22,7 +22,7 @@ comment ::= (WHITESPACE | MULTILINECOMMENT | DOCCOMMENT | SINGLELINECOMMENT) type_decl ::= ABSTRACT? type_name (COL type_name)? (ASSIGN (component | nta_component)*)? SCOL { extends="org.jastadd.tooling.grammar.psi.impl.GrammarTypeDeclImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } nta_component ::= SLASH component SLASH @@ -47,13 +47,13 @@ navigable_role ::= type_name DOT component_name (STAR | QUESTION_MARK)? type_name ::= ID { extends="org.jastadd.tooling.grammar.psi.impl.GrammarTypeNameImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } component_name ::= ID { extends="org.jastadd.tooling.grammar.psi.impl.GrammarComponentNameImplExtension" - implements="org.jastadd.tooling.grammar.psi.GrammarNamedElement" + implements="org.jastadd.tooling.common.psi.NamedElement" } diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/JastAddAspectAttribute.java b/src/main/java/org/jastadd/tooling/aspect/psi/JastAddAspectAttribute.java index 9611195..c2fd746 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/JastAddAspectAttribute.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/JastAddAspectAttribute.java @@ -1,9 +1,9 @@ package org.jastadd.tooling.aspect.psi; import com.intellij.psi.PsiElement; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; +import org.jastadd.tooling.common.psi.NamedElement; -public interface JastAddAspectAttribute extends PsiElement, GrammarNamedElement { +public interface JastAddAspectAttribute extends PsiElement, NamedElement { String signature(); diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectDeclarationImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectDeclarationImplExtension.java index bac6dcc..337ad11 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectDeclarationImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectDeclarationImplExtension.java @@ -2,21 +2,19 @@ package org.jastadd.tooling.aspect.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.navigation.ItemPresentation; -import com.intellij.openapi.editor.Document; -import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.psi.PsiElement; import org.jastadd.tooling.aspect.psi.AspectElementFactory; import org.jastadd.tooling.aspect.psi.JastAddAspectAspectDeclaration; import org.jastadd.tooling.aspect.psi.JastAddAspectAspectName; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.NamedElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.util.JastAddIcons; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; -public class JastAddAspectAspectDeclarationImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class JastAddAspectAspectDeclarationImplExtension extends NamedElementImpl implements NamedElement { public JastAddAspectAspectDeclarationImplExtension(@NotNull ASTNode node) { super(node); diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectInhAttributeDeclarationImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectInhAttributeDeclarationImplExtension.java index 91838ec..5851ca2 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectInhAttributeDeclarationImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectInhAttributeDeclarationImplExtension.java @@ -2,16 +2,13 @@ package org.jastadd.tooling.aspect.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.navigation.ItemPresentation; -import com.intellij.openapi.editor.Document; -import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.openapi.util.NlsSafe; import com.intellij.psi.PsiElement; import com.intellij.util.IncorrectOperationException; import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.JastAddAspectAspectInhAttributeDeclaration; -import org.jastadd.tooling.aspect.psi.JastAddAspectAspectSynAttributeDeclaration; import org.jastadd.tooling.aspect.psi.JastAddAspectAttribute; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.util.JastAddIcons; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -19,7 +16,7 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.util.stream.Collectors; -public abstract class JastAddAspectAspectInhAttributeDeclarationImplExtension extends GrammarNamedElementImpl implements JastAddAspectAttribute { +public abstract class JastAddAspectAspectInhAttributeDeclarationImplExtension extends NamedElementImpl implements JastAddAspectAttribute { public JastAddAspectAspectInhAttributeDeclarationImplExtension(@NotNull ASTNode node) { super(node); } diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectSynAttributeDeclarationImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectSynAttributeDeclarationImplExtension.java index ecb2e41..ffa93a2 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectSynAttributeDeclarationImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAspectSynAttributeDeclarationImplExtension.java @@ -2,15 +2,13 @@ package org.jastadd.tooling.aspect.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.navigation.ItemPresentation; -import com.intellij.openapi.editor.Document; -import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.openapi.util.NlsSafe; import com.intellij.psi.PsiElement; import com.intellij.util.IncorrectOperationException; import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.JastAddAspectAspectSynAttributeDeclaration; import org.jastadd.tooling.aspect.psi.JastAddAspectAttribute; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.util.JastAddIcons; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -18,7 +16,7 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.util.stream.Collectors; -public abstract class JastAddAspectAspectSynAttributeDeclarationImplExtension extends GrammarNamedElementImpl implements JastAddAspectAttribute { +public abstract class JastAddAspectAspectSynAttributeDeclarationImplExtension extends NamedElementImpl implements JastAddAspectAttribute { public JastAddAspectAspectSynAttributeDeclarationImplExtension(@NotNull ASTNode node) { super(node); } diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAstTypeNameImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAstTypeNameImplExtension.java index 50be78d..4f7fa54 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAstTypeNameImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectAstTypeNameImplExtension.java @@ -5,11 +5,11 @@ import com.intellij.psi.PsiElement; import org.jastadd.tooling.aspect.psi.AspectElementFactory; import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.JastAddAspectAstTypeName; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.NamedElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jetbrains.annotations.NotNull; -public class JastAddAspectAstTypeNameImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class JastAddAspectAstTypeNameImplExtension extends NamedElementImpl implements NamedElement { public JastAddAspectAstTypeNameImplExtension(@NotNull ASTNode node) { super(node); diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectClassOrInterfaceTypeImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectClassOrInterfaceTypeImplExtension.java index c483eff..e702693 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectClassOrInterfaceTypeImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectClassOrInterfaceTypeImplExtension.java @@ -5,11 +5,11 @@ import com.intellij.psi.PsiElement; import org.jastadd.tooling.aspect.psi.AspectElementFactory; import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.JastAddAspectClassOrInterfaceType; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.NamedElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jetbrains.annotations.NotNull; -public class JastAddAspectClassOrInterfaceTypeImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class JastAddAspectClassOrInterfaceTypeImplExtension extends NamedElementImpl implements NamedElement { public JastAddAspectClassOrInterfaceTypeImplExtension(@NotNull ASTNode node) { super(node); diff --git a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectCollectionAttributeImplExtension.java b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectCollectionAttributeImplExtension.java index 7fde5d3..d38d827 100644 --- a/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectCollectionAttributeImplExtension.java +++ b/src/main/java/org/jastadd/tooling/aspect/psi/impl/JastAddAspectCollectionAttributeImplExtension.java @@ -8,14 +8,14 @@ import com.intellij.util.IncorrectOperationException; import org.jastadd.tooling.aspect.psi.AspectTypes; import org.jastadd.tooling.aspect.psi.JastAddAspectAttribute; import org.jastadd.tooling.aspect.psi.JastAddAspectCollectionAttribute; -import org.jastadd.tooling.grammar.psi.impl.GrammarNamedElementImpl; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.util.JastAddIcons; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; -public abstract class JastAddAspectCollectionAttributeImplExtension extends GrammarNamedElementImpl implements JastAddAspectAttribute { +public abstract class JastAddAspectCollectionAttributeImplExtension extends NamedElementImpl implements JastAddAspectAttribute { public JastAddAspectCollectionAttributeImplExtension(@NotNull ASTNode node) { super(node); } diff --git a/src/main/java/org/jastadd/tooling/common/psi/NamedElement.java b/src/main/java/org/jastadd/tooling/common/psi/NamedElement.java new file mode 100644 index 0000000..0444f8a --- /dev/null +++ b/src/main/java/org/jastadd/tooling/common/psi/NamedElement.java @@ -0,0 +1,7 @@ +package org.jastadd.tooling.common.psi; + +import com.intellij.psi.PsiNameIdentifierOwner; + +public interface NamedElement extends PsiNameIdentifierOwner { + +} diff --git a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarNamedElementImpl.java b/src/main/java/org/jastadd/tooling/common/psi/impl/NamedElementImpl.java similarity index 79% rename from src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarNamedElementImpl.java rename to src/main/java/org/jastadd/tooling/common/psi/impl/NamedElementImpl.java index 9177854..56b1da5 100644 --- a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarNamedElementImpl.java +++ b/src/main/java/org/jastadd/tooling/common/psi/impl/NamedElementImpl.java @@ -1,20 +1,20 @@ -package org.jastadd.tooling.grammar.psi.impl; +package org.jastadd.tooling.common.psi.impl; import com.intellij.extapi.psi.ASTWrapperPsiElement; import com.intellij.lang.ASTNode; import com.intellij.navigation.ItemPresentation; import com.intellij.psi.PsiReference; import com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistry; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; +import org.jastadd.tooling.common.psi.NamedElement; import org.jastadd.tooling.util.JastAddIcons; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; -public abstract class GrammarNamedElementImpl extends ASTWrapperPsiElement implements GrammarNamedElement { +public abstract class NamedElementImpl extends ASTWrapperPsiElement implements NamedElement { - protected GrammarNamedElementImpl(@NotNull ASTNode node) { + protected NamedElementImpl(@NotNull ASTNode node) { super(node); } diff --git a/src/main/java/org/jastadd/tooling/grammar/psi/GrammarNamedElement.java b/src/main/java/org/jastadd/tooling/grammar/psi/GrammarNamedElement.java deleted file mode 100644 index 69b6fe7..0000000 --- a/src/main/java/org/jastadd/tooling/grammar/psi/GrammarNamedElement.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.jastadd.tooling.grammar.psi; - -import com.intellij.psi.PsiNameIdentifierOwner; - -public interface GrammarNamedElement extends PsiNameIdentifierOwner { - -} diff --git a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarComponentNameImplExtension.java b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarComponentNameImplExtension.java index 8f4fc25..439cdcd 100644 --- a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarComponentNameImplExtension.java +++ b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarComponentNameImplExtension.java @@ -2,12 +2,13 @@ package org.jastadd.tooling.grammar.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.grammar.psi.GrammarComponentName; import org.jastadd.tooling.grammar.psi.GrammarElementFactory; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; +import org.jastadd.tooling.common.psi.NamedElement; import org.jetbrains.annotations.NotNull; -public class GrammarComponentNameImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class GrammarComponentNameImplExtension extends NamedElementImpl implements NamedElement { public GrammarComponentNameImplExtension(@NotNull ASTNode node) { super(node); diff --git a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeDeclImplExtension.java b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeDeclImplExtension.java index 7be798b..12b2c99 100644 --- a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeDeclImplExtension.java +++ b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeDeclImplExtension.java @@ -2,13 +2,14 @@ package org.jastadd.tooling.grammar.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.grammar.parser.GrammarTypes; import org.jastadd.tooling.grammar.psi.GrammarElementFactory; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; +import org.jastadd.tooling.common.psi.NamedElement; import org.jastadd.tooling.grammar.psi.GrammarTypeName; import org.jetbrains.annotations.NotNull; -public class GrammarTypeDeclImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class GrammarTypeDeclImplExtension extends NamedElementImpl implements NamedElement { public GrammarTypeDeclImplExtension(@NotNull ASTNode node) { super(node); diff --git a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeNameImplExtension.java b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeNameImplExtension.java index 753e63c..c33cd5f 100644 --- a/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeNameImplExtension.java +++ b/src/main/java/org/jastadd/tooling/grammar/psi/impl/GrammarTypeNameImplExtension.java @@ -2,12 +2,13 @@ package org.jastadd.tooling.grammar.psi.impl; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElement; +import org.jastadd.tooling.common.psi.impl.NamedElementImpl; import org.jastadd.tooling.grammar.psi.GrammarElementFactory; -import org.jastadd.tooling.grammar.psi.GrammarNamedElement; +import org.jastadd.tooling.common.psi.NamedElement; import org.jastadd.tooling.grammar.psi.GrammarTypeName; import org.jetbrains.annotations.NotNull; -public class GrammarTypeNameImplExtension extends GrammarNamedElementImpl implements GrammarNamedElement { +public class GrammarTypeNameImplExtension extends NamedElementImpl implements NamedElement { public GrammarTypeNameImplExtension(@NotNull ASTNode node) { super(node); -- GitLab