Operator Usage Whitespace
Operators should be surrounded by a single whitespace when they are being used
- Identifier:
operator_usage_whitespace
- Enabled by default: No
- Supports autocorrection: Yes
- Kind: style
- Analyzer rule: No
- Minimum Swift compiler version: 5.0.0
- Default configuration:
Key Value severity warning lines_look_around 2 skip_aligned_constants true allowed_no_space_operators [“…”, “..<”]
Non Triggering Examples
let foo = 1 + 2
let foo = 1 > 2
let foo = !false
let foo: Int?
let foo: Array<String>
let model = CustomView<Container<Button>, NSAttributedString>()
let foo: [String]
let foo = 1 +
2
let range = 1...3
let range = 1 ... 3
let range = 1..<3
#if swift(>=3.0)
foo()
#endif
array.removeAtIndex(-200)
let name = "image-1"
button.setImage(#imageLiteral(resourceName: "image-1"), for: .normal)
let doubleValue = -9e-11
let foo = GenericType<(UIViewController) -> Void>()
let foo = Foo<Bar<T>, Baz>()
let foo = SignalProducer<Signal<Value, Error>, Error>([ self.signal, next ]).flatten(.concat)
"let foo = 1"
enum Enum {
case hello = 1
case hello2 = 1
}
let something = Something<GenericParameter1,
GenericParameter2>()
return path.flatMap { path in
return compileCommands[path] ??
compileCommands[path.path(relativeTo: FileManager.default.currentDirectoryPath)]
}
internal static func == (lhs: Vertex, rhs: Vertex) -> Bool {
return lhs.filePath == rhs.filePath
&& lhs.originalRemoteString == rhs.originalRemoteString
&& lhs.rootDirectory == rhs.rootDirectory
}
internal static func == (lhs: Vertex, rhs: Vertex) -> Bool {
return lhs.filePath == rhs.filePath &&
lhs.originalRemoteString == rhs.originalRemoteString &&
lhs.rootDirectory == rhs.rootDirectory
}
private static let pattern =
"\\S\(mainPatternGroups)" + // Regexp will match if expression not begin with comma
"|" + // or
"\(mainPatternGroups)" // Regexp will match if expression begins with comma
private static let pattern =
"\\S\(mainPatternGroups)" + // Regexp will match if expression not begin with comma
"|" + // or
"\(mainPatternGroups)" // Regexp will match if expression begins with comma
typealias Foo = Bar
protocol A {
associatedtype B = C
}
tabbedViewController.title = nil
Triggering Examples
let foo = 1↓+2
let foo = 1↓ + 2
let foo = 1↓ + 2
let foo = 1↓ + 2
let foo↓=1↓+2
let foo↓=1 + 2
let foo↓=bar
let range = 1↓ ..< 3
let foo = bar↓ ?? 0
let foo = bar↓ != 0
let foo = bar↓ !== bar2
let v8 = Int8(1)↓ << 6
let v8 = 1↓ << (6)
let v8 = 1↓ << (6)
let foo = 1 > 2
let foo↓ = [1]
let foo↓ = "1"
let foo↓ = "1"
enum Enum {
case one↓ = 1
case two = 1
}
enum Enum {
case one = 1
case two↓ = 1
}
enum Enum {
case one↓ = 1
case two↓ = 1
}
typealias Foo↓ = Bar
protocol A {
associatedtype B↓ = C
}
tabbedViewController.title↓ = nil
let foo = bar ? 0↓:1
let foo = bar↓ ? 0 : 1