Diagnostic for "private setter in abstract property" renamed

This commit is contained in:
Mikhail Glukhikh
2015-11-20 17:59:44 +03:00
parent 284c1b2ec5
commit 74976911a2
10 changed files with 18 additions and 18 deletions
@@ -339,7 +339,7 @@ public interface Errors {
DiagnosticFactory0<PsiElement> REDUNDANT_MODIFIER_IN_GETTER = DiagnosticFactory0.create(WARNING);
DiagnosticFactory0<PsiElement> GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory2<KtTypeReference, KotlinType, KotlinType> WRONG_GETTER_RETURN_TYPE = DiagnosticFactory2.create(ERROR);
DiagnosticFactory0<KtTypeReference> WRONG_SETTER_RETURN_TYPE = DiagnosticFactory0.create(ERROR);
@@ -210,7 +210,7 @@ public class DefaultErrorMessages {
MAP.put(GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY, "Getter visibility must be the same as property visibility");
MAP.put(SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY, "Setter visibility must be the same as lateinit property visibility");
MAP.put(ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY, "Private accessor visibilities are not allowed for abstract properties");
MAP.put(PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY, "Private setters are not allowed for abstract properties");
MAP.put(BACKING_FIELD_IN_INTERFACE, "Property in an interface cannot have a backing field");
MAP.put(MUST_BE_INITIALIZED, "Property must be initialized");
MAP.put(MUST_BE_INITIALIZED_OR_BE_ABSTRACT, "Property must be initialized or be abstract");
@@ -832,7 +832,7 @@ public class DeclarationsChecker {
if (propertyDescriptor.getModality() == Modality.ABSTRACT
&& accessorDescriptor.getVisibility() == Visibilities.PRIVATE
&& propertyDescriptor.getVisibility() != Visibilities.PRIVATE) {
reportVisibilityModifierDiagnostics(tokens.values(), Errors.ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY);
reportVisibilityModifierDiagnostics(tokens.values(), Errors.PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY);
}
else if (propertyDescriptor.isLateInit() && accessorDescriptor.getVisibility() != propertyDescriptor.getVisibility()) {
reportVisibilityModifierDiagnostics(tokens.values(), Errors.SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY);
+2 -2
View File
@@ -1,14 +1,14 @@
abstract class My {
abstract var x: Int
<!REDUNDANT_MODIFIER_IN_GETTER!>public<!> get
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract val y: Int
<!GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY!>protected<!> get
abstract protected var z: Int
<!GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY!>internal<!> get
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract internal val w: Int
<!GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY!>protected<!> get
@@ -9,8 +9,8 @@ abstract class MyAbstractClass() {
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
var b1: Int = 0; private set
abstract var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b2: Int <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
var c1: Int = 0; set(v: Int) { field = v }
+2 -2
View File
@@ -9,8 +9,8 @@ class MyClass() {
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
var b1: Int = 0; private set
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b3: Int = 0; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b2: Int <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b3: Int = 0; <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
var c1: Int = 0; set(v: Int) { field = v }
+3 -3
View File
@@ -7,10 +7,10 @@ interface MyTrait {
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> val a2: Int
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> val a3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>1<!>
var b: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
var b: Int <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
var b1: Int = <!PROPERTY_INITIALIZER_IN_INTERFACE!>0<!>; private set
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b2: Int <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!BACKING_FIELD_IN_INTERFACE!>var c: Int<!> set(v: Int) { field = v }
<!BACKING_FIELD_IN_INTERFACE!>var c1: Int<!> = <!PROPERTY_INITIALIZER_IN_INTERFACE!>0<!>; set(v: Int) { field = v }
+2 -2
View File
@@ -11,8 +11,8 @@ enum class MyEnum() {
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
var b1: Int = 0; private set
abstract var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b2: Int <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
var c1: Int = 0; set(v: Int) { field = v }
+3 -3
View File
@@ -5,11 +5,11 @@ interface Test<in I, out O> {
<!PRIVATE_PROPERTY_IN_INTERFACE!>private<!> val private_val: I
var interlan_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
public var public_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>protected<!> var protected_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY!>private<!> set
<!PRIVATE_PROPERTY_IN_INTERFACE!>private<!> var private_private_set: O
private set
@@ -116,7 +116,7 @@ public class QuickFixRegistrar : QuickFixContributor {
val removeModifierFactory = RemoveModifierFix.createRemoveModifierFactory()
GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY.registerFactory(removeModifierFactory)
SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY.registerFactory(removeModifierFactory)
ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY.registerFactory(removeModifierFactory)
PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY.registerFactory(removeModifierFactory)
REDUNDANT_MODIFIER_IN_GETTER.registerFactory(removeRedundantModifierFactory)
WRONG_MODIFIER_TARGET.registerFactory(removeModifierFactory)
REDUNDANT_MODIFIER_FOR_TARGET.registerFactory(removeModifierFactory)