Skip to content

Commit ce5e0f0

Browse files
authored
Swift: Added support for @propertyWrapper, @MainActor, and @globalActor (#3009)
1 parent 4492b62 commit ce5e0f0

File tree

3 files changed

+8
-2
lines changed

3 files changed

+8
-2
lines changed

components/prism-swift.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Prism.languages.swift = Prism.languages.extend('clike', {
1919
'keyword': /\b(?:actor|as|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonisolated|nonmutating|operator|optional|override|postfix|precedence|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|some|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/,
2020
'number': /\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,
2121
'constant': /\b(?:nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,
22-
'atrule': /@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/,
22+
'atrule': /@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|globalActor|MainActor|noreturn|NS(?:Copying|Managed)|objc|propertyWrapper|UIApplicationMain|auto_closure)\b/,
2323
'builtin': /\b(?:[A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/
2424
});
2525
Prism.languages.swift['string'].inside['interpolation'].inside.rest = Prism.languages.swift;

components/prism-swift.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/languages/swift/atrule_feature.test

+6
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,13 @@
44
@IBInspectable
55
@class_protocol
66
@exported
7+
@globalActor
8+
@MainActor
79
@noreturn
810
@NSCopying
911
@NSManaged
1012
@objc
13+
@propertyWrapper
1114
@UIApplicationMain
1215
@auto_closure
1316

@@ -20,10 +23,13 @@
2023
["atrule", "@IBInspectable"],
2124
["atrule", "@class_protocol"],
2225
["atrule", "@exported"],
26+
["atrule", "@globalActor"],
27+
["atrule", "@MainActor"],
2328
["atrule", "@noreturn"],
2429
["atrule", "@NSCopying"],
2530
["atrule", "@NSManaged"],
2631
["atrule", "@objc"],
32+
["atrule", "@propertyWrapper"],
2733
["atrule", "@UIApplicationMain"],
2834
["atrule", "@auto_closure"]
2935
]

0 commit comments

Comments
 (0)