Inspectopedia Help

Redundant property setter

Reports redundant property setters.

Setter is considered to be redundant in one of the following cases:

  1. Setter has no body. Accessor visibility isn't changed, declaration isn't external and has no annotations.

    var myPropWithRedundantSetter: Int = 0 set // redundant var myPropA: Int = 0 private set // OK - property visibility is changed to private var myPropB: Int = 0 external set // OK - implemented not in Kotlin (external) var myPropC: Int = 0 @Inject set // OK - accessor is annotated
  2. Setter body is a block with a single statement assigning the parameter to the backing field.

    var prop: Int = 0 set(value) { // redundant field = value }

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Kotlin, 241.16690-IJ

Last modified: 29 April 2024