Skip to content

Commit 3c48510

Browse files
committed
Remove no longer needed leading/trailing space info
...from Tokens in SwiftSyntaxBuilder generation. Since SyntaxFactory takes care of leading/trailing spaces, we no longer need these helpers (that were previously required by the TokensFile template)
1 parent 5560c94 commit 3c48510

File tree

2 files changed

+14
-24
lines changed

2 files changed

+14
-24
lines changed

Sources/SwiftSyntaxBuilderGeneration/Tokens.swift.gyb

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ public class Token {
2828
public let text: String?
2929
public let classification: String
3030
public let isKeyword: Bool
31-
public let requiresLeadingSpace: Bool
32-
public let requiresTrailingSpace: Bool
3331

3432
public var swiftKind: String {
3533
let name = self.name
@@ -41,7 +39,7 @@ public class Token {
4139
}
4240
}
4341

44-
public init(name: String, kind: String, serializationCode: Int, unprefixedKind: String? = nil, text: String? = nil, classification: String = "None", isKeyword: Bool = false, requiresLeadingSpace: Bool = false, requiresTrailingSpace: Bool = false) {
42+
public init(name: String, kind: String, serializationCode: Int, unprefixedKind: String? = nil, text: String? = nil, classification: String = "None", isKeyword: Bool = false) {
4543
self.name = name
4644
self.kind = kind
4745
self.serializationCode = serializationCode
@@ -53,15 +51,13 @@ public class Token {
5351
self.text = text
5452
self.classification = classification
5553
self.isKeyword = isKeyword
56-
self.requiresLeadingSpace = requiresLeadingSpace
57-
self.requiresTrailingSpace = requiresTrailingSpace
5854
}
5955
}
6056

6157
/// Represents a keyword token.
6258
public class Keyword: Token {
6359
public init(name: String, serializationCode: Int, text: String, classification: String = "Keyword") {
64-
super.init(name: name, kind: "kw_\(text)", serializationCode: serializationCode, unprefixedKind: text, text: text, classification: classification, isKeyword: true, requiresTrailingSpace: true)
60+
super.init(name: name, kind: "kw_\(text)", serializationCode: serializationCode, unprefixedKind: text, text: text, classification: classification, isKeyword: true)
6561
}
6662
}
6763

@@ -79,7 +75,7 @@ public class SilKeyword: Keyword { }
7975

8076
public class PoundKeyword: Token {
8177
public init(name: String, kind: String, serializationCode: Int, text: String, classification: String = "Keyword") {
82-
super.init(name: name, kind: "pound_\(kind)", serializationCode: serializationCode, unprefixedKind: kind, text: text, classification: classification, isKeyword: true, requiresTrailingSpace: true)
78+
super.init(name: name, kind: "pound_\(kind)", serializationCode: serializationCode, unprefixedKind: kind, text: text, classification: classification, isKeyword: true)
8379
}
8480
}
8581

@@ -127,8 +123,6 @@ let SYNTAX_TOKENS: [Token] = [
127123
% if token.text:
128124
% parameters += ["text: \"%s\"" % token.text]
129125
% end
130-
% parameters += ["requiresLeadingSpace: true"] if token.requires_leading_space else []
131-
% parameters += ["requiresTrailingSpace: true"] if token.requires_trailing_space else []
132126
% elif class_name == 'PoundObjectLiteral':
133127
% parameters += ["kind: \"%s\"" % token.kind, "serializationCode: %s" % token.serialization_code, "text: \"%s\"" % token.text, "description: \"%s\"" % token.description, "protocol: \"%s\"" % token.protocol]
134128
% else:

Sources/SwiftSyntaxBuilderGeneration/gyb_generated/Tokens.swift

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@ public class Token {
2121
public let text: String?
2222
public let classification: String
2323
public let isKeyword: Bool
24-
public let requiresLeadingSpace: Bool
25-
public let requiresTrailingSpace: Bool
2624

2725
public var swiftKind: String {
2826
let name = self.name
@@ -34,7 +32,7 @@ public class Token {
3432
}
3533
}
3634

37-
public init(name: String, kind: String, serializationCode: Int, unprefixedKind: String? = nil, text: String? = nil, classification: String = "None", isKeyword: Bool = false, requiresLeadingSpace: Bool = false, requiresTrailingSpace: Bool = false) {
35+
public init(name: String, kind: String, serializationCode: Int, unprefixedKind: String? = nil, text: String? = nil, classification: String = "None", isKeyword: Bool = false) {
3836
self.name = name
3937
self.kind = kind
4038
self.serializationCode = serializationCode
@@ -46,15 +44,13 @@ public class Token {
4644
self.text = text
4745
self.classification = classification
4846
self.isKeyword = isKeyword
49-
self.requiresLeadingSpace = requiresLeadingSpace
50-
self.requiresTrailingSpace = requiresTrailingSpace
5147
}
5248
}
5349

5450
/// Represents a keyword token.
5551
public class Keyword: Token {
5652
public init(name: String, serializationCode: Int, text: String, classification: String = "Keyword") {
57-
super.init(name: name, kind: "kw_\(text)", serializationCode: serializationCode, unprefixedKind: text, text: text, classification: classification, isKeyword: true, requiresTrailingSpace: true)
53+
super.init(name: name, kind: "kw_\(text)", serializationCode: serializationCode, unprefixedKind: text, text: text, classification: classification, isKeyword: true)
5854
}
5955
}
6056

@@ -72,7 +68,7 @@ public class SilKeyword: Keyword { }
7268

7369
public class PoundKeyword: Token {
7470
public init(name: String, kind: String, serializationCode: Int, text: String, classification: String = "Keyword") {
75-
super.init(name: name, kind: "pound_\(kind)", serializationCode: serializationCode, unprefixedKind: kind, text: text, classification: classification, isKeyword: true, requiresTrailingSpace: true)
71+
super.init(name: name, kind: "pound_\(kind)", serializationCode: serializationCode, unprefixedKind: kind, text: text, classification: classification, isKeyword: true)
7672
}
7773
}
7874

@@ -173,19 +169,19 @@ let SYNTAX_TOKENS: [Token] = [
173169
Punctuator(name: "RightBrace", kind: "r_brace", serializationCode: 91, text: "}"),
174170
Punctuator(name: "LeftSquareBracket", kind: "l_square", serializationCode: 92, text: "["),
175171
Punctuator(name: "RightSquareBracket", kind: "r_square", serializationCode: 93, text: "]"),
176-
Punctuator(name: "LeftAngle", kind: "l_angle", serializationCode: 94, text: "<", requiresLeadingSpace: true, requiresTrailingSpace: true),
177-
Punctuator(name: "RightAngle", kind: "r_angle", serializationCode: 95, text: ">", requiresLeadingSpace: true, requiresTrailingSpace: true),
172+
Punctuator(name: "LeftAngle", kind: "l_angle", serializationCode: 94, text: "<"),
173+
Punctuator(name: "RightAngle", kind: "r_angle", serializationCode: 95, text: ">"),
178174
Punctuator(name: "Period", kind: "period", serializationCode: 85, text: "."),
179175
Punctuator(name: "PrefixPeriod", kind: "period_prefix", serializationCode: 87, text: "."),
180-
Punctuator(name: "Comma", kind: "comma", serializationCode: 84, text: ",", requiresTrailingSpace: true),
176+
Punctuator(name: "Comma", kind: "comma", serializationCode: 84, text: ","),
181177
Punctuator(name: "Ellipsis", kind: "ellipsis", serializationCode: 118, text: "..."),
182-
Punctuator(name: "Colon", kind: "colon", serializationCode: 82, text: ":", requiresTrailingSpace: true),
178+
Punctuator(name: "Colon", kind: "colon", serializationCode: 82, text: ":"),
183179
Punctuator(name: "Semicolon", kind: "semi", serializationCode: 83, text: ";"),
184-
Punctuator(name: "Equal", kind: "equal", serializationCode: 86, text: "=", requiresLeadingSpace: true, requiresTrailingSpace: true),
180+
Punctuator(name: "Equal", kind: "equal", serializationCode: 86, text: "="),
185181
Punctuator(name: "AtSign", kind: "at_sign", serializationCode: 80, text: "@"),
186182
Punctuator(name: "Pound", kind: "pound", serializationCode: 81, text: "#"),
187-
Punctuator(name: "PrefixAmpersand", kind: "amp_prefix", serializationCode: 96, text: "&", requiresLeadingSpace: true, requiresTrailingSpace: true),
188-
Punctuator(name: "Arrow", kind: "arrow", serializationCode: 78, text: "->", requiresTrailingSpace: true),
183+
Punctuator(name: "PrefixAmpersand", kind: "amp_prefix", serializationCode: 96, text: "&"),
184+
Punctuator(name: "Arrow", kind: "arrow", serializationCode: 78, text: "->"),
189185
Punctuator(name: "Backtick", kind: "backtick", serializationCode: 79, text: "`"),
190186
Punctuator(name: "Backslash", kind: "backslash", serializationCode: 100, text: "\\"),
191187
Punctuator(name: "ExclamationMark", kind: "exclaim_postfix", serializationCode: 99, text: "!"),
@@ -223,7 +219,7 @@ let SYNTAX_TOKENS: [Token] = [
223219
Misc(name: "Unknown", kind: "unknown", serializationCode: 115),
224220
Misc(name: "Identifier", kind: "identifier", serializationCode: 105),
225221
Misc(name: "UnspacedBinaryOperator", kind: "oper_binary_unspaced", serializationCode: 107),
226-
Misc(name: "SpacedBinaryOperator", kind: "oper_binary_spaced", serializationCode: 108, requiresLeadingSpace: true, requiresTrailingSpace: true),
222+
Misc(name: "SpacedBinaryOperator", kind: "oper_binary_spaced", serializationCode: 108),
227223
Misc(name: "PostfixOperator", kind: "oper_postfix", serializationCode: 110),
228224
Misc(name: "PrefixOperator", kind: "oper_prefix", serializationCode: 109),
229225
Misc(name: "DollarIdentifier", kind: "dollarident", serializationCode: 106),

0 commit comments

Comments
 (0)