@@ -47,24 +47,28 @@ public final class UseShorthandTypeNames: SyntaxFormatRule {
47
47
48
48
switch node. name. text {
49
49
case " Array " :
50
- guard let typeArgument = genericArgumentList. firstAndOnly else {
50
+ guard let argument = genericArgumentList. firstAndOnly,
51
+ case . type( let typeArgument) = argument else {
51
52
newNode = nil
52
53
break
53
54
}
55
+
54
56
newNode = shorthandArrayType (
55
- element: typeArgument. argument ,
57
+ element: typeArgument,
56
58
leadingTrivia: leadingTrivia,
57
59
trailingTrivia: trailingTrivia
58
60
)
59
61
60
62
case " Dictionary " :
61
- guard let typeArguments = exactlyTwoChildren ( of: genericArgumentList) else {
63
+ guard let arguments = exactlyTwoChildren ( of: genericArgumentList) ,
64
+ case . type( let type0Argument) = arguments. 0 . argument,
65
+ caes . type ( let type1 Argument) = arguments. 1 . argument else {
62
66
newNode = nil
63
67
break
64
68
}
65
69
newNode = shorthandDictionaryType (
66
- key: typeArguments . 0 . argument ,
67
- value: typeArguments . 1 . argument ,
70
+ key: type0Argument ,
71
+ value: type1Argument ,
68
72
leadingTrivia: leadingTrivia,
69
73
trailingTrivia: trailingTrivia
70
74
)
@@ -74,12 +78,13 @@ public final class UseShorthandTypeNames: SyntaxFormatRule {
74
78
newNode = nil
75
79
break
76
80
}
77
- guard let typeArgument = genericArgumentList. firstAndOnly else {
81
+ guard let argument = genericArgumentList. firstAndOnly,
82
+ case . type( let typeArgument) = argument else {
78
83
newNode = nil
79
84
break
80
85
}
81
86
newNode = shorthandOptionalType (
82
- wrapping: typeArgument. argument ,
87
+ wrapping: typeArgument,
83
88
leadingTrivia: leadingTrivia,
84
89
trailingTrivia: trailingTrivia
85
90
)
@@ -137,38 +142,42 @@ public final class UseShorthandTypeNames: SyntaxFormatRule {
137
142
138
143
switch expression. baseName. text {
139
144
case " Array " :
140
- guard let typeArgument = genericArgumentList. firstAndOnly else {
145
+ guard let argument = genericArgumentList. firstAndOnly,
146
+ case . type( let typeArgument) = argument else {
141
147
newNode = nil
142
148
break
143
149
}
144
150
let arrayTypeExpr = makeArrayTypeExpression (
145
- elementType: typeArgument. argument ,
151
+ elementType: typeArgument,
146
152
leftSquare: TokenSyntax . leftSquareToken ( leadingTrivia: leadingTrivia) ,
147
153
rightSquare: TokenSyntax . rightSquareToken ( trailingTrivia: trailingTrivia)
148
154
)
149
155
newNode = ExprSyntax ( arrayTypeExpr)
150
156
151
157
case " Dictionary " :
152
- guard let typeArguments = exactlyTwoChildren ( of: genericArgumentList) else {
158
+ guard let arguments = exactlyTwoChildren ( of: genericArgumentList) ,
159
+ case . type( let type0Argument) = arguments. 0 . argument,
160
+ case . type( let type1Argument) = arguments. 1 . argument else {
153
161
newNode = nil
154
162
break
155
163
}
156
164
let dictTypeExpr = makeDictionaryTypeExpression (
157
- keyType: typeArguments . 0 . argument ,
158
- valueType: typeArguments . 1 . argument ,
165
+ keyType: type0Argument ,
166
+ valueType: type1Argument ,
159
167
leftSquare: TokenSyntax . leftSquareToken ( leadingTrivia: leadingTrivia) ,
160
168
colon: TokenSyntax . colonToken ( trailingTrivia: . spaces( 1 ) ) ,
161
169
rightSquare: TokenSyntax . rightSquareToken ( trailingTrivia: trailingTrivia)
162
170
)
163
171
newNode = ExprSyntax ( dictTypeExpr)
164
172
165
173
case " Optional " :
166
- guard let typeArgument = genericArgumentList. firstAndOnly else {
174
+ guard let argument = genericArgumentList. firstAndOnly,
175
+ case . type( let typeArgument) = argument else {
167
176
newNode = nil
168
177
break
169
178
}
170
179
let optionalTypeExpr = makeOptionalTypeExpression (
171
- wrapping: typeArgument. argument ,
180
+ wrapping: typeArgument,
172
181
leadingTrivia: leadingTrivia,
173
182
questionMark: TokenSyntax . postfixQuestionMarkToken ( trailingTrivia: trailingTrivia)
174
183
)
0 commit comments