mirror of
https://github.com/nicklockwood/SwiftFormat.git
synced 2026-05-17 10:30:35 +00:00
37 lines
958 B
Swift
37 lines
958 B
Swift
//
|
|
// SpaceInsideGenerics.swift
|
|
// SwiftFormat
|
|
//
|
|
// Created by Nick Lockwood on 8/22/16.
|
|
// Copyright © 2024 Nick Lockwood. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public extension FormatRule {
|
|
/// Remove space immediately inside chevrons
|
|
static let spaceInsideGenerics = FormatRule(
|
|
help: "Remove space inside angle brackets."
|
|
) { formatter in
|
|
formatter.forEach(.startOfScope("<")) { i, _ in
|
|
if formatter.token(at: i + 1)?.isSpace == true {
|
|
formatter.removeToken(at: i + 1)
|
|
}
|
|
}
|
|
formatter.forEach(.endOfScope(">")) { i, _ in
|
|
if formatter.token(at: i - 1)?.isSpace == true,
|
|
formatter.token(at: i - 2)?.isLinebreak == false
|
|
{
|
|
formatter.removeToken(at: i - 1)
|
|
}
|
|
}
|
|
} examples: {
|
|
"""
|
|
```diff
|
|
- Foo< Bar, Baz >
|
|
+ Foo<Bar, Baz>
|
|
```
|
|
"""
|
|
}
|
|
}
|