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 }

Locating this inspection

By ID

Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.

RedundantSetter
Via Settings dialog

Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.

Settings or Preferences | Editor | Inspections | Kotlin | Redundant constructs

Availability

By default bundled with

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin

Kotlin, 241.18072-IJ

Last modified: 18 June 2024