1
1
% {
2
2
from gyb_syntax_support import *
3
+ from gyb_syntax_support. kinds import lowercase_first_word
3
4
# -*- mode: Swift -*-
4
5
# Ignore the following admonition it applies to the resulting . swift file only
5
6
} %
@@ -31,7 +32,7 @@ extension TokenSyntax {
31
32
% leading_trivia = '. space' if token. requires_leading_space else '[ ] '
32
33
% trailing_trivia = '. space' if token. requires_trailing_space else '[ ] '
33
34
% if token. is_keyword :
34
- public static func $ { token. swift_kind ( ) } (
35
+ public static func `${lowercase_first_word( token.name)}` (
35
36
leadingTrivia: Trivia? = nil ,
36
37
trailingTrivia: Trivia? = nil ,
37
38
presence: SourcePresence = . present
@@ -44,7 +45,7 @@ extension TokenSyntax {
44
45
)
45
46
}
46
47
% elif token. text:
47
- public static func ${ token. swift_kind ( ) } Token (
48
+ public static func ${ token. swift_kind ( ) } (
48
49
leadingTrivia: Trivia? = nil ,
49
50
trailingTrivia: Trivia? = nil ,
50
51
presence: SourcePresence = . present
@@ -83,4 +84,18 @@ extension TokenSyntax {
83
84
presence: presence
84
85
)
85
86
}
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: ${ leading_trivia} ) ,
97
+ trailingTrivia: trailingTrivia ?? defaultTrivia ( presence: presence, trivia: ${ trailing_trivia} ) ,
98
+ presence: presence
99
+ )
100
+ }
86
101
}
0 commit comments