Skip to content

Commit c1eeac6

Browse files
committed
Drop 'Token' and 'Keyword' suffixes from static methods on 'TokenSyntax'
This allows us to unify Tokens.swift in SwiftSyntax and SwiftSyntaxBuilder.
1 parent 0682c85 commit c1eeac6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+698
-1339
lines changed

Sources/SwiftSyntax/SyntaxFactory.swift.gyb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
%{
22
from gyb_syntax_support import *
3+
from gyb_syntax_support.kinds import lowercase_first_word
34
# -*- mode: Swift -*-
45
# Ignore the following admonition it applies to the resulting .swift file only
56
}%
@@ -124,7 +125,7 @@ public enum SyntaxFactory {
124125
% leading_trivia = token_trivia(token.requires_leading_space)
125126
% trailing_trivia = token_trivia(token.requires_trailing_space)
126127
% if token.is_keyword:
127-
@available(*, deprecated, message: "Use TokenSyntax.${token.swift_kind()}Keyword instead")
128+
@available(*, deprecated, message: "Use TokenSyntax.${lowercase_first_word(token.name)} instead")
128129
public static func make${token.name}Keyword(
129130
leadingTrivia: Trivia = ${leading_trivia},
130131
trailingTrivia: Trivia = ${trailing_trivia}
@@ -134,7 +135,7 @@ public enum SyntaxFactory {
134135
trailingTrivia: trailingTrivia)
135136
}
136137
% elif token.text:
137-
@available(*, deprecated, message: "Use TokenSyntax.${token.swift_kind()}Token instead")
138+
@available(*, deprecated, message: "Use TokenSyntax.${token.swift_kind()} instead")
138139
public static func make${token.name}Token(
139140
leadingTrivia: Trivia = ${leading_trivia},
140141
trailingTrivia: Trivia = ${trailing_trivia}

Sources/SwiftSyntax/Tokens.swift.gyb

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
%{
22
from gyb_syntax_support import *
3+
from gyb_syntax_support.kinds import lowercase_first_word
34
# -*- mode: Swift -*-
45
# Ignore the following admonition it applies to the resulting .swift file only
56
}%
@@ -31,7 +32,7 @@ extension TokenSyntax {
3132
% leading_trivia = '.space' if token.requires_leading_space else '[]'
3233
% trailing_trivia = '.space' if token.requires_trailing_space else '[]'
3334
% if token.is_keyword:
34-
public static func ${token.swift_kind()}(
35+
public static func `${lowercase_first_word(token.name)}`(
3536
leadingTrivia: Trivia? = nil,
3637
trailingTrivia: Trivia? = nil,
3738
presence: SourcePresence = .present
@@ -44,7 +45,7 @@ extension TokenSyntax {
4445
)
4546
}
4647
% elif token.text:
47-
public static func ${token.swift_kind()}Token(
48+
public static func ${token.swift_kind()}(
4849
leadingTrivia: Trivia? = nil,
4950
trailingTrivia: Trivia? = nil,
5051
presence: SourcePresence = .present
@@ -78,9 +79,23 @@ extension TokenSyntax {
7879
) -> TokenSyntax {
7980
return TokenSyntax(
8081
.eof,
81-
leadingTrivia: leadingTrivia ?? defaultTrivia(presence: presence, trivia: ${leading_trivia}),
82+
leadingTrivia: leadingTrivia ?? defaultTrivia(presence: presence, trivia: []),
8283
trailingTrivia: [],
8384
presence: presence
8485
)
8586
}
87+
88+
/// The `open` contextual token
89+
public static func open(
90+
leadingTrivia: Trivia? = nil,
91+
trailingTrivia: Trivia? = nil,
92+
presence: SourcePresence = .present
93+
) -> TokenSyntax {
94+
return TokenSyntax(
95+
.contextualKeyword("open"),
96+
leadingTrivia: leadingTrivia ?? defaultTrivia(presence: presence, trivia: []),
97+
trailingTrivia: trailingTrivia ?? defaultTrivia(presence: presence, trivia: .space),
98+
presence: presence
99+
)
100+
}
86101
}

0 commit comments

Comments
 (0)