1313 * The main purpose of this enum is to be able to display localized element name in UI
1414 */
1515public enum JavaElementKind {
16- ABSTRACT_METHOD (JavaLanguageLocalize .elementAbstract_method ()),
17- ANNOTATION (JavaLanguageLocalize .elementAnnotation ()),
18- ANONYMOUS_CLASS (JavaLanguageLocalize .elementAnonymous_class ()),
19- CLASS (JavaLanguageLocalize .elementClass ()),
20- TYPE_PARAMETER (JavaLanguageLocalize .elementTypeParameter ()),
21- CONSTANT (JavaLanguageLocalize .elementConstant ()),
22- CONSTRUCTOR (JavaLanguageLocalize .elementConstructor ()),
23- ENUM (JavaLanguageLocalize .elementEnum ()),
24- ENUM_CONSTANT (JavaLanguageLocalize .elementEnum_constant ()),
25- EXPRESSION (JavaLanguageLocalize .elementExpression ()),
26- FIELD (JavaLanguageLocalize .elementField ()),
27- INITIALIZER (JavaLanguageLocalize .elementInitializer ()),
28- INTERFACE (JavaLanguageLocalize .elementInterface ()),
29- LABEL (JavaLanguageLocalize .elementLabel ()),
30- LOCAL_VARIABLE (JavaLanguageLocalize .elementLocal_variable ()),
31- METHOD (JavaLanguageLocalize .elementMethod ()),
32- MODULE (JavaLanguageLocalize .elementModule ()),
33- PACKAGE (JavaLanguageLocalize .elementPackage ()),
34- PARAMETER (JavaLanguageLocalize .elementParameter ()),
35- PATTERN_VARIABLE (JavaLanguageLocalize .elementPattern_variable ()),
36- RECORD (JavaLanguageLocalize .elementRecord ()),
37- RECORD_COMPONENT (JavaLanguageLocalize .elementRecord_component ()),
38- SNIPPET_BODY (JavaLanguageLocalize .elementSnippet_body ()),
39- STATEMENT (JavaLanguageLocalize .elementStatement ()),
40- UNKNOWN (JavaLanguageLocalize .elementUnknown ()),
41- VARIABLE (JavaLanguageLocalize .elementVariable ()),
42- THROWS_LIST (JavaLanguageLocalize .elementThrowsList ()),
43- EXTENDS_LIST (JavaLanguageLocalize .elementExtendsList ()),
44- RECEIVER_PARAMETER (JavaLanguageLocalize .elementReceiverParameter ()),
45- METHOD_CALL (JavaLanguageLocalize .elementMethodCall ()),
46- TYPE_ARGUMENTS (JavaLanguageLocalize .elementTypeArguments ()),
47- SEMICOLON (JavaLanguageLocalize .elementTypeSemicolon ());
16+ ABSTRACT_METHOD (JavaLanguageLocalize .elementAbstractMethodNominative (), JavaLanguageLocalize . elementAbstractMethodAccusative ()),
17+ ANNOTATION (JavaLanguageLocalize .elementAnnotationNominative (), JavaLanguageLocalize . elementAnnotationAccusative ()),
18+ ANONYMOUS_CLASS (JavaLanguageLocalize .elementAnonymousClassNominative (), JavaLanguageLocalize . elementAnonymousClassAccusative ()),
19+ CLASS (JavaLanguageLocalize .elementClassNominative (), JavaLanguageLocalize . elementClassAccusative ()),
20+ TYPE_PARAMETER (JavaLanguageLocalize .elementTypeParameterNominative (), JavaLanguageLocalize . elementTypeParameterAccusative ()),
21+ CONSTANT (JavaLanguageLocalize .elementConstantNominative (), JavaLanguageLocalize . elementConstantAccusative ()),
22+ CONSTRUCTOR (JavaLanguageLocalize .elementConstructorNominative (), JavaLanguageLocalize . elementConstructorAccusative ()),
23+ ENUM (JavaLanguageLocalize .elementEnumNominative (), JavaLanguageLocalize . elementEnumAccusative ()),
24+ ENUM_CONSTANT (JavaLanguageLocalize .elementEnumConstantNominative (), JavaLanguageLocalize . elementEnumConstantAccusative ()),
25+ EXPRESSION (JavaLanguageLocalize .elementExpressionNominative (), JavaLanguageLocalize . elementExpressionAccusative ()),
26+ FIELD (JavaLanguageLocalize .elementFieldNominative (), JavaLanguageLocalize . elementFieldAccusative ()),
27+ INITIALIZER (JavaLanguageLocalize .elementInitializerNominative (), JavaLanguageLocalize . elementInitializerAccusative ()),
28+ INTERFACE (JavaLanguageLocalize .elementInterfaceNominative (), JavaLanguageLocalize . elementInterfaceAccusative ()),
29+ LABEL (JavaLanguageLocalize .elementLabelNominative (), JavaLanguageLocalize . elementLabelAccusative ()),
30+ LOCAL_VARIABLE (JavaLanguageLocalize .elementLocalVariableNominative (), JavaLanguageLocalize . elementLocalVariableAccusative ()),
31+ METHOD (JavaLanguageLocalize .elementMethodNominative (), JavaLanguageLocalize . elementMethodAccusative ()),
32+ MODULE (JavaLanguageLocalize .elementModuleNominative (), JavaLanguageLocalize . elementModuleAccusative ()),
33+ PACKAGE (JavaLanguageLocalize .elementPackageNominative (), JavaLanguageLocalize . elementPackageAccusative ()),
34+ PARAMETER (JavaLanguageLocalize .elementParameterNominative (), JavaLanguageLocalize . elementParameterAccusative ()),
35+ PATTERN_VARIABLE (JavaLanguageLocalize .elementPatternVariableNominative (), JavaLanguageLocalize . elementPatternVariableAccusative ()),
36+ RECORD (JavaLanguageLocalize .elementRecordNominative (), JavaLanguageLocalize . elementRecordAccusative ()),
37+ RECORD_COMPONENT (JavaLanguageLocalize .elementRecordComponentNominative (), JavaLanguageLocalize . elementRecordComponentAccusative ()),
38+ SNIPPET_BODY (JavaLanguageLocalize .elementSnippetBodyNominative (), JavaLanguageLocalize . elementSnippetBodyAccusative ()),
39+ STATEMENT (JavaLanguageLocalize .elementStatementNominative (), JavaLanguageLocalize . elementStatementAccusative ()),
40+ UNKNOWN (JavaLanguageLocalize .elementUnknownNominative (), JavaLanguageLocalize . elementUnknownAccusative ()),
41+ VARIABLE (JavaLanguageLocalize .elementVariableNominative (), JavaLanguageLocalize . elementVariableAccusative ()),
42+ THROWS_LIST (JavaLanguageLocalize .elementThrowsListNominative (), JavaLanguageLocalize . elementThrowsListAccusative ()),
43+ EXTENDS_LIST (JavaLanguageLocalize .elementExtendsListNominative (), JavaLanguageLocalize . elementExtendsListAccusative ()),
44+ RECEIVER_PARAMETER (JavaLanguageLocalize .elementReceiverParameterNominative (), JavaLanguageLocalize . elementReceiverParameterAccusative ()),
45+ METHOD_CALL (JavaLanguageLocalize .elementMethodCallNominative (), JavaLanguageLocalize . elementMethodCallAccusative ()),
46+ TYPE_ARGUMENTS (JavaLanguageLocalize .elementTypeArgumentsNominative (), JavaLanguageLocalize . elementTypeArgumentsAccusative ()),
47+ SEMICOLON (JavaLanguageLocalize .elementTypeSemicolonNominative (), JavaLanguageLocalize . elementTypeSemicolonAccusative ());
4848
4949 @ Nonnull
50- private final LocalizeValue myName ;
50+ private final LocalizeValue myNameNominative ;
51+ @ Nonnull
52+ private final LocalizeValue myNameAccusative ;
5153
52- JavaElementKind (@ Nonnull LocalizeValue name ) {
53- myName = name ;
54+ JavaElementKind (@ Nonnull LocalizeValue nameNominative , @ Nonnull LocalizeValue nameAccusative ) {
55+ myNameNominative = nameNominative ;
56+ myNameAccusative = nameAccusative ;
5457 }
5558
5659 /**
5760 * @return human-readable name of the item having the subject role in the sentence (nominative case)
5861 */
5962 public LocalizeValue subject () {
60- return myName ;
63+ return myNameNominative ;
6164 }
6265
6366 /**
6467 * @return human-readable name of the item having the object role in the sentence (accusative case)
6568 */
6669 @ Nonnull
6770 public LocalizeValue object () {
68- return myName ;
71+ return myNameAccusative ;
6972 }
7073
7174 /**
@@ -113,7 +116,7 @@ public static JavaElementKind fromElement(@Nonnull PsiElement element) {
113116 if (method .isConstructor ()) {
114117 return CONSTRUCTOR ;
115118 }
116- if (method .hasModifierProperty ( PsiModifier . ABSTRACT )) {
119+ if (method .isAbstract ( )) {
117120 return ABSTRACT_METHOD ;
118121 }
119122 return METHOD ;
@@ -122,7 +125,7 @@ public static JavaElementKind fromElement(@Nonnull PsiElement element) {
122125 if (field instanceof PsiEnumConstant ) {
123126 return ENUM_CONSTANT ;
124127 }
125- if (field .hasModifierProperty ( PsiModifier . STATIC ) && field .hasModifierProperty ( PsiModifier . FINAL )) {
128+ if (field .isStatic ( ) && field .isFinal ( )) {
126129 return CONSTANT ;
127130 }
128131 return FIELD ;
0 commit comments