summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sd-plugin/build.gradle8
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdChooseByNameContributor.java15
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettings.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettingsProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdCommenter.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdCompletionContributor.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdFileType.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdIcons.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguage.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguageCodeStyleSettingsProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdLexerAdapter.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdRefactoringSupportProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdReference.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighterFactory.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/SdUtil.java18
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRule.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRuleProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandler.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandlerFactory.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRule.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRuleProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdUsageGroup.java6
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyBrowser.java10
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyNodeDescriptor.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallTreeStructure.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCalleeTreeStructure.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallerTreeStructure.java4
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdHierarchyUtil.java5
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/lexer/sd.flex2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/parser/SdParserDefinition.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/parser/sd.bnf4
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclaration.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclarationType.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementDescriptionProvider.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementFactory.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementType.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFile.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFunctionDefinitionInterface.java4
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdIdentifier.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdNamedElement.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdTokenType.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdFirstPhaseDefinitionMixin.java58
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixin.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixinImpl.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdNamedElementImpl.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdSummaryDefinitionMixin.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewElement.java2
-rw-r--r--sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewFactory.java2
-rw-r--r--sd-plugin/src/main/resources/META-INF/plugin.xml4
-rw-r--r--sd-plugin/src/main/resources/icons/override_macro_icon.pngbin394 -> 703 bytes
53 files changed, 131 insertions, 87 deletions
diff --git a/sd-plugin/build.gradle b/sd-plugin/build.gradle
index 5a0c37dbf33..90a137ce473 100644
--- a/sd-plugin/build.gradle
+++ b/sd-plugin/build.gradle
@@ -1,4 +1,4 @@
-// This "noinspection" comment is here to fix a warning
+// This "noinspection" comment below is here to fix a warning
//noinspection GroovyAssignabilityCheck
plugins {
id 'org.jetbrains.intellij' version '1.1.4'
@@ -35,12 +35,12 @@ compileJava {
}
-group 'org.vz.native'
-version '1.0.1'
+group 'org.yahoo.native'
+version '1.0.0'
sourceCompatibility = 11
-// This "noinspection" comment is here to fix a warning
+// This "noinspection" comment below is here to fix a warning
//noinspection GroovyAssignabilityCheck
repositories {
mavenCentral()
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdChooseByNameContributor.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdChooseByNameContributor.java
index f313bb2be59..99bebe21b87 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdChooseByNameContributor.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdChooseByNameContributor.java
@@ -8,7 +8,6 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiManager;
import com.intellij.psi.search.FileTypeIndex;
import com.intellij.psi.search.GlobalSearchScope;
-import com.intellij.util.indexing.FileBasedIndex;
import org.intellij.sdk.language.psi.SdDeclaration;
import org.intellij.sdk.language.psi.SdFile;
import org.jetbrains.annotations.NotNull;
@@ -19,17 +18,13 @@ import java.util.List;
/**
* This class is used for the extension (in plugin.xml) to enable "Go To Symbol" feature.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdChooseByNameContributor implements ChooseByNameContributor {
@Override
public String @NotNull [] getNames(Project project, boolean includeNonProjectItems) {
- Collection<VirtualFile> virtualFiles = FileBasedIndex.getInstance().getContainingFiles(
- FileTypeIndex.NAME,
- SdFileType.INSTANCE,
- GlobalSearchScope.allScope(project)
- );
+ Collection<VirtualFile> virtualFiles = FileTypeIndex.getFiles(SdFileType.INSTANCE, GlobalSearchScope.allScope(project));
List<SdDeclaration> declarations = new ArrayList<>();
@@ -47,11 +42,7 @@ public class SdChooseByNameContributor implements ChooseByNameContributor {
@Override
public NavigationItem @NotNull [] getItemsByName(String name, String pattern, Project project, boolean includeNonProjectItems) {
- Collection<VirtualFile> virtualFiles = FileBasedIndex.getInstance().getContainingFiles(
- FileTypeIndex.NAME,
- SdFileType.INSTANCE,
- GlobalSearchScope.allScope(project)
- );
+ Collection<VirtualFile> virtualFiles = FileTypeIndex.getFiles(SdFileType.INSTANCE, GlobalSearchScope.allScope(project));
List<SdDeclaration> declarations = new ArrayList<>();
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettings.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettings.java
index 89460099790..93c3e7ccc50 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettings.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettings.java
@@ -6,7 +6,7 @@ import com.intellij.psi.codeStyle.CustomCodeStyleSettings;
/**
* This class represent a code style settings, and creates an option page in settings/preferences.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCodeStyleSettings extends CustomCodeStyleSettings {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettingsProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettingsProvider.java
index 3b8136f92b3..3b075b0f438 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettingsProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCodeStyleSettingsProvider.java
@@ -13,7 +13,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml) to the class SdCodeStyleSettings.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCommenter.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCommenter.java
index 5d9fbfaa07d..d0f28848cf0 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCommenter.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCommenter.java
@@ -7,7 +7,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml), to enable turning a line into a comment with
* "Code -> Comment with line comment".
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCommenter implements Commenter {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCompletionContributor.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCompletionContributor.java
index 7cf517ba2e9..8bcda614ee7 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdCompletionContributor.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdCompletionContributor.java
@@ -14,7 +14,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class is used for the extension (in plugin.xml) to enables Auto-Complete. Partially works for now.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCompletionContributor extends CompletionContributor {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdFileType.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdFileType.java
index 0f6189abbe6..ccc4c6b6348 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdFileType.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdFileType.java
@@ -9,7 +9,7 @@ import javax.swing.Icon;
/**
* This class is used for the extension (in plugin.xml), to define SD as a file's type.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdFileType extends LanguageFileType {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdIcons.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdIcons.java
index 21c46f15e55..806fcd6b6ba 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdIcons.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdIcons.java
@@ -7,7 +7,7 @@ import javax.swing.Icon;
/**
* This class is used for defining Icons for the IDE.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdIcons {
public static final Icon FILE = IconLoader.getIcon("icons/sd_icon.png", SdIcons.class);
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguage.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguage.java
index d283514076d..fa253c4d605 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguage.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguage.java
@@ -5,7 +5,7 @@ import com.intellij.lang.Language;
/**
* This class defines SD as a language.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdLanguage extends Language {
public static final SdLanguage INSTANCE = new SdLanguage();
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguageCodeStyleSettingsProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguageCodeStyleSettingsProvider.java
index efe4e9ea0ae..24fef3af40c 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguageCodeStyleSettingsProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLanguageCodeStyleSettingsProvider.java
@@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class is used for the extension (in plugin.xml), to make the IDE use our plugin's code for coding style.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdLanguageCodeStyleSettingsProvider extends LanguageCodeStyleSettingsProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLexerAdapter.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLexerAdapter.java
index c9137fa9234..58329222a19 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdLexerAdapter.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdLexerAdapter.java
@@ -5,7 +5,7 @@ import com.intellij.lexer.FlexAdapter;
/**
* This class adapts the JFlex lexer to the IntelliJ Platform Lexer API.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdLexerAdapter extends FlexAdapter {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdRefactoringSupportProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdRefactoringSupportProvider.java
index 4f602c56576..1b5cba028a7 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdRefactoringSupportProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdRefactoringSupportProvider.java
@@ -9,7 +9,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml), to enable refactoring.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdRefactoringSupportProvider extends RefactoringSupportProvider {
@Override
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdReference.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdReference.java
index 3cb41bb6132..bce51ccc2ff 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdReference.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdReference.java
@@ -20,7 +20,7 @@ import java.util.List;
/**
* This class represent a reference to a Psi Element.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdReference extends PsiReferenceBase<PsiElement> implements PsiPolyVariantReference {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java
index 31acd5ff730..aaceaaa02cd 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighter.java
@@ -17,7 +17,7 @@ import java.util.HashSet;
/**
* This class defines the syntax highlighting of an SD file.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdSyntaxHighlighter extends SyntaxHighlighterBase {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighterFactory.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighterFactory.java
index b2ace3156e9..618e188f680 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighterFactory.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdSyntaxHighlighterFactory.java
@@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class is used for the extension (in plugin.xml) to the class SdSyntaxHighlighter.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdSyntaxHighlighterFactory extends SyntaxHighlighterFactory {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/SdUtil.java b/sd-plugin/src/main/java/org/intellij/sdk/language/SdUtil.java
index 92e7c9e6f85..5d6cd85489f 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/SdUtil.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/SdUtil.java
@@ -11,7 +11,6 @@ import com.intellij.psi.PsiReference;
import com.intellij.psi.search.FileTypeIndex;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.psi.util.PsiTreeUtil;
-import com.intellij.util.indexing.FileBasedIndex;
import org.intellij.sdk.language.psi.SdAnnotationFieldDefinition;
import org.intellij.sdk.language.psi.SdArgumentDefinition;
import org.intellij.sdk.language.psi.SdDeclaration;
@@ -40,7 +39,7 @@ import java.util.List;
/**
* This is the util class for the plugin's code.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdUtil {
@@ -75,8 +74,8 @@ public class SdUtil {
}
}
SdIdentifier ancestorIdentifier = (SdIdentifier) ancestorAST.getPsi();
- return ancestorIdentifier.getReference().resolve();
-
+ PsiReference ref = ancestorIdentifier.getReference();
+ return ref != null ? ref.resolve() : null;
}
public static String createFunctionDescription(SdFunctionDefinition macro) {
@@ -128,12 +127,9 @@ public class SdUtil {
if (docName == null) {
return result;
}
-
- Collection<VirtualFile> virtualFiles = FileBasedIndex.getInstance().getContainingFiles(
- FileTypeIndex.NAME,
- SdFileType.INSTANCE,
- GlobalSearchScope.allScope(project)
- );
+
+ Collection<VirtualFile> virtualFiles = FileTypeIndex.getFiles(SdFileType.INSTANCE, GlobalSearchScope.allScope(project));
+
for (VirtualFile vfile : virtualFiles) {
SdFile sdFile = (SdFile) PsiManager.getInstance(project).findFile(vfile);
if (sdFile != null && !sdFile.getName().equals(docName + ".sd")) {
@@ -166,7 +162,7 @@ public class SdUtil {
PsiElement curRankProfile = PsiTreeUtil.getParentOfType(element, SdRankProfileDefinition.class);
while (curRankProfile != null) {
for (SdFunctionDefinition macro : PsiTreeUtil.collectElementsOfType(curRankProfile, SdFunctionDefinition.class)) {
- if (macro.getName().equals(name)) {
+ if (macro.getName() != null && macro.getName().equals(name)) {
result.add(macro);
return result;
}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRule.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRule.java
index 8047e198d88..ba081e9d415 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRule.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRule.java
@@ -15,7 +15,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class represent a Document Summary that groups elements in the "Find Usages" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdDocumentSummaryGroupingRule extends SingleParentUsageGroupingRule implements DumbAware {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRuleProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRuleProvider.java
index ff519436994..0e6f0358ca5 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRuleProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdDocumentSummaryGroupingRuleProvider.java
@@ -9,7 +9,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml) to the class SdDocumentSummaryGroupingRule.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdDocumentSummaryGroupingRuleProvider implements FileStructureGroupRuleProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandler.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandler.java
index 6841f608efd..b48c35e5c49 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandler.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandler.java
@@ -23,7 +23,7 @@ import java.util.List;
/**
* This class handles creating the "Find Usages" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdFindUsagesHandler extends FindUsagesHandler {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandlerFactory.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandlerFactory.java
index 2ccd7f6ea41..b96cad508f7 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandlerFactory.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesHandlerFactory.java
@@ -10,7 +10,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml) to the class SdFindUsagesHandler.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdFindUsagesHandlerFactory extends FindUsagesHandlerFactory {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesProvider.java
index ba71c864ce5..56aaae6d02a 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdFindUsagesProvider.java
@@ -18,7 +18,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml), to enable "find Usages" window using the plugin code.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdFindUsagesProvider implements FindUsagesProvider {
@Nullable
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRule.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRule.java
index 77de9fd9534..1fa848313e0 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRule.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRule.java
@@ -15,7 +15,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class represent a Rank Profile that groups elements in the "Find Usages" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdRankProfileGroupingRule extends SingleParentUsageGroupingRule implements DumbAware {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRuleProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRuleProvider.java
index 7527b93c947..0b973a56644 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRuleProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdRankProfileGroupingRuleProvider.java
@@ -9,7 +9,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml) to the class SdRankProfileGroupingRule.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdRankProfileGroupingRuleProvider implements FileStructureGroupRuleProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdUsageGroup.java b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdUsageGroup.java
index 9042be84d75..0423db89cd6 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdUsageGroup.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/findUsages/SdUsageGroup.java
@@ -3,7 +3,6 @@ package org.intellij.sdk.language.findUsages;
import com.intellij.navigation.ItemPresentation;
import com.intellij.navigation.NavigationItemFileStatus;
-import com.intellij.openapi.util.NlsSafe;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vcs.FileStatus;
import com.intellij.openapi.vfs.VirtualFile;
@@ -18,7 +17,7 @@ import javax.swing.*;
/**
* This class represent a group of elements in the "Find Usages" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdUsageGroup implements UsageGroup {
private final VirtualFile myFile;
@@ -91,4 +90,7 @@ public class SdUsageGroup implements UsageGroup {
public @Nullable Icon getIcon() {
return myIcon;
}
+
+ @Override
+ public void update() {} // here because JetBrains asked
}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyBrowser.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyBrowser.java
index 417cab307d4..46b4e738fcb 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyBrowser.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyBrowser.java
@@ -7,11 +7,9 @@ import com.intellij.ide.hierarchy.HierarchyTreeStructure;
import com.intellij.ide.util.treeView.NodeDescriptor;
import com.intellij.openapi.actionSystem.ActionGroup;
import com.intellij.openapi.actionSystem.ActionManager;
-import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.IdeActions;
import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiElement;
-import com.intellij.ui.PopupHandler;
import com.intellij.util.ObjectUtils;
import org.intellij.sdk.language.psi.SdFunctionDefinition;
import org.jetbrains.annotations.NotNull;
@@ -24,7 +22,7 @@ import javax.swing.JTree;
/**
* This class is a browser for the "Call Hierarchy" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCallHierarchyBrowser extends CallHierarchyBrowserBase {
@@ -46,10 +44,8 @@ public class SdCallHierarchyBrowser extends CallHierarchyBrowserBase {
type2TreeMap.put(getCalleeType(), createHierarchyTree(group));
}
- private JTree createHierarchyTree(ActionGroup group) {
- final JTree tree = createTree(false);
- PopupHandler.installPopupMenu(tree, group, ActionPlaces.CALL_HIERARCHY_VIEW_POPUP);
- return tree;
+ private @NotNull JTree createHierarchyTree(ActionGroup group) {
+ return createTree(false);
}
@Override
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyNodeDescriptor.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyNodeDescriptor.java
index df6db46ff6f..fdd8871201e 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyNodeDescriptor.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyNodeDescriptor.java
@@ -22,7 +22,7 @@ import javax.swing.Icon;
/**
* This class represents a node descriptor to a node in a tree in the "Call Hierarchy" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCallHierarchyNodeDescriptor extends HierarchyNodeDescriptor {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyProvider.java
index 5566e1f71e1..4808c55f1ae 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallHierarchyProvider.java
@@ -20,7 +20,7 @@ import com.intellij.openapi.project.Project;
/**
* This class is used for the extension (in plugin.xml), to enable "Call Hierarchy" window using the plugin code.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCallHierarchyProvider implements HierarchyProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallTreeStructure.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallTreeStructure.java
index a5d8492b521..0f843d9fe6a 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallTreeStructure.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallTreeStructure.java
@@ -21,7 +21,7 @@ import java.util.List;
/**
* This abstract class represents a general tree in the "Call Hierarchy" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public abstract class SdCallTreeStructure extends HierarchyTreeStructure {
protected final String myScopeType;
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCalleeTreeStructure.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCalleeTreeStructure.java
index f683fe0139a..cce1ebf172a 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCalleeTreeStructure.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCalleeTreeStructure.java
@@ -18,7 +18,7 @@ import java.util.List;
/**
* This class represents a Callee tree in the "Call Hierarchy" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCalleeTreeStructure extends SdCallTreeStructure {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallerTreeStructure.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallerTreeStructure.java
index 4a30dd7492f..1ab2f6613d9 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallerTreeStructure.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdCallerTreeStructure.java
@@ -20,7 +20,7 @@ import java.util.function.Consumer;
/**
* This class represents a Caller tree in the "Call Hierarchy" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdCallerTreeStructure extends SdCallTreeStructure {
@@ -52,7 +52,7 @@ public class SdCallerTreeStructure extends SdCallTreeStructure {
ProgressManager.checkCanceled();
PsiElement psiElement = r.getElement();
SdFunctionDefinition f = PsiTreeUtil.getParentOfType(psiElement, SdFunctionDefinition.class, false);
- if (f != null && !f.getName().equals(macroName)) {
+ if (f != null && f.getName() != null && !f.getName().equals(macroName)) {
ContainerUtil.addIfNotNull(results, f);
} else {
SdFirstPhaseDefinition fp = PsiTreeUtil.getParentOfType(psiElement, SdFirstPhaseDefinition.class, false);
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdHierarchyUtil.java b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdHierarchyUtil.java
index c3e59124ef8..19f9d72f6f4 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdHierarchyUtil.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/hierarchy/SdHierarchyUtil.java
@@ -18,7 +18,7 @@ import java.util.HashSet;
/**
* This class is util class to the Call Hierarchy feature.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdHierarchyUtil {
@@ -42,7 +42,8 @@ public class SdHierarchyUtil {
HashSet<SdRankProfileDefinition> tempRanks = new HashSet<>();
SdRankProfileDefinition curRank = rank;
while (curRank != null) {
- if (curRank.getName().equals(rankProfileTarget.getName())) {
+ String curRankName = curRank.getName();
+ if (curRankName != null && curRankName.equals(rankProfileTarget.getName())) {
result.addAll(tempRanks);
break;
}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/lexer/sd.flex b/sd-plugin/src/main/java/org/intellij/sdk/language/lexer/sd.flex
index e24769c9d2a..47dddb9c33f 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/lexer/sd.flex
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/lexer/sd.flex
@@ -12,7 +12,7 @@ import static com.intellij.psi.TokenType.WHITE_SPACE; // Pre-defined whitespace
/*
* This file is used for the generation of the lexer of the SD language.
-* @author shahariel
+* @author Shahar Ariel
*/
%%
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/parser/SdParserDefinition.java b/sd-plugin/src/main/java/org/intellij/sdk/language/parser/SdParserDefinition.java
index b084dad7816..fbaa8d0cac5 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/parser/SdParserDefinition.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/parser/SdParserDefinition.java
@@ -20,7 +20,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class is used for the extension (in plugin.xml), to make the parsing process use the plugin code.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdParserDefinition implements ParserDefinition {
public static final TokenSet WHITE_SPACES = TokenSet.create(TokenType.WHITE_SPACE);
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/parser/sd.bnf b/sd-plugin/src/main/java/org/intellij/sdk/language/parser/sd.bnf
index 404f8437865..6ae9d26729c 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/parser/sd.bnf
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/parser/sd.bnf
@@ -1,7 +1,7 @@
/**
This file is the SD grammar.
NOTE: This grammar does not enforce zero-or-one occurrences of elements (treats it like zero-to-many)
-@author: shahariel
+@author: Shahar Ariel
*/
{
@@ -330,7 +330,7 @@ KeywordOrIdentifier ::= schema | search | document | struct | field | type | ind
bolding | on | off | true | false | id | normalizing | stemming | arity | hnsw | dictionary | hash | btree |
fieldset | fields | constant | annotation
| attribute | body | header | index |
- reference | summary | set_language a
+ reference | summary | set_language
// Note- in this form, those keywords can't be use as identifier-with-dash!
KeywordNotIdentifier ::= struct-field | document-summary | omit-summary-features | from-disk | rank-profile | rank-type |
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclaration.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclaration.java
index 3fa6739161b..4f11a2b4b67 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclaration.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclaration.java
@@ -6,6 +6,6 @@ import com.intellij.psi.PsiElement;
/**
* This interface represents a declaration in the SD language.
- * @author shahariel
+ * @author Shahar Ariel
*/
public interface SdDeclaration extends PsiElement, NavigationItem, SdNamedElement {}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclarationType.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclarationType.java
index 5ea5968f0bb..c19e21d0f19 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclarationType.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdDeclarationType.java
@@ -3,7 +3,7 @@ package org.intellij.sdk.language.psi;
/**
* This Enum describes the different declarations' types and their names.
- * @author shahariel
+ * @author Shahar Ariel
*/
public enum SdDeclarationType {
DOCUMENT("Document"),
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementDescriptionProvider.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementDescriptionProvider.java
index b2e99a9538a..76c4454b3b2 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementDescriptionProvider.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementDescriptionProvider.java
@@ -11,7 +11,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml), to enable "find Usages" window take the element description from
* here. Used only for the "target" element.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdElementDescriptionProvider implements ElementDescriptionProvider {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementFactory.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementFactory.java
index 9cb9690cd5b..1f3b98b6012 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementFactory.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementFactory.java
@@ -9,7 +9,7 @@ import org.intellij.sdk.language.SdFileType;
/**
* This class is a factory of psi elements in the SD PSI tree.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdElementFactory {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementType.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementType.java
index a091d444d8e..b26cd66455d 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementType.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdElementType.java
@@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class represent a SdElementType.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdElementType extends IElementType {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFile.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFile.java
index c044bdeeddd..c2d9249bce1 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFile.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFile.java
@@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class represent an SD file.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdFile extends PsiFileBase {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFunctionDefinitionInterface.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFunctionDefinitionInterface.java
index d3738171343..78d964b45c9 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFunctionDefinitionInterface.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdFunctionDefinitionInterface.java
@@ -5,7 +5,7 @@ import org.intellij.sdk.language.SdUtil;
/**
* This interface represents a function's declaration in the SD language.
- * @author shahariel
+ * @author Shahar Ariel
*/
public interface SdFunctionDefinitionInterface extends SdDeclaration {
default boolean isOverride() {
@@ -17,7 +17,7 @@ public interface SdFunctionDefinitionInterface extends SdDeclaration {
}
while (curRankProfile != null) {
for (SdFunctionDefinition macro : PsiTreeUtil.collectElementsOfType(curRankProfile, SdFunctionDefinition.class)) {
- if (macro.getName().equals(macroName)) {
+ if (macro.getName() != null && macro.getName().equals(macroName)) {
return true;
}
}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdIdentifier.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdIdentifier.java
index 141d0abd403..e20eb4cb6c4 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdIdentifier.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdIdentifier.java
@@ -6,7 +6,7 @@ import com.intellij.psi.util.PsiTreeUtil;
/**
* This interface represents an identifier in the SD language (regular identifiers and identifiers with dash).
- * @author shahariel
+ * @author Shahar Ariel
*/
public interface SdIdentifier extends PsiElement {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdNamedElement.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdNamedElement.java
index bd74a87b551..6e56f548410 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdNamedElement.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdNamedElement.java
@@ -6,7 +6,7 @@ import com.intellij.psi.PsiNameIdentifierOwner;
/**
* This interface is used to wrap a Psi Element with SdNamedElement interface, which enables the element to be a
* "name owner" (like an identifier). It allows the element to take a part in references, find usages and more.
- * @author shahariel
+ * @author Shahar Ariel
*/
public interface SdNamedElement extends PsiNameIdentifierOwner {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdTokenType.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdTokenType.java
index 98e7494389d..1024995832d 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdTokenType.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/SdTokenType.java
@@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class represent a SdTokenType.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdTokenType extends IElementType {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdFirstPhaseDefinitionMixin.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdFirstPhaseDefinitionMixin.java
new file mode 100644
index 00000000000..1a13318a38f
--- /dev/null
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdFirstPhaseDefinitionMixin.java
@@ -0,0 +1,58 @@
+package org.intellij.sdk.language.psi.impl;
+
+import com.intellij.extapi.psi.ASTWrapperPsiElement;
+import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
+import com.intellij.psi.util.PsiTreeUtil;
+import org.intellij.sdk.language.SdIcons;
+import org.intellij.sdk.language.psi.SdRankProfileDefinition;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import javax.swing.Icon;
+
+/**
+ * This class is used for methods' implementations for SdFirstPhaseDefinition. Connected with "mixin" to
+ * FirstPhaseDefinition rule in sd.bnf
+ * @author Shahar Ariel
+ */
+public class SdFirstPhaseDefinitionMixin extends ASTWrapperPsiElement {
+
+ public SdFirstPhaseDefinitionMixin(@NotNull ASTNode node) {
+ super(node);
+ }
+
+ @NotNull
+ public String getName() {
+ SdRankProfileDefinition rankProfile = PsiTreeUtil.getParentOfType(this, SdRankProfileDefinition.class);
+ if (rankProfile == null) {
+ return "";
+ }
+ return "first-phase of " + rankProfile.getName();
+ }
+
+ public ItemPresentation getPresentation() {
+ final SdFirstPhaseDefinitionMixin element = this;
+ return new ItemPresentation() {
+ @Override
+ public String getPresentableText() {
+ SdRankProfileDefinition rankProfile = PsiTreeUtil.getParentOfType(element, SdRankProfileDefinition.class);
+ if (rankProfile == null) {
+ return "";
+ }
+ return "first-phase of " + rankProfile.getName();
+ }
+
+ @Nullable
+ @Override
+ public String getLocationString() {
+ return element.getContainingFile() != null ? element.getContainingFile().getName() : null;
+ }
+
+ @Override
+ public Icon getIcon(boolean unused) {
+ return SdIcons.FIRST_PHASE;
+ }
+ };
+ }
+}
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixin.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixin.java
index 951f90b0793..536dfc4f2cc 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixin.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixin.java
@@ -11,7 +11,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This abstract class is used for methods' implementations for SdIdentifier. Connected with "mixin" to IdentifierVal and
* IdentifierWithDashVal rules in sd.bnf
- * @author shahariel
+ * @author Shahar Ariel
*/
public abstract class SdIdentifierMixin extends SdIdentifierMixinImpl implements PsiNamedElement {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixinImpl.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixinImpl.java
index 69ccf9eda2a..7b738cc1b0f 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixinImpl.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdIdentifierMixinImpl.java
@@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
/**
* This class is used for methods' implementations for SdIdentifier. The abstract class SdIdentifierMixin extents it.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdIdentifierMixinImpl extends ASTWrapperPsiElement implements SdIdentifier {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdNamedElementImpl.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdNamedElementImpl.java
index 0bc1a1eaad3..2c2a7aae3b1 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdNamedElementImpl.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdNamedElementImpl.java
@@ -38,7 +38,7 @@ import javax.swing.Icon;
/**
* This abstract class is used to wrap a Psi Element with SdNamedElement interface, which enables the element to be a
* "name owner" (like an identifier). It allows the element to take a part in references, find usages and more.
- * @author shahariel
+ * @author Shahar Ariel
*/
public abstract class SdNamedElementImpl extends ASTWrapperPsiElement implements SdNamedElement {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdSummaryDefinitionMixin.java b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdSummaryDefinitionMixin.java
index 7c56acce1e9..085b1e04102 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdSummaryDefinitionMixin.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/psi/impl/SdSummaryDefinitionMixin.java
@@ -13,7 +13,7 @@ import javax.swing.Icon;
/**
* This class is used for methods' implementations for SdSummaryDefinition. Connected with "mixin" to SummaryDefinition
* rule in sd.bnf
- * @author shahariel
+ * @author Shahar Ariel
*/
public abstract class SdSummaryDefinitionMixin extends ASTWrapperPsiElement {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewElement.java b/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewElement.java
index 493047c0363..67bda9ced19 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewElement.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewElement.java
@@ -23,7 +23,7 @@ import java.util.List;
/**
* This class is used for the presentation of an element in the "Structure View" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdStructureViewElement implements StructureViewTreeElement, SortableTreeElement {
diff --git a/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewFactory.java b/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewFactory.java
index 6ca4c979ef0..2e902beb2ad 100644
--- a/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewFactory.java
+++ b/sd-plugin/src/main/java/org/intellij/sdk/language/structure/SdStructureViewFactory.java
@@ -13,7 +13,7 @@ import org.jetbrains.annotations.Nullable;
/**
* This class is used for the extension (in plugin.xml) to the class SdStructureViewModel. It make the IDE use our
* plugin's code when creating the "Structure View" window.
- * @author shahariel
+ * @author Shahar Ariel
*/
public class SdStructureViewFactory implements PsiStructureViewFactory {
diff --git a/sd-plugin/src/main/resources/META-INF/plugin.xml b/sd-plugin/src/main/resources/META-INF/plugin.xml
index 118dbb16ad5..10a617fe3d4 100644
--- a/sd-plugin/src/main/resources/META-INF/plugin.xml
+++ b/sd-plugin/src/main/resources/META-INF/plugin.xml
@@ -2,10 +2,10 @@
<idea-plugin>
<id>org.intellij.sdk.language</id>
<name>SdReader</name>
- <version>1.0.1</version>
+ <version>1.0.0</version>
<!-- Text to display as company information on Preferences/Settings | Plugin page -->
- <vendor>Vespa</vendor>
+ <vendor>Yahoo</vendor>
<!-- Product and plugin compatibility requirements -->
<depends>com.intellij.java</depends>
diff --git a/sd-plugin/src/main/resources/icons/override_macro_icon.png b/sd-plugin/src/main/resources/icons/override_macro_icon.png
index ae9e2636798..024eb777eef 100644
--- a/sd-plugin/src/main/resources/icons/override_macro_icon.png
+++ b/sd-plugin/src/main/resources/icons/override_macro_icon.png
Binary files differ