Setter is considered to be redundant in one of the following cases:
var myPropA: Int = 0
private set // it's ok - property visibility is changed to private
var myPropB: Int = 0
external set // it's ok - implemented not in Kotlin (external)
var myPropC: Int = 0
@Inject set // it's ok - accessor is annotated
var myPropWithRedundantSetter: Int = 0
set // redundant
var prop: Int = 0
set(value) { // redundant
field = value
}