@@ -35,7 +35,7 @@ public struct RawDeclSyntax: RawDeclSyntaxNodeProtocol, RawSyntaxToSyntax {
35
35
36
36
public static func isKindOf(_ raw: RawSyntax) -> Bool {
37
37
switch raw.kind {
38
- case .unknownDecl, .missingDecl, .typealiasDecl, .associatedtypeDecl, .ifConfigDecl, .poundErrorDecl, .poundWarningDecl, .poundSourceLocation, .classDecl, .actorDecl, .structDecl, .protocolDecl, .extensionDecl, .functionDecl, .initializerDecl, .deinitializerDecl, .subscriptDecl, .importDecl, .accessorDecl, .variableDecl, .enumCaseDecl, .enumDecl, .operatorDecl, .precedenceGroupDecl, .macroExpansionDecl: return true
38
+ case .unknownDecl, .missingDecl, .typealiasDecl, .associatedtypeDecl, .ifConfigDecl, .poundErrorDecl, .poundWarningDecl, .poundSourceLocation, .classDecl, .actorDecl, .structDecl, .protocolDecl, .extensionDecl, .functionDecl, .initializerDecl, .deinitializerDecl, .subscriptDecl, .importDecl, .accessorDecl, .variableDecl, .enumCaseDecl, .enumDecl, .operatorDecl, .precedenceGroupDecl, .macroDecl, . macroExpansionDecl: return true
39
39
default: return false
40
40
}
41
41
}
@@ -11124,6 +11124,236 @@ public struct RawPrecedenceGroupAssociativitySyntax: RawSyntaxNodeProtocol, RawS
11124
11124
}
11125
11125
}
11126
11126
11127
+ @_spi(RawSyntax)
11128
+ public struct RawMacroDeclSyntax: RawDeclSyntaxNodeProtocol, RawSyntaxToSyntax {
11129
+ public enum Signature: RawSyntaxNodeProtocol {
11130
+ case `functionLike`(RawFunctionSignatureSyntax)
11131
+ case `valueLike`(RawTypeAnnotationSyntax)
11132
+
11133
+ public static func isKindOf(_ raw: RawSyntax) -> Bool {
11134
+ return RawFunctionSignatureSyntax.isKindOf(raw) || RawTypeAnnotationSyntax.isKindOf(raw)
11135
+ }
11136
+
11137
+ public var raw: RawSyntax {
11138
+ switch self {
11139
+ case .functionLike(let node): return node.raw
11140
+ case .valueLike(let node): return node.raw
11141
+ }
11142
+ }
11143
+
11144
+ public init?<T>(_ other: T) where T : RawSyntaxNodeProtocol {
11145
+ if let node = RawFunctionSignatureSyntax(other) {
11146
+ self = .functionLike(node)
11147
+ return
11148
+ }
11149
+ if let node = RawTypeAnnotationSyntax(other) {
11150
+ self = .valueLike(node)
11151
+ return
11152
+ }
11153
+ return nil
11154
+ }
11155
+ }
11156
+
11157
+ public typealias SyntaxType = MacroDeclSyntax
11158
+
11159
+ @_spi(RawSyntax)
11160
+ public var layoutView: RawSyntaxLayoutView {
11161
+ return raw.layoutView!
11162
+ }
11163
+
11164
+ public static func isKindOf(_ raw: RawSyntax) -> Bool {
11165
+ return raw.kind == .macroDecl
11166
+ }
11167
+
11168
+ public var raw: RawSyntax
11169
+ init(raw: RawSyntax) {
11170
+ assert(Self.isKindOf(raw))
11171
+ self.raw = raw
11172
+ }
11173
+
11174
+ public init?<Node: RawSyntaxNodeProtocol>(_ other: Node) {
11175
+ guard Self.isKindOf(other.raw) else { return nil }
11176
+ self.init(raw: other.raw)
11177
+ }
11178
+
11179
+ public init(
11180
+ _ unexpectedBeforeAttributes: RawUnexpectedNodesSyntax? = nil,
11181
+ attributes: RawAttributeListSyntax?,
11182
+ _ unexpectedBetweenAttributesAndModifiers: RawUnexpectedNodesSyntax? = nil,
11183
+ modifiers: RawModifierListSyntax?,
11184
+ _ unexpectedBetweenModifiersAndMacroKeyword: RawUnexpectedNodesSyntax? = nil,
11185
+ macroKeyword: RawTokenSyntax,
11186
+ _ unexpectedBetweenMacroKeywordAndIdentifier: RawUnexpectedNodesSyntax? = nil,
11187
+ identifier: RawTokenSyntax,
11188
+ _ unexpectedBetweenIdentifierAndGenericParameterClause: RawUnexpectedNodesSyntax? = nil,
11189
+ genericParameterClause: RawGenericParameterClauseSyntax?,
11190
+ _ unexpectedBetweenGenericParameterClauseAndSignature: RawUnexpectedNodesSyntax? = nil,
11191
+ signature: Signature,
11192
+ _ unexpectedBetweenSignatureAndEqual: RawUnexpectedNodesSyntax? = nil,
11193
+ equal: RawTokenSyntax,
11194
+ _ unexpectedBetweenEqualAndExternalName: RawUnexpectedNodesSyntax? = nil,
11195
+ externalName: RawExternalMacroNameSyntax?,
11196
+ _ unexpectedBetweenExternalNameAndGenericWhereClause: RawUnexpectedNodesSyntax? = nil,
11197
+ genericWhereClause: RawGenericWhereClauseSyntax?,
11198
+ _ unexpectedAfterGenericWhereClause: RawUnexpectedNodesSyntax? = nil,
11199
+ arena: __shared SyntaxArena
11200
+ ) {
11201
+ let raw = RawSyntax.makeLayout(
11202
+ kind: .macroDecl, uninitializedCount: 19, arena: arena) { layout in
11203
+ layout.initialize(repeating: nil)
11204
+ layout[0] = unexpectedBeforeAttributes?.raw
11205
+ layout[1] = attributes?.raw
11206
+ layout[2] = unexpectedBetweenAttributesAndModifiers?.raw
11207
+ layout[3] = modifiers?.raw
11208
+ layout[4] = unexpectedBetweenModifiersAndMacroKeyword?.raw
11209
+ layout[5] = macroKeyword.raw
11210
+ layout[6] = unexpectedBetweenMacroKeywordAndIdentifier?.raw
11211
+ layout[7] = identifier.raw
11212
+ layout[8] = unexpectedBetweenIdentifierAndGenericParameterClause?.raw
11213
+ layout[9] = genericParameterClause?.raw
11214
+ layout[10] = unexpectedBetweenGenericParameterClauseAndSignature?.raw
11215
+ layout[11] = signature.raw
11216
+ layout[12] = unexpectedBetweenSignatureAndEqual?.raw
11217
+ layout[13] = equal.raw
11218
+ layout[14] = unexpectedBetweenEqualAndExternalName?.raw
11219
+ layout[15] = externalName?.raw
11220
+ layout[16] = unexpectedBetweenExternalNameAndGenericWhereClause?.raw
11221
+ layout[17] = genericWhereClause?.raw
11222
+ layout[18] = unexpectedAfterGenericWhereClause?.raw
11223
+ }
11224
+ self.init(raw: raw)
11225
+ }
11226
+
11227
+ public var unexpectedBeforeAttributes: RawUnexpectedNodesSyntax? {
11228
+ layoutView.children[0].map(RawUnexpectedNodesSyntax.init(raw:))
11229
+ }
11230
+ public var attributes: RawAttributeListSyntax? {
11231
+ layoutView.children[1].map(RawAttributeListSyntax.init(raw:))
11232
+ }
11233
+ public var unexpectedBetweenAttributesAndModifiers: RawUnexpectedNodesSyntax? {
11234
+ layoutView.children[2].map(RawUnexpectedNodesSyntax.init(raw:))
11235
+ }
11236
+ public var modifiers: RawModifierListSyntax? {
11237
+ layoutView.children[3].map(RawModifierListSyntax.init(raw:))
11238
+ }
11239
+ public var unexpectedBetweenModifiersAndMacroKeyword: RawUnexpectedNodesSyntax? {
11240
+ layoutView.children[4].map(RawUnexpectedNodesSyntax.init(raw:))
11241
+ }
11242
+ public var macroKeyword: RawTokenSyntax {
11243
+ layoutView.children[5].map(RawTokenSyntax.init(raw:))!
11244
+ }
11245
+ public var unexpectedBetweenMacroKeywordAndIdentifier: RawUnexpectedNodesSyntax? {
11246
+ layoutView.children[6].map(RawUnexpectedNodesSyntax.init(raw:))
11247
+ }
11248
+ public var identifier: RawTokenSyntax {
11249
+ layoutView.children[7].map(RawTokenSyntax.init(raw:))!
11250
+ }
11251
+ public var unexpectedBetweenIdentifierAndGenericParameterClause: RawUnexpectedNodesSyntax? {
11252
+ layoutView.children[8].map(RawUnexpectedNodesSyntax.init(raw:))
11253
+ }
11254
+ public var genericParameterClause: RawGenericParameterClauseSyntax? {
11255
+ layoutView.children[9].map(RawGenericParameterClauseSyntax.init(raw:))
11256
+ }
11257
+ public var unexpectedBetweenGenericParameterClauseAndSignature: RawUnexpectedNodesSyntax? {
11258
+ layoutView.children[10].map(RawUnexpectedNodesSyntax.init(raw:))
11259
+ }
11260
+ public var signature: RawSyntax {
11261
+ layoutView.children[11]!
11262
+ }
11263
+ public var unexpectedBetweenSignatureAndEqual: RawUnexpectedNodesSyntax? {
11264
+ layoutView.children[12].map(RawUnexpectedNodesSyntax.init(raw:))
11265
+ }
11266
+ public var equal: RawTokenSyntax {
11267
+ layoutView.children[13].map(RawTokenSyntax.init(raw:))!
11268
+ }
11269
+ public var unexpectedBetweenEqualAndExternalName: RawUnexpectedNodesSyntax? {
11270
+ layoutView.children[14].map(RawUnexpectedNodesSyntax.init(raw:))
11271
+ }
11272
+ public var externalName: RawExternalMacroNameSyntax? {
11273
+ layoutView.children[15].map(RawExternalMacroNameSyntax.init(raw:))
11274
+ }
11275
+ public var unexpectedBetweenExternalNameAndGenericWhereClause: RawUnexpectedNodesSyntax? {
11276
+ layoutView.children[16].map(RawUnexpectedNodesSyntax.init(raw:))
11277
+ }
11278
+ public var genericWhereClause: RawGenericWhereClauseSyntax? {
11279
+ layoutView.children[17].map(RawGenericWhereClauseSyntax.init(raw:))
11280
+ }
11281
+ public var unexpectedAfterGenericWhereClause: RawUnexpectedNodesSyntax? {
11282
+ layoutView.children[18].map(RawUnexpectedNodesSyntax.init(raw:))
11283
+ }
11284
+ }
11285
+
11286
+ @_spi(RawSyntax)
11287
+ public struct RawExternalMacroNameSyntax: RawSyntaxNodeProtocol, RawSyntaxToSyntax {
11288
+ public typealias SyntaxType = ExternalMacroNameSyntax
11289
+
11290
+ @_spi(RawSyntax)
11291
+ public var layoutView: RawSyntaxLayoutView {
11292
+ return raw.layoutView!
11293
+ }
11294
+
11295
+ public static func isKindOf(_ raw: RawSyntax) -> Bool {
11296
+ return raw.kind == .externalMacroName
11297
+ }
11298
+
11299
+ public var raw: RawSyntax
11300
+ init(raw: RawSyntax) {
11301
+ assert(Self.isKindOf(raw))
11302
+ self.raw = raw
11303
+ }
11304
+
11305
+ public init?<Node: RawSyntaxNodeProtocol>(_ other: Node) {
11306
+ guard Self.isKindOf(other.raw) else { return nil }
11307
+ self.init(raw: other.raw)
11308
+ }
11309
+
11310
+ public init(
11311
+ _ unexpectedBeforeModuleName: RawUnexpectedNodesSyntax? = nil,
11312
+ moduleName: RawTokenSyntax,
11313
+ _ unexpectedBetweenModuleNameAndPeriod: RawUnexpectedNodesSyntax? = nil,
11314
+ period: RawTokenSyntax,
11315
+ _ unexpectedBetweenPeriodAndMacroTypeName: RawUnexpectedNodesSyntax? = nil,
11316
+ macroTypeName: RawTokenSyntax,
11317
+ _ unexpectedAfterMacroTypeName: RawUnexpectedNodesSyntax? = nil,
11318
+ arena: __shared SyntaxArena
11319
+ ) {
11320
+ let raw = RawSyntax.makeLayout(
11321
+ kind: .externalMacroName, uninitializedCount: 7, arena: arena) { layout in
11322
+ layout.initialize(repeating: nil)
11323
+ layout[0] = unexpectedBeforeModuleName?.raw
11324
+ layout[1] = moduleName.raw
11325
+ layout[2] = unexpectedBetweenModuleNameAndPeriod?.raw
11326
+ layout[3] = period.raw
11327
+ layout[4] = unexpectedBetweenPeriodAndMacroTypeName?.raw
11328
+ layout[5] = macroTypeName.raw
11329
+ layout[6] = unexpectedAfterMacroTypeName?.raw
11330
+ }
11331
+ self.init(raw: raw)
11332
+ }
11333
+
11334
+ public var unexpectedBeforeModuleName: RawUnexpectedNodesSyntax? {
11335
+ layoutView.children[0].map(RawUnexpectedNodesSyntax.init(raw:))
11336
+ }
11337
+ public var moduleName: RawTokenSyntax {
11338
+ layoutView.children[1].map(RawTokenSyntax.init(raw:))!
11339
+ }
11340
+ public var unexpectedBetweenModuleNameAndPeriod: RawUnexpectedNodesSyntax? {
11341
+ layoutView.children[2].map(RawUnexpectedNodesSyntax.init(raw:))
11342
+ }
11343
+ public var period: RawTokenSyntax {
11344
+ layoutView.children[3].map(RawTokenSyntax.init(raw:))!
11345
+ }
11346
+ public var unexpectedBetweenPeriodAndMacroTypeName: RawUnexpectedNodesSyntax? {
11347
+ layoutView.children[4].map(RawUnexpectedNodesSyntax.init(raw:))
11348
+ }
11349
+ public var macroTypeName: RawTokenSyntax {
11350
+ layoutView.children[5].map(RawTokenSyntax.init(raw:))!
11351
+ }
11352
+ public var unexpectedAfterMacroTypeName: RawUnexpectedNodesSyntax? {
11353
+ layoutView.children[6].map(RawUnexpectedNodesSyntax.init(raw:))
11354
+ }
11355
+ }
11356
+
11127
11357
@_spi(RawSyntax)
11128
11358
public struct RawMacroExpansionDeclSyntax: RawDeclSyntaxNodeProtocol, RawSyntaxToSyntax {
11129
11359
public typealias SyntaxType = MacroExpansionDeclSyntax
0 commit comments