Extension Access Modifier
Prefer to use extension access modifiers
- Identifier: extension_access_modifier
- Enabled by default: No
- Supports autocorrection: No
- Kind: idiomatic
- Analyzer rule: No
- Minimum Swift compiler version: 5.0.0
- Default configuration:
Key Value severity warning
Non Triggering Examples
extension Foo: SomeProtocol {
public var bar: Int { return 1 }
}
extension Foo {
private var bar: Int { return 1 }
public var baz: Int { return 1 }
}
extension Foo {
private var bar: Int { return 1 }
public func baz() {}
}
extension Foo {
var bar: Int { return 1 }
var baz: Int { return 1 }
}
public extension Foo {
var bar: Int { return 1 }
var baz: Int { return 1 }
}
extension Foo {
private bar: Int { return 1 }
private baz: Int { return 1 }
}
extension Foo {
open bar: Int { return 1 }
open baz: Int { return 1 }
}
extension Foo {
func setup() {}
public func update() {}
}
Triggering Examples
↓extension Foo {
public var bar: Int { return 1 }
public var baz: Int { return 1 }
}
↓extension Foo {
public var bar: Int { return 1 }
public func baz() {}
}
public extension Foo {
public ↓func bar() {}
public ↓func baz() {}
}
↓extension Foo {
public var bar: Int {
let value = 1
return value
}
public var baz: Int { return 1 }
}